|
Knopflerfish OSGi 5.2.0 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.knopflerfish.util.metatype.MTP org.knopflerfish.util.metatype.SystemMetatypeProvider
public class SystemMetatypeProvider
Class which monitors installed bundles for metatype and CM default data.
When instantiated, SystemMetatypeProvider will listen for installed bundles and try to extract metatype and CM defaults XML from the bundle jar files. This data will then be available using the getServicePIDs, getFactoryPIDs and getObjectClassDefinition methods.
Field Summary | |
---|---|
static java.lang.String |
ATTRIB_CMDEFAULTSURL
Manifest attribute name specifying CM defaults XML URL. |
static java.lang.String |
ATTRIB_METATYPEURL
Manifest attribute name specifying metatype XML URL. |
static java.lang.String |
CMDEFAULTS_RESOURCE
Default URL to default CM values. |
static java.lang.String |
METATYPE_RESOURCE
Default URL to metatype XML. |
Fields inherited from interface org.osgi.service.metatype.MetaTypeService |
---|
METATYPE_DOCUMENTS_LOCATION |
Fields inherited from interface org.osgi.service.metatype.MetaTypeProvider |
---|
METATYPE_FACTORY_PID, METATYPE_PID |
Constructor Summary | |
---|---|
SystemMetatypeProvider(BundleContext bc,
java.util.Map<ServiceRegistration<MetaTypeProvider>,MTP> confMtpRegs)
Create a SystemMetatypeProvider, using the specified bundle context for listeners. |
Method Summary | |
---|---|
void |
close()
Stop listening for bundles. |
java.lang.String[] |
getFactoryPids()
Return the Factory PIDs (for ManagedServiceFactories) for which ObjectClassDefinition information is available. |
java.lang.String[] |
getLocales()
Return a list of available locales. |
MetaTypeInformation |
getMetaTypeInformation(Bundle bundle)
Return the MetaType information for the specified bundle. |
MetaTypeInformation |
getMTP(Bundle b)
Get a loaded metatype provider, given a bundle. |
ObjectClassDefinition |
getObjectClassDefinition(java.lang.String pid,
java.lang.String locale)
Get an ObjectClassDefinition given a PID. |
java.lang.String[] |
getPids()
Return the PIDs (for ManagedServices) for which ObjectClassDefinition information is available. |
void |
loadMTP(Bundle b)
Explicitly load a metatype provider from a bundle and cache it for later retrieval by getMTP(Bundle) . |
void |
open()
Start listening for bundles. |
Methods inherited from class org.knopflerfish.util.metatype.MTP |
---|
addFactory, addService, compareTo, equals, getBundle, getId, hashCode, toString, toString |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String METATYPE_RESOURCE
Value is "!/metatype.xml"
public static final java.lang.String CMDEFAULTS_RESOURCE
Value is "!/cmdefaults.xml"
public static final java.lang.String ATTRIB_METATYPEURL
Value is "Bundle-MetatypeURL"
public static final java.lang.String ATTRIB_CMDEFAULTSURL
Value is "Bundle-CMDefaultsURL"
Constructor Detail |
---|
public SystemMetatypeProvider(BundleContext bc, java.util.Map<ServiceRegistration<MetaTypeProvider>,MTP> confMtpRegs)
bc
- confMtpRegs
- Method Detail |
---|
public void open()
public void close()
public void loadMTP(Bundle b) throws java.lang.Exception
getMTP(Bundle)
.
java.lang.Exception
- if loading failspublic java.lang.String[] getPids()
MetaTypeInformation
getPids
in interface MetaTypeInformation
getPids
in class MTP
public java.lang.String[] getFactoryPids()
MetaTypeInformation
getFactoryPids
in interface MetaTypeInformation
getFactoryPids
in class MTP
public java.lang.String[] getLocales()
MetaTypeProvider
Locale
class.
getLocales
in interface MetaTypeProvider
getLocales
in class MTP
null
if there is no locale
specific localization can be found.public MetaTypeInformation getMTP(Bundle b)
public ObjectClassDefinition getObjectClassDefinition(java.lang.String pid, java.lang.String locale)
getObjectClassDefinition
in interface MetaTypeProvider
getObjectClassDefinition
in class MTP
pid
- 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 or null
for default
locale.
public MetaTypeInformation getMetaTypeInformation(Bundle bundle)
MetaTypeService
getMetaTypeInformation
in interface MetaTypeService
bundle
- The bundle for which meta type information is requested.
|
Knopflerfish OSGi 5.2.0 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |