Class RuntimeHarnessImpl
- All Implemented Interfaces:
RuntimeHarness
- Direct Known Subclasses:
NXRuntimeTestCase
- Since:
- 10.2
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected StandaloneBundleLoaderprotected Map<String, BundleFile> protected booleanprotected static final org.apache.logging.log4j.Loggerprotected OSGiAdapterprotected OSGiRuntimeServiceprotected org.osgi.framework.Bundleprotected TargetResourceLocatorprotected URL[]protected List<WorkingDirectoryConfigurator> protected File -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidvoiddeployBundle(String name) Deploys a whole OSGI bundle.voiddeployContrib(String name, String contrib) Deploys a contribution from a given bundle.deployPartial(String name, Set<TargetExtensions> targetExtensions) Deploys a subset of a Bundle defined per the targetExtensions parameterprotected voiddeployPartialComponent(RuntimeContext ctx, Set<TargetExtensions> extensionPoints, StreamRef component) Read a component from his StreamRef and create a new component (suffixed with `-partial`, and the base component name aliased) with only matching contributions of the extensionPoints parameter.voidResume the runtimeRuntime context for deploymentOSGI bridgeGets the framework working directory.protected voidInits the osgi runtime.protected voidinitUrls()Inits the urls.protected static URL[]protected booleanisAnEmptyTestProperty(Map.Entry<Object, Object> entry) booleanlistBundleComponents(org.osgi.framework.Bundle bundle) Listing component's urls of a bundle.protected BundleFilelookupBundle(String bundleName) Lookup bundle.protected StringRead symbolic name.voidstart()voidstop()voidundeployContrib(String name, String contrib) Undeploys a contribution from a given bundle.protected voidRemoves Nuxeo test system properties that are empty.protected voidMakes sure there is no previous runtime hanging around.
-
Field Details
-
log
protected static final org.apache.logging.log4j.Logger log -
bundleLoader
-
bundles
-
frameworkStarted
protected boolean frameworkStarted -
osgi
-
readUris
-
runtime
-
runtimeBundle
protected org.osgi.framework.Bundle runtimeBundle -
targetResourceLocator
-
urls
-
wdConfigs
-
workingDir
-
-
Constructor Details
-
RuntimeHarnessImpl
protected RuntimeHarnessImpl() -
RuntimeHarnessImpl
-
-
Method Details
-
introspectClasspath
-
addWorkingDirectoryConfigurator
- Specified by:
addWorkingDirectoryConfiguratorin interfaceRuntimeHarness
-
deployBundle
Description copied from interface:RuntimeHarnessDeploys a whole OSGI bundle.The lookup is first done on symbolic name, as set in
MANIFEST.MFand then falls back to the bundle url (e.g.,nuxeo-platform-search-api) for backwards compatibility.- Specified by:
deployBundlein interfaceRuntimeHarness- Parameters:
name- the symbolic name- Throws:
Exception
-
deployContrib
Description copied from interface:RuntimeHarnessDeploys a contribution from a given bundle.The path will be relative to the bundle root. Example:
deployContrib("org.nuxeo.ecm.core", "OSGI-INF/CoreExtensions.xml")For compatibility reasons the name of the bundle may be a jar name, but this use is discouraged and deprecated.
- Specified by:
deployContribin interfaceRuntimeHarness- Parameters:
name- the name of the bundle to peek the contrib incontrib- the path to contrib in the bundle.- Throws:
Exception
-
deployPartial
public RuntimeContext deployPartial(String name, Set<TargetExtensions> targetExtensions) throws Exception Description copied from interface:RuntimeHarnessDeploys a subset of a Bundle defined per the targetExtensions parameter- Specified by:
deployPartialin interfaceRuntimeHarness- Parameters:
name- the name of the componenttargetExtensions- Set of allowed TargetExtensions in the final contribution- Throws:
Exception
-
fireFrameworkStarted
public void fireFrameworkStarted()Description copied from interface:RuntimeHarnessResume the runtime- Specified by:
fireFrameworkStartedin interfaceRuntimeHarness
-
getContext
Description copied from interface:RuntimeHarnessRuntime context for deployment- Specified by:
getContextin interfaceRuntimeHarness
-
getOSGiAdapter
Description copied from interface:RuntimeHarnessOSGI bridge- Specified by:
getOSGiAdapterin interfaceRuntimeHarness
-
getWorkingDir
Description copied from interface:RuntimeHarnessGets the framework working directory.- Specified by:
getWorkingDirin interfaceRuntimeHarness
-
isStarted
public boolean isStarted()- Specified by:
isStartedin interfaceRuntimeHarness
-
start
- Specified by:
startin interfaceRuntimeHarness- Throws:
Exception
-
stop
- Specified by:
stopin interfaceRuntimeHarness- Throws:
Exception
-
undeployContrib
Description copied from interface:RuntimeHarnessUndeploys a contribution from a given bundle.The path will be relative to the bundle root. Example:
undeployContrib("org.nuxeo.ecm.core", "OSGI-INF/CoreExtensions.xml")- Specified by:
undeployContribin interfaceRuntimeHarness- Parameters:
name- the bundlecontrib- the contribution
-
deployPartialComponent
protected void deployPartialComponent(RuntimeContext ctx, Set<TargetExtensions> extensionPoints, StreamRef component) throws IOException Read a component from his StreamRef and create a new component (suffixed with `-partial`, and the base component name aliased) with only matching contributions of the extensionPoints parameter.- Parameters:
ctx- RuntimeContext in which the new component will be deployedextensionPoints- Set of white listed TargetExtensionscomponent- Reference to the original component- Throws:
IOException- Signals that an I/O exception has occurred.
-
initOsgiRuntime
Inits the osgi runtime.- Throws:
Exception- the exception
-
initUrls
protected void initUrls()Inits the urls. -
listBundleComponents
Listing component's urls of a bundle. Inspired from org.nuxeo.runtime.osgi.OSGiRuntimeService#loadComponents but without deploying anything.- Parameters:
bundle- Bundle to be read- Returns:
- the stream
-
lookupBundle
Lookup bundle.- Parameters:
bundleName- the bundle name- Returns:
- the bundle file
- Throws:
Exception- the exception
-
readSymbolicName
Read symbolic name.- Parameters:
bf- the bf- Returns:
- the string
-
wipeRuntime
protected void wipeRuntime()Makes sure there is no previous runtime hanging around.This happens for instance if a previous test had errors in its
setUp(), becausetearDown()has not been called. -
wipeEmptyTestSystemProperties
protected void wipeEmptyTestSystemProperties()Removes Nuxeo test system properties that are empty.This is needed when using maven surefire > 2.17 because since SUREFIRE-649 surefire propagates empty system properties.
-
isAnEmptyTestProperty
-