ServiceLoaderNamespace
Date: 2016-06-25

org.osgi.service.serviceloader

## Class ServiceLoaderNamespace

- java.lang.Object
- - org.osgi.resource.Namespace
  - - org.osgi.service.serviceloader.ServiceLoaderNamespace

-     public final class ServiceLoaderNamespace
      extends org.osgi.resource.Namespace

  Service Loader Capability and Requirement Namespace.

  This class defines the names for the attributes and directives for this namespace.

  All unspecified capability attributes are of one of the following types:

  - `String`
  - `Version`
  - `Long`
  - `Double`
  - `List<String>`
  - `List<Version>`
  - `List<Long>`
  - `List<Double>`
  and are used as arbitrary matching attributes for the capability. The values associated with the specified directive and attribute keys are of type `String`, unless otherwise indicated.

  All unspecified capability attributes, unless the attribute name starts with full stop (`'.'` \u002E), are also used as service properties when registering a Service Provider as a service.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `CAPABILITY_REGISTER_DIRECTIVE` The capability directive used to specify the implementation classes of the service.
    `static java.lang.String` | `SERVICELOADER_NAMESPACE` Namespace name for service loader capabilities and requirements.

    - ### Fields inherited from class org.osgi.resource.Namespace

      `CAPABILITY_EFFECTIVE_DIRECTIVE, CAPABILITY_USES_DIRECTIVE, CARDINALITY_MULTIPLE, CARDINALITY_SINGLE, EFFECTIVE_ACTIVE, EFFECTIVE_RESOLVE, REQUIREMENT_CARDINALITY_DIRECTIVE, REQUIREMENT_EFFECTIVE_DIRECTIVE, REQUIREMENT_FILTER_DIRECTIVE, REQUIREMENT_RESOLUTION_DIRECTIVE, RESOLUTION_MANDATORY, RESOLUTION_OPTIONAL`

  - ### Method Summary

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### SERVICELOADER_NAMESPACE

          public static final java.lang.String SERVICELOADER_NAMESPACE

      Namespace name for service loader capabilities and requirements.

      Also, the capability attribute used to specify the fully qualified name of the service type.

      See Also:
        Constant Field Values

    - #### CAPABILITY_REGISTER_DIRECTIVE

          public static final java.lang.String CAPABILITY_REGISTER_DIRECTIVE

      The capability directive used to specify the implementation classes of the service. The value of this attribute must be of type `List<String>`.

      If this directive is not specified, then all advertised Service Providers that match the service type name must be registered. If this directive is specified, then only Service Providers that match the service type name whose implementation class is contained in the value of this attribute must be registered. To not register a service for this capability use an empty string.

      See Also:
        Constant Field Values