public abstract class ProjectLauncher extends Processor
Modifier and Type | Class and Description |
---|---|
static interface |
ProjectLauncher.NotificationListener |
static class |
ProjectLauncher.NotificationType |
Processor.CL, Processor.FileLine
Reporter.SetLocation
Report.Location
Modifier and Type | Field and Description |
---|---|
static int |
ACTIVATOR_ERROR |
private java.util.List<java.lang.String> |
activators |
private java.util.Collection<java.lang.String> |
agents |
static int |
CANCELED |
private java.util.List<java.lang.String> |
classpath |
static int |
CUSTOM_LAUNCHER |
private java.io.File |
cwd |
static int |
DUPLICATE_BUNDLE |
static java.lang.String |
EMBEDDED_ACTIVATOR |
protected java.lang.Appendable |
err |
static int |
ERROR |
private int |
framework |
(package private) static java.util.regex.Pattern |
IGNORE
launch a framework internally.
|
protected java.io.InputStream |
in |
private Command |
java |
private boolean |
keep |
private java.util.Map<ProjectLauncher.NotificationListener,java.lang.Boolean> |
listeners |
private static org.slf4j.Logger |
logger |
static int |
NONE |
static int |
OK |
protected java.lang.Appendable |
out |
private Project |
project |
static int |
RESOLVE_ERROR |
private java.util.List<java.lang.String> |
runbundles |
private java.util.List<java.lang.String> |
runprogramargs |
private java.util.Map<java.lang.String,java.lang.String> |
runproperties |
private Parameters |
runsystemcapabilities |
private Parameters |
runsystempackages |
private java.util.List<java.lang.String> |
runvm |
static int |
SERVICES |
private java.io.File |
storageDir |
static int |
TIMEDOUT |
private long |
timeout |
private boolean |
trace |
static int |
UPDATE_NEEDED |
static int |
WARNING |
LIST_SPLITTER, log
AUGMENT, AUGMENT_CAPABILITY_DIRECTIVE, AUGMENT_RANGE_ATTRIBUTE, AUGMENT_REQUIREMENT_DIRECTIVE, BASELINE, BASELINEREPO, BLUEPRINT_TIMEOUT_ATTRIBUTE, BLUEPRINT_WAIT_FOR_DEPENDENCIES_ATTRIBUTE, BND_ADDXMLTOTEST, BND_LASTMODIFIED, BNDDRIVER, BNDDRIVER_ANT, BNDDRIVER_BND, BNDDRIVER_ECLIPSE, BNDDRIVER_GRADLE, BNDDRIVER_GRADLE_NATIVE, BNDDRIVER_INTELLIJ, BNDDRIVER_MAVEN, BNDDRIVER_OSMORC, BNDDRIVER_SBT, BUILDFILES, BUILDPACKAGES, BUILDPATH, BUILDREPO, BUMPPOLICY, BUNDLE_ACTIVATIONPOLICY, BUNDLE_ACTIVATOR, BUNDLE_BLUEPRINT, BUNDLE_CATEGORY, BUNDLE_CLASSPATH, BUNDLE_CONTACTADDRESS, BUNDLE_CONTRIBUTORS, BUNDLE_COPYRIGHT, BUNDLE_DESCRIPTION, BUNDLE_DEVELOPERS, BUNDLE_DOCURL, BUNDLE_ICON, BUNDLE_LICENSE, BUNDLE_LOCALIZATION, BUNDLE_MANIFESTVERSION, BUNDLE_NAME, BUNDLE_NATIVECODE, BUNDLE_REQUIREDEXECUTIONENVIRONMENT, BUNDLE_SCM, BUNDLE_SPECIFIC_HEADERS, BUNDLE_SYMBOLIC_NAME_ATTRIBUTE, BUNDLE_SYMBOLICNAME, BUNDLE_UPDATELOCATION, BUNDLE_VENDOR, BUNDLE_VERSION, BUNDLE_VERSION_ATTRIBUTE, CACHEDIR, CARDINALITY_DIRECTIVE, CHECK, CLASSPATH, COMMAND_DIRECTIVE, COMPILER_SOURCE, COMPILER_TARGET, COMPONENT_ACTIVATE, COMPONENT_CONFIGURATION_POLICY, COMPONENT_DEACTIVATE, COMPONENT_DESCRIPTORS, COMPONENT_DESIGNATE, COMPONENT_DESIGNATEFACTORY, COMPONENT_DYNAMIC, COMPONENT_ENABLED, COMPONENT_FACTORY, COMPONENT_GREEDY, COMPONENT_IMMEDIATE, COMPONENT_IMPLEMENTATION, COMPONENT_MODIFIED, COMPONENT_MULTIPLE, COMPONENT_NAME, COMPONENT_NAMESPACE, COMPONENT_OPTIONAL, COMPONENT_PROPERTIES, COMPONENT_PROVIDE, COMPONENT_SERVICEFACTORY, COMPONENT_VERSION, componentDirectives, CONDITIONAL_PACKAGE, CONDITIONALPACKAGE, CONDUIT, CONNECTION_SETTINGS, CONSUMER_POLICY, CONTRACT, CREATED_BY, CURRENT_PACKAGE, CURRENT_USES, CURRENT_VERSION, DEBUG, DEFAULT_BAR_EXTENSION, DEFAULT_BND_EXTENSION, DEFAULT_BNDRUN_EXTENSION, DEFAULT_CHARSET, DEFAULT_DO_NOT_COPY, DEFAULT_JAR_EXTENSION, DEFAULT_LAUNCHER_BSN, DEFAULT_PREPROCESSS_MATCHERS, DEFAULT_PROP_BIN_DIR, DEFAULT_PROP_SRC_DIR, DEFAULT_PROP_TARGET_DIR, DEFAULT_PROP_TESTBIN_DIR, DEFAULT_PROP_TESTSRC_DIR, DEFAULT_TESTER_BSN, DEPENDSON, DEPLOY, DEPLOYREPO, DESCRIPTION_ATTRIBUTE, DIFFIGNORE, DIFFPACKAGES, DIGESTS, directives, DISTRO, DONOTCOPY, DSANNOTATIONS, DSANNOTATIONS_OPTIONS, DUPLICATE_MARKER, DYNAMICIMPORT_PACKAGE, EEPROFILE, EEPROFILE_AUTO_ATTRIBUTE, EFFECTIVE_DIRECTIVE, EMBEDDED_REPO, EMPTY, EMPTY_HEADER, EXCLUDE_DIRECTIVE, EXPERIMENTS, EXPORT, EXPORT_CONTENTS, EXPORT_PACKAGE, EXPORT_SERVICE, EXPORTTYPE, EXTENSION, EXTENSION_DIRECTIVE, FAIL_OK, FILTER_DIRECTIVE, FIXUPMESSAGES, FIXUPMESSAGES_IS_DIRECTIVE, FIXUPMESSAGES_IS_ERROR, FIXUPMESSAGES_IS_IGNORE, FIXUPMESSAGES_IS_WARNING, FIXUPMESSAGES_REPLACE_DIRECTIVE, FIXUPMESSAGES_RESTRICT_DIRECTIVE, FRAGMENT_ATTACHMENT_DIRECTIVE, FRAGMENT_HOST, FROM_DIRECTIVE, GESTALT, GESTALT_BATCH, GESTALT_CI, GESTALT_INTERACTIVE, GESTALT_OFFLINE, GESTALT_SHELL, GROUPID, headers, IGNORE_PACKAGE, IGNORE_STANDALONE, IMPORT_DIRECTIVE, IMPORT_PACKAGE, IMPORT_PRIVATE, IMPORT_REFERENCE, IMPORT_SERVICE, importDirectives, INCLUDE, INCLUDE_DIRECTIVE, INCLUDE_RESOURCE, INCLUDERESOURCE, INIT, INTERNAL_EXPORTED_DIRECTIVE, INTERNAL_SOURCE_DIRECTIVE, INVALIDFILENAMES, JAVA, JAVA_DEBUG, JAVAAGENT, JAVAC, JAVAC_PROFILE, JAVAC_SOURCE, JAVAC_TARGET, JIDENTIFIER, KEYSTORE_LOCATION_DIRECTIVE, KEYSTORE_PASSWORD_DIRECTIVE, KEYSTORE_PROVIDER_DIRECTIVE, LANGUAGE_ATTRIBUTE, LAUNCHER_PLUGIN, LIB_DIRECTIVE, LINK_ATTRIBUTE, LITERAL_ATTRIBUTE, MAKE, MANDATORY_DIRECTIVE, MANIFEST, MANIFEST_NAME, MAVEN_RELEASE, META_PERSISTENCE, METAPACKAGES, METATYPE, METATYPE_ANNOTATIONS, METATYPE_ANNOTATIONS_OPTIONS, NAME_ATTRIBUTE, NAMESECTION, NAMESPACE_STEM, NO_IMPORT_DIRECTIVE, NOANNOTATIONS, NOBUILDINCACHE, NOBUNDLES, NODEFAULTVERSION, NOEE, NOEXTRAHEADERS, NOJUNIT, NOJUNITOSGI, NOMANIFEST, NOUSES, OPTIONAL, options, OSNAME_ATTRIBUTE, OSVERSION_ATTRIBUTE, OUTPUT, OUTPUTMASK, PACKAGE, PACKAGE_JPM, PACKAGEINFOTYPE, PATH_DIRECTIVE, PEDANTIC, PLUGIN, PLUGINPATH, PLUGINPATH_SHA1_ATTR, PLUGINPATH_URL_ATTR, POM, PREPROCESSMATCHERS, PRESENCE_DIRECTIVE, PRIVATE_DIRECTIVE, PRIVATE_PACKAGE, PRIVATEPACKAGE, PROCESSOR_ATTRIBUTE, PROFILE, PROVIDE_CAPABILITY, PROVIDE_DIRECTIVE, PROVIDER_POLICY, PROVIDER_TYPE_DIRECTIVE, RELEASEREPO, REMOVE_ATTRIBUTE_DIRECTIVE, REMOVEHEADERS, REPORTNEWER, REPOSITORIES, REQUIRE_BND, REQUIRE_BUNDLE, REQUIRE_CAPABILITY, RESOLUTION, RESOLUTION_DIRECTIVE, RESOLUTION_DYNAMIC, RESOLVE, RESOURCEONLY, RUNBLACKLIST, RUNBUILDS, RUNBUNDLES, RUNEE, RUNENV, RUNFRAMEWORK, RUNFRAMEWORK_NONE, RUNFRAMEWORK_SERVICES, RUNFW, RUNJDB, RUNKEEP, RUNNOREFERENCES, RUNPATH, RUNPATH_LAUNCHER_DIRECTIVE, RUNPATH_MAIN_DIRECTIVE, RUNPROGRAMARGS, RUNPROPERTIES, RUNPROVIDEDCAPABILITIES, RUNREMOTE, RUNREPOS, RUNREQUIRE, RUNREQUIRES, RUNSTORAGE, RUNSYSTEMCAPABILITIES, RUNSYSTEMPACKAGES, RUNTIMEOUT, RUNTRACE, RUNVM, SAVEMANIFEST, SELECTION_FILTER_ATTRIBUTE, SERVICE_COMPONENT, SET_COMPONENT_DIRECTIVES, SET_COMPONENT_DIRECTIVES_1_1, SET_COMPONENT_DIRECTIVES_1_2, SIGN, SIGN_PASSWORD_DIRECTIVE, SIGNATURE_TEST, SINGLETON_DIRECTIVE, SIZE_ATTRIBUTE, SNAPSHOT, SOURCEPATH, SOURCES, SPECIFICATION_VERSION, SPLIT_PACKAGE_DIRECTIVE, STANDALONE, STRICT, SUB, SYSTEMPROPERTIES, TESTCASES, TESTCONTINUOUS, TESTER, TESTER_PLUGIN, TESTPACKAGES, TESTPATH, TESTREPORT, TESTSOURCES, TESTSUITES, TESTUNRESOLVED, TOOL, TSTAMP, UNDERTEST, UPTO, USES_DIRECTIVE, USES_USES, VALID_PROPERTY_TYPES, VERBOSE, VERSION_ATTR_HASH, VERSION_ATTR_LATEST, VERSION_ATTR_PROJECT, VERSION_ATTR_SNAPSHOT, VERSION_ATTRIBUTE, VERSION_FILTER, VISIBILITY_DIRECTIVE, WAB, WABLIB, WORKINGSET, WORKINGSET_MEMBER
Constructor and Description |
---|
ProjectLauncher(Project project) |
Modifier and Type | Method and Description |
---|---|
boolean |
addActivator(java.lang.String e) |
protected void |
addClasspath(java.util.Collection<Container> path) |
void |
addClasspath(Container container) |
void |
addDefault(java.lang.String defaultSpec)
Add the specification for a set of bundles the runpath if it does not
already is included.
|
void |
addRunBundle(java.lang.String f) |
void |
addRunProgramArgs(java.lang.String arg) |
void |
addRunVM(java.lang.String arg) |
void |
calculatedProperties(java.util.Map<java.lang.String,java.lang.Object> properties)
This method should go to the ProjectLauncher
|
void |
cancel() |
void |
cleanup()
Is called after the process exists.
|
Jar |
executable()
Create a self executable.
|
java.util.Collection<java.lang.String> |
getActivators() |
java.util.Collection<java.lang.String> |
getArguments()
Deprecated.
|
java.util.Collection<java.lang.String> |
getClasspath() |
java.io.File |
getCwd() |
private java.lang.String |
getJavaExecutable() |
abstract java.lang.String |
getMainTypeName() |
java.util.Set<ProjectLauncher.NotificationListener> |
getNotificationListeners() |
Project |
getProject() |
java.util.Collection<java.lang.String> |
getRunBundles() |
java.util.Map<java.lang.String,java.lang.String> |
getRunEnv() |
int |
getRunFramework()
Either NONE or SERVICES to indicate how the remote end launches.
|
private int |
getRunframework(java.lang.String property) |
java.lang.String |
getRunJdb() |
java.util.List<java.lang.String> |
getRunpath() |
java.util.Collection<java.lang.String> |
getRunProgramArgs() |
java.util.Map<java.lang.String,java.lang.String> |
getRunProperties() |
java.util.List<? extends RunSession> |
getRunSessions()
Get the run sessions.
|
java.util.Collection<java.lang.String> |
getRunVM() |
java.io.File |
getStorageDir() |
java.lang.String |
getSystemCapabilities() |
Parameters |
getSystemCapabilitiesParameters() |
java.util.Map<java.lang.String,? extends java.util.Map<java.lang.String,java.lang.String>> |
getSystemPackages() |
long |
getTimeout() |
boolean |
getTrace() |
protected int |
invoke(java.lang.Class<?> main,
java.lang.String[] args) |
boolean |
isKeep() |
int |
launch() |
abstract void |
prepare()
Should be called when all the changes to the launchers are set.
|
void |
registerForNotifications(ProjectLauncher.NotificationListener listener) |
protected void |
reportResult(int result) |
void |
setCwd(java.io.File cwd) |
void |
setKeep(boolean keep) |
void |
setRunFramework(int n) |
void |
setStreams(java.lang.Appendable out,
java.lang.Appendable err)
Set the stderr and stdout streams for the output process.
|
void |
setTimeout(long timeout,
java.util.concurrent.TimeUnit unit) |
void |
setTrace(boolean level) |
int |
start(java.lang.ClassLoader parent) |
abstract void |
update() |
protected void |
updateFromProject()
Collect all the aspect from the project and set the local fields from
them.
|
void |
write(java.lang.String text)
Write text to the debugged process as if it came from stdin.
|
_basedir, _fileuri, _findfile, _frange, _native_capability, _propertiesdir, _propertiesname, _random, _thisfile, _uri, addBasicPlugin, addClose, addExtensions, addIncluded, addProperties, addProperties, append, appendPath, begin, beginHandleErrors, check, clear, close, concat, customize, doAttrbutes, doIncludeFile, doIncludeFile, endHandleErrors, error, error, exception, exists, findHeader, findHeader, findHeader, forceRefresh, formatArrays, get, get, getBase, getBaseURI, getClass, getDuration, getErrors, getExecutor, getFile, getFile, getFlattenedProperties, getFlattenedProperties, getHeader, getHeader, getHeader, getHeader, getIncluded, getInfo, getInfo, getJarFromName, getLine, getLoader, getLocation, getLogger, getMacroDomains, getManifestAsProperties, getMergedParameters, getParent, getPlugin, getPlugins, getPlugins, getProperties, getPropertiesFile, getProperty, getProperty, getProperty, getPropertyKeys, getReplacer, getScheduledExecutor, getSettings, getTop, getUnprocessedProperty, getWarnings, is, isDuplicate, isExceptions, isFailOk, isMissingPlugin, isOk, isPedantic, isPerfect, isTrace, isTrue, iterator, join, join, join, join, join, keySet, lastModified, loadPlugins, loadProperties, makePrintable, merge, mergeLocalProperties, mergeProperties, mergeProperties, mergeProperties, mergeProperties, newHashMap, newList, newList, newMap, newMap, newSet, newSet, normalize, normalize, parseHeader, parseHeader, printClause, printClauses, printClauses, printExceptionSummary, printStackTrace, progress, progress, propertiesChanged, quote, read, refresh, removeBasicPlugin, removeClose, removeDuplicateMarker, replaceAll, replaceExtension, report, report, set, setBase, setExceptions, setFileMustExist, setForceLocal, setParent, setPedantic, setProperties, setProperties, setProperties, setProperties, setProperty, setTypeSpecificPlugins, signal, since, split, split, split, toFullHeaderPattern, toString, trace, unsetProperty, updateModified, use, warning
copyFrom, domain, domain, domain, domain, domain, getBundleActivator, getBundleCategory, getBundleClasspath, getBundleClassPath, getBundleContactAddress, getBundleCopyright, getBundleDescription, getBundleDocURL, getBundleName, getBundleNative, getBundleRequiredExecutionEnvironment, getBundleSymbolicName, getBundleVendor, getBundleVersion, getDynamicImportPackage, getExportContents, getExportPackage, getFragmentHost, getIcon, getImportPackage, getIncludeResource, getParameters, getParameters, getParameters, getParameters, getPrivatePackage, getProvideCapability, getRequireBundle, getRequireCapability, getRunblacklist, getRunee, isSources, setAugment, setBundleActivator, setBundleClasspath, setBundleRequiredExecutionEnvironment, setBundleSymbolicName, setBundleVersion, setBundleVersion, setConditionalPackage, setExportPackage, setFailOk, setImportPackage, setIncludeResource, setPrivatePackage, setRunblacklist, setRunee, setRunfw, setRunRequires, setSources, setTranslation, translate, translate
private static final org.slf4j.Logger logger
private final Project project
private long timeout
private final java.util.List<java.lang.String> classpath
private java.util.List<java.lang.String> runbundles
private final java.util.List<java.lang.String> runvm
private final java.util.List<java.lang.String> runprogramargs
private java.util.Map<java.lang.String,java.lang.String> runproperties
private Command java
private Parameters runsystempackages
private Parameters runsystemcapabilities
private final java.util.List<java.lang.String> activators
private java.io.File storageDir
private boolean trace
private boolean keep
private int framework
private java.io.File cwd
private java.util.Collection<java.lang.String> agents
private java.util.Map<ProjectLauncher.NotificationListener,java.lang.Boolean> listeners
protected java.lang.Appendable out
protected java.lang.Appendable err
protected java.io.InputStream in
public static final int SERVICES
public static final int NONE
public static final int OK
public static final int WARNING
public static final int ERROR
public static final int TIMEDOUT
public static final int UPDATE_NEEDED
public static final int CANCELED
public static final int DUPLICATE_BUNDLE
public static final int RESOLVE_ERROR
public static final int ACTIVATOR_ERROR
public static final int CUSTOM_LAUNCHER
public static final java.lang.String EMBEDDED_ACTIVATOR
static java.util.regex.Pattern IGNORE
public ProjectLauncher(Project project) throws java.lang.Exception
java.lang.Exception
protected void updateFromProject() throws java.lang.Exception
java.lang.Exception
private int getRunframework(java.lang.String property)
public void addClasspath(Container container) throws java.lang.Exception
java.lang.Exception
protected void addClasspath(java.util.Collection<Container> path) throws java.lang.Exception
java.lang.Exception
public void addRunBundle(java.lang.String f)
public java.util.Collection<java.lang.String> getRunBundles()
public void addRunVM(java.lang.String arg)
public void addRunProgramArgs(java.lang.String arg)
public java.util.List<java.lang.String> getRunpath()
public java.util.Collection<java.lang.String> getClasspath()
public java.util.Collection<java.lang.String> getRunVM()
@Deprecated public java.util.Collection<java.lang.String> getArguments()
public java.util.Collection<java.lang.String> getRunProgramArgs()
public java.util.Map<java.lang.String,java.lang.String> getRunProperties()
public java.io.File getStorageDir()
public abstract java.lang.String getMainTypeName()
public abstract void update() throws java.lang.Exception
java.lang.Exception
public int launch() throws java.lang.Exception
java.lang.Exception
private java.lang.String getJavaExecutable()
public int start(java.lang.ClassLoader parent) throws java.lang.Exception
java.lang.Exception
protected int invoke(java.lang.Class<?> main, java.lang.String[] args) throws java.lang.Exception
java.lang.Exception
public void cleanup()
protected void reportResult(int result)
public void setTimeout(long timeout, java.util.concurrent.TimeUnit unit)
public long getTimeout()
public void cancel() throws java.lang.Exception
java.lang.Exception
public java.util.Map<java.lang.String,? extends java.util.Map<java.lang.String,java.lang.String>> getSystemPackages()
public java.lang.String getSystemCapabilities()
public Parameters getSystemCapabilitiesParameters()
public void setKeep(boolean keep)
public boolean isKeep()
public boolean getTrace()
public abstract void prepare() throws java.lang.Exception
java.lang.Exception
public Project getProject()
public boolean addActivator(java.lang.String e)
public java.util.Collection<java.lang.String> getActivators()
public int getRunFramework()
public void setRunFramework(int n)
public void addDefault(java.lang.String defaultSpec) throws java.lang.Exception
defaultSpec
- The default spec for default jarsjava.lang.Exception
public Jar executable() throws java.lang.Exception
java.lang.Exception
public java.io.File getCwd()
public void setCwd(java.io.File cwd)
public java.lang.String getRunJdb()
public java.util.Map<java.lang.String,java.lang.String> getRunEnv()
public void registerForNotifications(ProjectLauncher.NotificationListener listener)
public java.util.Set<ProjectLauncher.NotificationListener> getNotificationListeners()
public void setStreams(java.lang.Appendable out, java.lang.Appendable err)
out
- std outerr
- std errpublic void write(java.lang.String text) throws java.lang.Exception
text
- the text to writejava.lang.Exception
public java.util.List<? extends RunSession> getRunSessions() throws java.lang.Exception
java.lang.Exception
public void calculatedProperties(java.util.Map<java.lang.String,java.lang.Object> properties) throws java.lang.Exception
java.lang.Exception