public class DefaultRuntimeContext extends Object implements RuntimeContext
ComponentManager.unregisterByLocation(String)
and the ComponentRegistry.deployedFiles
.
Features like studio or IDE which needs unregistering components must use their own mechanism.Modifier and Type | Field and Description |
---|---|
protected List<ComponentName> |
components
The list of component names deployed by this context.
|
protected ComponentDescriptorReader |
reader |
protected RuntimeService |
runtime |
Constructor and Description |
---|
DefaultRuntimeContext() |
DefaultRuntimeContext(RuntimeService runtime) |
Modifier and Type | Method and Description |
---|---|
RegistrationInfoImpl |
createRegistrationInfo(InputStream in) |
RegistrationInfoImpl |
createRegistrationInfo(StreamRef ref) |
RegistrationInfo |
deploy(StreamRef ref)
Same as
RuntimeContext.deploy(URL) but using a StreamRef as argument. |
RegistrationInfo |
deploy(String location)
Deploys the component whose XML descriptor is at the given location.
|
RegistrationInfo |
deploy(URL url)
Deploys a component XML descriptor given its URL.
|
void |
destroy()
Destroys this context.
|
org.osgi.framework.Bundle |
getBundle()
Gets the container bundle or null if we are not running in an OSGi environment.
|
ComponentName[] |
getComponents()
Get the component names deployed by this context
|
URL |
getLocalResource(String name)
Finds a local resource having the given name.
|
URL |
getResource(String name)
Finds a resource having the given name.
|
RuntimeService |
getRuntime()
Gets the current runtime service.
|
boolean |
isDeployed(StreamRef ref)
Checks whether the component XML file given by the StreamRef argument was deployed.
|
boolean |
isDeployed(String location)
Checks if the component at the given location is deployed.
|
boolean |
isDeployed(URL url)
Checks whether the component XML file at given URL was deployed.
|
Class<?> |
loadClass(String className)
Loads the class given its name.
|
void |
setRuntime(RuntimeService runtime) |
void |
undeploy(StreamRef ref)
Same as
RuntimeContext.undeploy(URL) but using a StreamRef as stream reference. |
void |
undeploy(String location)
Undeploys the component at the given location if any was deployed.
|
void |
undeploy(URL url)
Undeploys a component XML descriptor given its URL.
|
protected RuntimeService runtime
protected List<ComponentName> components
protected final ComponentDescriptorReader reader
public DefaultRuntimeContext()
public DefaultRuntimeContext(RuntimeService runtime)
public void setRuntime(RuntimeService runtime)
public RuntimeService getRuntime()
RuntimeContext
getRuntime
in interface RuntimeContext
public ComponentName[] getComponents()
RuntimeContext
getComponents
in interface RuntimeContext
public URL getResource(String name)
RuntimeContext
getResource
in interface RuntimeContext
name
- the resource nameClassLoader.getResource(String)
public URL getLocalResource(String name)
RuntimeContext
Only the current bundle should be searched for the resource.
getLocalResource
in interface RuntimeContext
name
- the local resource nameClassLoader.getResource(String)
public Class<?> loadClass(String className) throws ClassNotFoundException
RuntimeContext
loadClass
in interface RuntimeContext
className
- the class nameClassNotFoundException
- if no such class were foundClassLoader.loadClass(String)
public RegistrationInfo deploy(URL url) throws IOException
RuntimeContext
Do nothing if component is already deployed.
Returns the registration info of the new deployed component or null if the component was not deployed.
deploy
in interface RuntimeContext
url
- the url of the XML descriptorIOException
public RegistrationInfo deploy(StreamRef ref) throws IOException
RuntimeContext
RuntimeContext.deploy(URL)
but using a StreamRef
as argument.deploy
in interface RuntimeContext
IOException
public void undeploy(URL url)
RuntimeContext
Do nothing if no component was registered for the given URL.
undeploy
in interface RuntimeContext
url
- the URL of the XML descriptorpublic void undeploy(StreamRef ref)
RuntimeContext
RuntimeContext.undeploy(URL)
but using a StreamRef
as stream reference.undeploy
in interface RuntimeContext
public boolean isDeployed(URL url)
RuntimeContext
isDeployed
in interface RuntimeContext
url
- the URL to checkpublic boolean isDeployed(StreamRef ref)
RuntimeContext
isDeployed
in interface RuntimeContext
public RegistrationInfo deploy(String location)
RuntimeContext
If the component is already deployed do nothing.
The location is interpreted as a relative path inside the bundle (jar) containing the component - and will be
loaded using RuntimeContext.getLocalResource(String)
.
Returns the registration info of the new deployed component or null if the component was not deployed.
deploy
in interface RuntimeContext
location
- the locationpublic void undeploy(String location)
RuntimeContext
If the component was not deployed do nothing.
undeploy
in interface RuntimeContext
location
- the location of the component to undeploypublic boolean isDeployed(String location)
RuntimeContext
isDeployed
in interface RuntimeContext
location
- the component location to checkpublic void destroy()
RuntimeContext
destroy
in interface RuntimeContext
public org.osgi.framework.Bundle getBundle()
RuntimeContext
getBundle
in interface RuntimeContext
public RegistrationInfoImpl createRegistrationInfo(StreamRef ref) throws IOException
IOException
public RegistrationInfoImpl createRegistrationInfo(InputStream in) throws IOException
IOException
Copyright © 2017 Nuxeo. All rights reserved.