Class ServiceLoaderNamespace

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

public final class ServiceLoaderNamespace extends 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.

"Immutable"
  • Field Details

    • SERVICELOADER_NAMESPACE

      public static final 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:
    • CAPABILITY_REGISTER_DIRECTIVE

      public static final String CAPABILITY_REGISTER_DIRECTIVE
      The capability directive used to specify the implementation class of the service. The value of this directive must be of type 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 matches the value of this attribute must be registered. To not register a service for this capability use an empty string.

      See Also: