org.nuxeo.runtime.model.impl
Class ComponentPersistence
java.lang.Object
org.nuxeo.runtime.model.impl.ComponentPersistence
public class ComponentPersistence
- extends Object
Manage persistent components.
Persistent components are located in ${nxserver_data_dir}/components directory, and can be dynamically removed
or registered. After framework startup (after the application was completely started) the persistent components
are deployed.
The layout of the components directory is the following:
components/
component1.xml
component2.xml
...
bundle_symbolicName1/
component1.xml
component2.xml
...
bundle_symbolicName1/
...
...
If components are put directly under the root then they will be deployed in the runtime bundle context.
If they are put in a directory having as name the symbolicName of a bundle in the system,
then the component will be deployed in that bundle context.
Any files not ending with .xml are ignored.
Any directory that doesn't match a bundle symbolic name will be ignored too.
Dynamic components must use the following name convention: (it is not mandatory but it is recommended)
- Components deployed in root directory must use as name the file name without the .xml extension.
- Components deployed in a bundle directory must use the relative file path without the .xml extensions.
Examples:
Given the following component files: components/mycomp1.xml
and components/mybundle/mycomp2.xml
the name for mycomp1
must be: comp1
and for mycomp2
must be mybundle/mycomp2
This service is working only with OSGiRuntimeService
- Author:
- Bogdan Stefanescu
ComponentPersistence
public ComponentPersistence(OSGiRuntimeService runtime)
getRoot
public File getRoot()
getContext
public final RuntimeContext getContext(String symbolicName)
throws Exception
- Throws:
Exception
loadPersistedComponents
public void loadPersistedComponents()
throws Exception
- Throws:
Exception
loadPersistedComponents
public void loadPersistedComponents(RuntimeContext rc,
File root)
throws Exception
- Throws:
Exception
loadPersistedComponent
public void loadPersistedComponent(File file)
throws Exception
- Throws:
Exception
loadXml
public Document loadXml(File file)
throws Exception
- Throws:
Exception
loadXml
public static Document loadXml(InputStream in)
throws Exception
- Throws:
Exception
createComponent
public void createComponent(byte[] bytes)
throws Exception
- Throws:
Exception
createComponent
public void createComponent(byte[] bytes,
boolean isPersistent)
throws Exception
- Throws:
Exception
removeComponent
public boolean removeComponent(String compName)
throws Exception
- Throws:
Exception
Copyright © 2011 Nuxeo SAS. All Rights Reserved.