public abstract class SoftwareProcessImpl extends AbstractEntity implements SoftwareProcess, DriverDependentEntity
Entity
representing a piece of software which can be installed, run, and controlled.
A single such entity can only run on a single MachineLocation
at a time (you can have multiple on the machine).
It typically takes config keys for suggested versions, filesystem locations to use, and environment variables to set.
It exposes sensors for service state (Lifecycle) and status (String), and for host info, log file location.
SoftwareProcess.ChildStartableMode, SoftwareProcess.RestartSoftwareParameters, SoftwareProcess.StopSoftwareParameters
Startable.RestartEffectorBody, Startable.StartEffectorBody, Startable.StopEffectorBody
BrooklynObject.TagSupport
Configurable.ConfigurationSupport
EntityInternal.FeedSupport
BrooklynObjectInternal.ConfigurationSupportInternal
CHILD_ADDED, CHILD_REMOVED, EFFECTOR_ADDED, EFFECTOR_CHANGED, EFFECTOR_REMOVED, LOCATION_ADDED, LOCATION_REMOVED, POLICY_ADDED, POLICY_REMOVED, SENSOR_ADDED, SENSOR_REMOVED
ADDRESS, CHILDREN_STARTABLE_MODE, CUSTOMIZE_LATCH, DOWNLOAD_ADDON_URLS, DOWNLOAD_URL, ENTITY_STARTED, EXPANDED_INSTALL_DIR, HOSTNAME, INSTALL_DIR, INSTALL_FILES, INSTALL_LATCH, INSTALL_RESOURCES_LATCH, INSTALL_TEMPLATES, INSTALL_UNIQUE_LABEL, LAUNCH_LATCH, MAXIMUM_REBIND_SENSOR_CONNECT_DELAY, PID_FILE, POST_INSTALL_COMMAND, POST_LAUNCH_COMMAND, PRE_INSTALL_COMMAND, PRE_INSTALL_FILES, PRE_INSTALL_TEMPLATES, PRE_LAUNCH_COMMAND, PROVISIONING_LOCATION, PROVISIONING_PROPERTIES, REQUIRED_OPEN_LOGIN_PORTS, RUN_DIR, RUNTIME_FILES, RUNTIME_RESOURCES_LATCH, RUNTIME_TEMPLATES, SERVICE_PROCESS_IS_RUNNING, SERVICE_STATE_ACTUAL, SERVICE_STATE_EXPECTED, SETUP_LATCH, SHELL_ENVIRONMENT, SKIP_ENTITY_START_IF_RUNNING, SKIP_INSTALLATION, START_LATCH, START_TIMEOUT, SUBNET_ADDRESS, SUBNET_HOSTNAME, SUGGESTED_INSTALL_DIR, SUGGESTED_RUN_DIR, SUGGESTED_VERSION
RESTART, SERVICE_UP, START, STOP
Constructor and Description |
---|
SoftwareProcessImpl() |
SoftwareProcessImpl(Entity parent) |
SoftwareProcessImpl(java.util.Map properties) |
SoftwareProcessImpl(java.util.Map properties,
Entity parent) |
Modifier and Type | Method and Description |
---|---|
void |
checkModifiable()
Deprecated.
since 0.7.0, this isn't a general test for modifiability, and was hardly ever used (now never used)
|
SoftwareProcessDriver |
getDriver() |
java.lang.String |
getLocalHostname()
Deprecated.
since 0.6.0 use
Machines.findSubnetHostname(Entity) |
void |
init()
Default entity initialization, just calls
AbstractEntity.initEnrichers() . |
void |
onManagementStarted()
Invoked by
EntityManagementSupport when this entity is fully managed and visible to other entities
through the management context. |
void |
onManagementStarting()
Invoked by
EntityManagementSupport when this entity is becoming managed (i.e. |
void |
rebind()
Called by framework on rebind (in new-style instances):
after configuring, but
before the instance is managed, and
before adjuncts are attached to entities, and
before a reference to an object is shared.
|
void |
restart()
If custom behaviour is required by sub-classes, consider overriding
doRestart() . |
void |
start(java.util.Collection<? extends Location> locations)
If custom behaviour is required by sub-classes, consider overriding
doStart(Collection) )}. |
void |
stop()
If custom behaviour is required by sub-classes, consider overriding
doStop() . |
void |
waitForEntityStart() |
void |
waitForServiceUp() |
void |
waitForServiceUp(Duration duration) |
void |
waitForServiceUp(long duration,
java.util.concurrent.TimeUnit units) |
void |
waitForServiceUp(groovy.time.TimeDuration duration) |
addChild, addChild, addEnricher, addEnricher, addFeed, addGroup, addLocations, addPolicy, addPolicy, addTag, clearLocations, clearParent, config, configure, configure, configure, configure, configure, containsTag, destroy, emit, emitInternal, equals, feeds, firstLocation, getAllAttributes, getAllConfig, getAllConfigBag, getApplication, getApplicationId, getAttribute, getAttributeByNameParts, getChildren, getConfig, getConfig, getConfig, getConfig, getConfigMap, getConfigRaw, getConfigRaw, getCreationTime, getDisplayName, getEffector, getEnrichers, getEntityType, getExecutionContext, getFeedSupport, getGroups, getIconUrl, getLocalConfigBag, getLocations, getManagementContext, getManagementSupport, getMutableEntityType, getParent, getPolicies, getProxy, getProxyIfAvailable, getRebindSupport, getSubscriptionContext, getTags, hashCode, invalidateReferences, invoke, invoke, invoke, modifyAttribute, onManagementBecomingMaster, onManagementNoLongerMaster, onManagementStopped, refreshInheritedConfig, removeAllEnrichers, removeAllPolicies, removeAttribute, removeChild, removeEnricher, removeGroup, removeLocations, removePolicy, removeTag, requestPersist, resetProxy, setAttribute, setAttribute, setAttributeWithoutPublishing, setConfig, setConfig, setConfig, setConfig, setConfig, setConfig, setConfigEvenIfOwned, setConfigEvenIfOwned, setDisplayName, setManagementContext, setParent, setProxy, subscribe, subscribeToChildren, subscribeToMembers, toMetadataRecord, toString, unsubscribe, unsubscribe
getCatalogItemId, getId, getTagSupport, setCatalogItemId, tags
getDriverInterface
addChild, addChild, addEnricher, addEnricher, addFeed, addGroup, addPolicy, addPolicy, addTag, clearParent, containsTag, getApplication, getApplicationId, getAttribute, getChildren, getConfig, getConfig, getConfigRaw, getConfigRaw, getCreationTime, getDisplayName, getEnrichers, getEntityType, getGroups, getIconUrl, getId, getLocations, getParent, getPolicies, getTags, invoke, removeChild, removeEnricher, removeGroup, removePolicy, removeTag, setParent
getCatalogItemId, getTagSupport, tags
config, setConfig
setCatalogItemId
public SoftwareProcessImpl()
public SoftwareProcessImpl(Entity parent)
public SoftwareProcessImpl(java.util.Map properties)
public SoftwareProcessImpl(java.util.Map properties, Entity parent)
public SoftwareProcessDriver getDriver()
getDriver
in interface DriverDependentEntity
public void init()
AbstractEntity
AbstractEntity.initEnrichers()
.init
in class AbstractEntity
public void onManagementStarting()
AbstractEntity
EntityManagementSupport
when this entity is becoming managed (i.e. it has a working
management context, but before the entity is visible to other entities), including during a rebind.onManagementStarting
in class AbstractEntity
public void onManagementStarted()
AbstractEntity
EntityManagementSupport
when this entity is fully managed and visible to other entities
through the management context.onManagementStarted
in class AbstractEntity
public void rebind()
AbstractBrooklynObject
AbstractBrooklynObject.init()
will not be called on rebind.
If you need to intercept behaviour after adjuncts are attached,
consider AbstractEntity.onManagementStarting()
(but probably worth raising a discussion on the mailing list!)
rebind
in class AbstractBrooklynObject
public void waitForServiceUp()
public void waitForServiceUp(Duration duration)
public void waitForServiceUp(groovy.time.TimeDuration duration)
public void waitForServiceUp(long duration, java.util.concurrent.TimeUnit units)
@Deprecated public void checkModifiable()
@Deprecated public java.lang.String getLocalHostname()
Machines.findSubnetHostname(Entity)
public void waitForEntityStart()
public final void start(java.util.Collection<? extends Location> locations)
doStart(Collection)
)}.public final void stop()
doStop()
.public final void restart()
doRestart()
.