Package org.osgi.service.metatype
Interface MetaTypeProvider
- All Known Subinterfaces:
MetaTypeInformation
@ConsumerType
public interface MetaTypeProvider
Provides access to metatypes. This interface can be implemented on a Managed
Service or Managed Service Factory as well as registered as a service. When
registered as a service, it must be registered with a
METATYPE_FACTORY_PID
or METATYPE_PID
service property (or
both). Any PID mentioned in either of these factories must be a valid
argument to the getObjectClassDefinition(String, String)
method.- "ThreadSafe"
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
Service property to signal that this service hasObjectClassDefinition
objects for the given factory PIDs.static final String
Service property to signal that this service hasObjectClassDefinition
objects for the given PIDs. -
Method Summary
Modifier and TypeMethodDescriptionString[]
Return a list of available locales.getObjectClassDefinition
(String id, String locale) Returns an object class definition for the specified id localized to the specified locale.
-
Field Details
-
METATYPE_PID
Service property to signal that this service hasObjectClassDefinition
objects for the given PIDs. The type of this service property isString+
.- Since:
- 1.2
- See Also:
-
METATYPE_FACTORY_PID
Service property to signal that this service hasObjectClassDefinition
objects for the given factory PIDs. The type of this service property isString+
.- Since:
- 1.2
- See Also:
-
-
Method Details
-
getObjectClassDefinition
Returns an object class definition for the specified id localized to the specified locale.The locale parameter must be a name that consists of
language
[ "_"country
[ "_"variation
] ] as is customary in theLocale
class. ThisLocale
class is not used because certain profiles do not contain it.- Parameters:
id
- The ID of the requested object class. This can be a pid or factory pid returned by getPids or getFactoryPids.locale
- The locale of the definition ornull
for default locale.- Returns:
- A
ObjectClassDefinition
object. - Throws:
IllegalArgumentException
- If the id or locale arguments are not valid
-
getLocales
String[] getLocales()Return a list of available locales. The results must be names that consists of language [ _ country [ _ variation ]] as is customary in theLocale
class.- Returns:
- An array of locale strings or
null
if there is no locale specific localization can be found.
-