Nuxeo ECM Projects 5.4.3-SNAPSHOT

org.nuxeo.runtime.model.impl
Class ComponentPersistence

java.lang.Object
  extended by 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)

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

Constructor Summary
ComponentPersistence(OSGiRuntimeService runtime)
           
 
Method Summary
 void createComponent(byte[] bytes)
           
 void createComponent(byte[] bytes, boolean isPersistent)
           
 RuntimeContext getContext(String symbolicName)
           
 File getRoot()
           
 void loadPersistedComponent(File file)
           
 void loadPersistedComponents()
           
 void loadPersistedComponents(RuntimeContext rc, File root)
           
 Document loadXml(File file)
           
static Document loadXml(InputStream in)
           
 boolean removeComponent(String compName)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ComponentPersistence

public ComponentPersistence(OSGiRuntimeService runtime)
Method Detail

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

Nuxeo ECM Projects 5.4.3-SNAPSHOT

Copyright © 2011 Nuxeo SAS. All Rights Reserved.