public abstract class AbstractEntity extends AbstractBrooklynObject implements EntityLocal, EntityInternal
Entity implementation, which should be extended whenever implementing an entity.
Provides several common fields (displayName, AbstractBrooklynObject.id), and supports the core features of
an entity such as configuration keys, attributes, subscriptions and effector invocation.
If a sub-class is creating other entities, this should be done in an overridden init()
method.
Note that config is typically inherited by children, whereas the fields and attributes are not.
Sub-classes should have a no-argument constructor. When brooklyn creates an entity, it will:
setDisplayName(String)
setManagementContext(ManagementContextInternal)
setProxy(Entity); the proxy should be used by everything else when referring
to this entity (except for drivers/policies that are attached to the entity, which can be
given a reference to this entity itself).
configure(Map) and then setConfig(ConfigKey, Object)
init()
addPolicy(Policy) (for any policies defined in the EntitySpec)
setParent(Entity), if a parent is specified in the EntitySpec
The legacy (pre 0.5) mechanism for creating entities is for others to call the constructor directly. This is now deprecated.
| Modifier and Type | Class and Description |
|---|---|
class |
AbstractEntity.BasicConfigurationSupport
Direct use of this class is strongly discouraged.
|
class |
AbstractEntity.BasicEnricherSupport
Direct use of this class is strongly discouraged.
|
class |
AbstractEntity.BasicGroupSupport
Direct use of this class is strongly discouraged.
|
class |
AbstractEntity.BasicPolicySupport
Direct use of this class is strongly discouraged.
|
class |
AbstractEntity.BasicSensorSupport
Direct use of this class is strongly discouraged.
|
class |
AbstractEntity.BasicSubscriptionSupport
Direct use of this class is strongly discouraged.
|
EntityInternal.EnricherSupportInternal, EntityInternal.FeedSupport, EntityInternal.GroupSupportInternal, EntityInternal.PolicySupportInternal, EntityInternal.SensorSupportInternalBrooklynObjectInternal.ConfigurationSupportInternal, BrooklynObjectInternal.RelationSupportInternal<T extends BrooklynObject>, BrooklynObjectInternal.SubscriptionSupportInternalEntity.AdjunctSupport<T extends EntityAdjunct>, Entity.EnricherSupport, Entity.GroupSupport, Entity.PolicySupport, Entity.SensorSupportBrooklynObject.RelationSupport<T extends BrooklynObject>, BrooklynObject.SubscriptionSupport, BrooklynObject.TagSupportConfigurable.ConfigurationSupport| Modifier and Type | Field and Description |
|---|---|
static BasicNotificationSensor<Entity> |
CHILD_ADDED |
static BasicNotificationSensor<Entity> |
CHILD_REMOVED |
static BasicNotificationSensor<ConfigKey> |
CONFIG_KEY_ADDED |
static BasicNotificationSensor<ConfigKey> |
CONFIG_KEY_REMOVED |
static BasicNotificationSensor<java.lang.String> |
EFFECTOR_ADDED |
static BasicNotificationSensor<java.lang.String> |
EFFECTOR_CHANGED |
static BasicNotificationSensor<java.lang.String> |
EFFECTOR_REMOVED |
static BasicNotificationSensor<Group> |
GROUP_ADDED |
static BasicNotificationSensor<Group> |
GROUP_REMOVED |
static BasicNotificationSensor<Location> |
LOCATION_ADDED |
static BasicNotificationSensor<Location> |
LOCATION_REMOVED |
static BasicNotificationSensor<PolicyDescriptor> |
POLICY_ADDED |
static BasicNotificationSensor<PolicyDescriptor> |
POLICY_REMOVED |
static BasicNotificationSensor<Sensor> |
SENSOR_ADDED |
static BasicNotificationSensor<Sensor> |
SENSOR_REMOVED |
| Constructor and Description |
|---|
AbstractEntity() |
AbstractEntity(Entity parent)
Deprecated.
since 0.5; instead use no-arg constructor with EntityManager().createEntity(spec)
|
AbstractEntity(java.util.Map flags)
Deprecated.
since 0.5; instead use no-arg constructor with EntityManager().createEntity(spec)
|
AbstractEntity(java.util.Map flags,
Entity parent)
Deprecated.
since 0.5; instead use no-arg constructor with EntityManager().createEntity(spec)
|
| Modifier and Type | Method and Description |
|---|---|
<T extends Entity> |
addChild(EntitySpec<T> spec)
Creates an entity using the given spec, and adds it as a child of this entity.
|
<T extends Entity> |
addChild(T child)
Adds the given entity as a child of this parent and sets this entity as the parent of the child;
returns argument passed in, for convenience.
|
void |
addEnricher(Enricher enricher)
Deprecated.
since 0.9.0; see
Entity.addEnricher(Enricher); e.g. enrichers().addEnricher(enricher) |
<T extends Enricher> |
addEnricher(EnricherSpec<T> spec)
Deprecated.
since 0.9.0; see BasicEnricherSupport#; e.g. {@code enrichers().addEnricher(spec)}
|
<T extends Feed> |
addFeed(T feed)
Convenience, which calls
EntityInternal.feeds() and FeedSupport#addFeed(Feed). |
void |
addGroup(Group group)
Deprecated.
since 0.9.0; see
groups() and GroupSupport#addGroup(Group) |
void |
addLocations(java.util.Collection<? extends Location> newLocations) |
void |
addPolicy(Policy policy)
Deprecated.
since 0.9.0; see
Entity.addPolicy(Policy); e.g. policies().addPolicy(policy) |
<T extends Policy> |
addPolicy(PolicySpec<T> spec)
Deprecated.
since 0.9.0; see
Entity.addPolicy(PolicySpec); e.g. policies().addPolicy(spec) |
void |
clearLocations() |
void |
clearParent()
Clears the parent (i.e.
|
AbstractEntity.BasicConfigurationSupport |
config() |
<T> AbstractEntity |
configure(ConfigKey.HasConfigKey<T> key,
java.lang.String value)
Deprecated.
since 0.7.0; see
config(), such as config().set(key, value) |
<T> AbstractEntity |
configure(ConfigKey.HasConfigKey<T> key,
T value)
Deprecated.
since 0.7.0; see
config(), such as config().set(key, value) |
<T> AbstractEntity |
configure(ConfigKey<T> key,
java.lang.String value)
Deprecated.
since 0.7.0; see
config(), such as config().set(key, value) |
<T> AbstractEntity |
configure(ConfigKey<T> key,
T value)
Deprecated.
since 0.7.0; see
config(), such as config().set(key, value) |
void |
configure(java.lang.Iterable<ConfigKey<?>> configKeys)
Adds the config keys to the entity dynamic type
|
AbstractEntity |
configure(java.util.Map flags)
Deprecated.
since 0.7.0; only used for legacy brooklyn types where constructor is called directly
|
void |
destroy()
Should be invoked at end-of-life to clean up the item.
|
<T> void |
emit(Sensor<T> sensor,
T val)
Deprecated.
|
<T> void |
emitInternal(Sensor<T> sensor,
T val)
Warning: for internal purposes only; this method may be deleted without notice in future releases.
|
AbstractEntity.BasicEnricherSupport |
enrichers() |
boolean |
equals(java.lang.Object o) |
EntityInternal.FeedSupport |
feeds() |
Location |
firstLocation() |
java.util.Map<AttributeSensor,java.lang.Object> |
getAllAttributes()
Deprecated.
|
java.util.Map<ConfigKey<?>,java.lang.Object> |
getAllConfig()
Deprecated.
|
ConfigBag |
getAllConfigBag()
Deprecated.
|
Application |
getApplication()
Returns the application, looking it up if not yet known (registering if necessary)
|
java.lang.String |
getApplicationId() |
<T> T |
getAttribute(AttributeSensor<T> attribute)
Convenience for calling
Entity.SensorSupport.get(AttributeSensor),
via code like sensors().get(key). |
<T> T |
getAttributeByNameParts(java.util.List<java.lang.String> nameParts)
Deprecated.
since 0.8.0; use
SensorSupport#get(AttributeSensor),
which may require constructing a temporary sensor using Sensors.newSensor(Class, String). |
java.util.Collection<Entity> |
getChildren()
Return the entities that are children of (i.e.
|
<T> T |
getConfig(ConfigKey.HasConfigKey<T> key) |
<T> T |
getConfig(ConfigKey.HasConfigKey<T> key,
T defaultValue)
Deprecated.
|
<T> T |
getConfig(ConfigKey<T> key)
Convenience for calling
Configurable.ConfigurationSupport.get(ConfigKey),
via code like config().get(key). |
<T> T |
getConfig(ConfigKey<T> key,
T defaultValue)
Deprecated.
|
EntityConfigMap |
getConfigMap()
Deprecated.
|
Maybe<java.lang.Object> |
getConfigRaw(ConfigKey.HasConfigKey<?> key,
boolean includeInherited)
Deprecated.
|
Maybe<java.lang.Object> |
getConfigRaw(ConfigKey<?> key,
boolean includeInherited)
Deprecated.
|
long |
getCreationTime()
Returns the creation time for this entity, in UTC.
|
java.lang.String |
getDisplayName()
A display name; recommended to be a concise single-line description.
|
Effector<?> |
getEffector(java.lang.String effectorName)
Convenience for finding named effector in
EntityType.getEffectors() Map. |
java.util.Collection<Enricher> |
getEnrichers()
Deprecated.
since 0.9.0; see
AbstractEntity.BasicEnricherSupport.iterator(); e.g. enrichers().iterator() |
EntityType |
getEntityType()
Information about the type of this entity; analogous to Java's object.getClass.
|
ExecutionContext |
getExecutionContext()
Returns the task execution context for the entity.
|
EntityInternal.FeedSupport |
getFeedSupport()
Deprecated.
|
java.util.Collection<Group> |
getGroups()
Deprecated.
since 0.9.0; see
groups() and GroupSupport#iterator() |
java.lang.String |
getIconUrl()
A URL pointing to an image which can be used to represent this entity.
|
ConfigBag |
getLocalConfigBag()
Deprecated.
|
java.util.Collection<Location> |
getLocations()
Return all the
Locations this entity is deployed to. |
ManagementContext |
getManagementContext()
Returns the management context for the entity.
|
EntityManagementSupport |
getManagementSupport() |
EntityDynamicType |
getMutableEntityType()
returns the dynamic type corresponding to the type of this entity instance
|
Entity |
getParent()
The parent of this entity, null if no parent.
|
java.util.Collection<Policy> |
getPolicies()
Deprecated.
since 0.9.0; see
AbstractEntity.BasicPolicySupport.iterator(); e.g. policies().iterator() |
Entity |
getProxy() |
Entity |
getProxyIfAvailable()
Returns the proxy, or if not available (because using legacy code) then returns the real entity.
|
RebindSupport<EntityMemento> |
getRebindSupport()
As described in
EntityInternal.getRebindSupport()... |
AbstractEntity.BasicGroupSupport |
groups() |
int |
hashCode() |
void |
init()
Default entity initialization, just calls
initEnrichers(). |
void |
invalidateReferences()
For use by management plane, to invalidate all fields (e.g.
|
<T> Task<T> |
invoke(Effector<T> eff)
Invoke an
Effector directly. |
<T> Task<T> |
invoke(Effector<T> eff,
java.util.Map<java.lang.String,?> parameters)
Additional form supplied for when the parameter map needs to be made explicit.
|
<T> Task<T> |
invoke(java.util.Map parameters,
Effector<T> eff) |
<T> T |
modifyAttribute(AttributeSensor<T> attribute,
Deprecated.
|
void |
onManagementBecomingMaster()
Deprecated.
since 0.4.0 override EntityManagementSupport.onManagementStarted if customization needed
|
void |
onManagementNoLongerMaster()
Deprecated.
since 0.4.0 override EntityManagementSupport.onManagementStopped if customization needed
|
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 |
onManagementStopped()
Invoked by
EntityManagementSupport when this entity is fully unmanaged. |
AbstractEntity.BasicPolicySupport |
policies() |
void |
refreshInheritedConfig()
Deprecated.
since 0.7.0; see
config().refreshInheritedConfig() |
BrooklynObjectInternal.RelationSupportInternal<Entity> |
relations()
Relations specify a typed, directed connection between two entities.
|
boolean |
removeAllEnrichers()
Deprecated.
since 0.9.0; see
EntityLocal.removeAllEnrichers(); e.g. enrichers().removeAllEnrichers() |
boolean |
removeAllPolicies()
Deprecated.
since 0.9.0; see
AbstractEntity.BasicPolicySupport.removeAllPolicies(); e.g. policies().removeAllPolicies() |
void |
removeAttribute(AttributeSensor<?> attribute)
Deprecated.
|
boolean |
removeChild(Entity child)
Removes the specified child
Entity; its parent will be set to null. |
boolean |
removeEnricher(Enricher enricher)
Deprecated.
since 0.9.0; see
Entity.removeEnricher(Enricher); e.g. enrichers().removeEnricher(enricher) |
void |
removeGroup(Group group)
Deprecated.
since 0.9.0; see
groups() and GroupSupport#removeGroup(Group) |
void |
removeLocations(java.util.Collection<? extends Location> removedLocations) |
boolean |
removePolicy(Policy policy)
Deprecated.
since 0.9.0; see
Entity.removePolicy(Policy); e.g. policies().removePolicy(policy) |
void |
requestPersist()
Can be called to request that the entity be persisted.
|
void |
resetProxy(Entity proxy)
internal use only
|
AbstractEntity.BasicSensorSupport |
sensors() |
<T> T |
setAttribute(AttributeSensor<T> attribute,
T val)
Deprecated.
|
<T> T |
setAttribute(AttributeSensorAndConfigKey<?,T> configuredSensor)
Deprecated.
on interface since 0.5.0; use
ConfigToAttributes.apply(EntityLocal, AttributeSensorAndConfigKey) |
<T> T |
setAttributeWithoutPublishing(AttributeSensor<T> attribute,
T val)
Deprecated.
|
<T> T |
setConfig(ConfigKey.HasConfigKey<T> key,
DeferredSupplier val)
Deprecated.
|
<T> T |
setConfig(ConfigKey.HasConfigKey<T> key,
T val)
Deprecated.
|
<T> T |
setConfig(ConfigKey.HasConfigKey<T> key,
Task<T> val)
Deprecated.
|
<T> T |
setConfig(ConfigKey<T> key,
DeferredSupplier val)
Deprecated.
|
<T> T |
setConfig(ConfigKey<T> key,
T val)
Deprecated.
|
<T> T |
setConfig(ConfigKey<T> key,
Task<T> val)
Deprecated.
|
<T> T |
setConfigEvenIfOwned(ConfigKey.HasConfigKey<T> key,
T val) |
<T> T |
setConfigEvenIfOwned(ConfigKey<T> key,
T val) |
void |
setDisplayName(java.lang.String newDisplayName)
Sets the entity's display name.
|
void |
setManagementContext(ManagementContextInternal managementContext) |
AbstractEntity |
setParent(Entity entity)
Adds this as a child of the given entity; registers with application if necessary.
|
void |
setProxy(Entity proxy)
internal use only
|
<T> SubscriptionHandle |
subscribe(Entity producer,
Sensor<T> sensor,
SensorEventListener<? super T> listener)
Deprecated.
since 0.9.0; see
subscriptions().subscribe(producer, sensor, listener) |
<T> SubscriptionHandle |
subscribeToChildren(Entity parent,
Sensor<T> sensor,
SensorEventListener<? super T> listener)
Deprecated.
since 0.9.0; see
subscriptions().subscribeToChildren(parent, sensor, listener) |
<T> SubscriptionHandle |
subscribeToMembers(Group group,
Sensor<T> sensor,
SensorEventListener<? super T> listener)
Deprecated.
since 0.9.0; see
subscriptions().subscribeToMembers(producer, sensor, listener) |
AbstractEntity.BasicSubscriptionSupport |
subscriptions()
Subscriptions are the mechanism for receiving notifications of sensor-events (e.g.
|
java.util.Map<java.lang.String,java.lang.String> |
toMetadataRecord() |
java.lang.String |
toString()
Default String representation is simplified name of class, together with selected fields.
|
boolean |
unsubscribe(Entity producer)
Deprecated.
since 0.9.0; see
subscriptions().unsubscribe(producer) |
boolean |
unsubscribe(Entity producer,
SubscriptionHandle handle)
Deprecated.
since 0.9.0; see
subscriptions().unsubscribe(producer, handle) |
getCatalogItemId, getId, rebind, setCatalogItemId, tagssetCatalogItemIdgetCatalogItemId, tagspublic static final BasicNotificationSensor<Location> LOCATION_ADDED
public static final BasicNotificationSensor<Location> LOCATION_REMOVED
public static final BasicNotificationSensor<Sensor> SENSOR_ADDED
public static final BasicNotificationSensor<Sensor> SENSOR_REMOVED
public static final BasicNotificationSensor<java.lang.String> EFFECTOR_ADDED
public static final BasicNotificationSensor<java.lang.String> EFFECTOR_REMOVED
public static final BasicNotificationSensor<java.lang.String> EFFECTOR_CHANGED
public static final BasicNotificationSensor<ConfigKey> CONFIG_KEY_ADDED
public static final BasicNotificationSensor<ConfigKey> CONFIG_KEY_REMOVED
public static final BasicNotificationSensor<PolicyDescriptor> POLICY_ADDED
public static final BasicNotificationSensor<PolicyDescriptor> POLICY_REMOVED
public static final BasicNotificationSensor<Entity> CHILD_ADDED
public static final BasicNotificationSensor<Entity> CHILD_REMOVED
public static final BasicNotificationSensor<Group> GROUP_ADDED
public static final BasicNotificationSensor<Group> GROUP_REMOVED
public AbstractEntity()
@Deprecated public AbstractEntity(java.util.Map flags)
@Deprecated public AbstractEntity(Entity parent)
@Deprecated
public AbstractEntity(java.util.Map flags,
Entity parent)
@Deprecated public AbstractEntity configure(java.util.Map flags)
AbstractBrooklynObjectConfigBag.getUnusedConfig().
To be overridden by AbstractEntity, AbstractLoation, AbstractPolicy, AbstractEnricher, etc.
But should not be overridden by specific entity types. If you do, the entity may break in subsequent releases. Also note that if you require fields to be initialized you must do that in this method. You must *not* rely on field initializers because they may not run until *after* this method (this method is invoked by the constructor in this class, so initializers in subclasses will not have run when this overridden method is invoked.)
configure in interface EntityInternalpublic void configure(java.lang.Iterable<ConfigKey<?>> configKeys)
public int hashCode()
hashCode in class java.lang.Objectpublic boolean equals(java.lang.Object o)
equals in class java.lang.Objectpublic void setProxy(Entity proxy)
public void resetProxy(Entity proxy)
public Entity getProxy()
public Entity getProxyIfAvailable()
@Deprecated public <T> AbstractEntity configure(ConfigKey<T> key, T value)
@Deprecated public <T> AbstractEntity configure(ConfigKey<T> key, java.lang.String value)
@Deprecated public <T> AbstractEntity configure(ConfigKey.HasConfigKey<T> key, T value)
@Deprecated public <T> AbstractEntity configure(ConfigKey.HasConfigKey<T> key, java.lang.String value)
public void setManagementContext(ManagementContextInternal managementContext)
setManagementContext in class AbstractBrooklynObjectpublic java.util.Map<java.lang.String,java.lang.String> toMetadataRecord()
toMetadataRecord in interface EntityInternalpublic long getCreationTime()
EntitygetCreationTime in interface Entitypublic java.lang.String getDisplayName()
EntitygetDisplayName in interface EntitygetDisplayName in interface BrooklynObjectpublic java.lang.String getIconUrl()
EntitygetIconUrl in interface Entitypublic void setDisplayName(java.lang.String newDisplayName)
EntitysetDisplayName in interface EntitysetDisplayName in class AbstractBrooklynObjectpublic AbstractEntity setParent(Entity entity)
setParent in interface EntityEntity.getParent(),
Entity.clearParent()public void clearParent()
EntityclearParent in interface EntityEntity.getParent(),
Entity.setParent(org.apache.brooklyn.api.entity.Entity)public <T extends Entity> T addChild(T child)
The child is NOT managed, even if the parent is already managed at this point
(e.g. the child is added *after* the parent's init() is invoked)
and so will need an explicit getEntityManager().manage(childReturnedFromThis) call.
These semantics are currently under review.
public <T extends Entity> T addChild(EntitySpec<T> spec)
addChild in interface Entityjava.lang.IllegalArgumentException - If spec.getParent() is set and is different from this entityaddChild(Entity),
EntityManager.createEntity(EntitySpec)public boolean removeChild(Entity child)
EntityEntity; its parent will be set to null.removeChild in interface Entitypublic AbstractEntity.BasicGroupSupport groups()
@Deprecated public void addGroup(Group group)
EntityGroup. Called by framework.
Users should call Group.addMember(Entity) instead; this method will then
automatically be called. However, the reverse is not true (calling this method will
not tell the group; this behaviour may change in a future release!)
@Deprecated public void removeGroup(Group group)
EntityGroup. Called by framework.
Users should call Group.removeMember(Entity) instead; this method will then
automatically be called. However, the reverse is not true (calling this method will
not tell the group; this behaviour may change in a future release!)
removeGroup in interface Entity@Deprecated public java.util.Collection<Group> getGroups()
EntityCollection of Groups that this entity is a member of.
Groupings can be used to allow easy management/monitoring of a group of entities.public Entity getParent()
EntitygetParent in interface EntityEntity.setParent(Entity),
Entity.clearParent()public java.util.Collection<Entity> getChildren()
EntitygetChildren in interface Entitypublic Application getApplication()
getApplication in interface EntityApplication this entity is registered with, or null if not registered.public java.lang.String getApplicationId()
getApplicationId in interface EntityApplication this entity is registered with, or null if not registered.public ManagementContext getManagementContext()
EntityInternalgetManagementContext in interface EntityInternalgetManagementContext in class AbstractBrooklynObjectpublic EntityType getEntityType()
EntitygetEntityType in interface Entitypublic EntityDynamicType getMutableEntityType()
EntityInternalgetMutableEntityType in interface EntityInternalpublic java.util.Collection<Location> getLocations()
EntityLocations this entity is deployed to.getLocations in interface Entitypublic void addLocations(java.util.Collection<? extends Location> newLocations)
addLocations in interface EntityInternalpublic void removeLocations(java.util.Collection<? extends Location> removedLocations)
removeLocations in interface EntityInternalpublic void clearLocations()
clearLocations in interface EntityInternalpublic Location firstLocation()
public void destroy()
destroy in interface EntityInternalpublic <T> T getAttribute(AttributeSensor<T> attribute)
EntityEntity.SensorSupport.get(AttributeSensor),
via code like sensors().get(key).getAttribute in interface Entity@Deprecated public <T> T getAttributeByNameParts(java.util.List<java.lang.String> nameParts)
SensorSupport#get(AttributeSensor),
which may require constructing a temporary sensor using Sensors.newSensor(Class, String).@Deprecated public <T> T setAttribute(AttributeSensor<T> attribute, T val)
setAttribute in interface EntityLocal@Deprecated public <T> T setAttributeWithoutPublishing(AttributeSensor<T> attribute, T val)
setAttributeWithoutPublishing in interface EntityInternal@Deprecated public <T> T modifyAttribute(AttributeSensor<T> attribute,modifier)
modifyAttribute in interface EntityLocal@Deprecated public void removeAttribute(AttributeSensor<?> attribute)
removeAttribute in interface EntityInternalpublic <T> T setAttribute(AttributeSensorAndConfigKey<?,T> configuredSensor)
ConfigToAttributes.apply(EntityLocal, AttributeSensorAndConfigKey)returns old value
@Deprecated public java.util.Map<AttributeSensor,java.lang.Object> getAllAttributes()
getAllAttributes in interface EntityInternalpublic AbstractEntity.BasicConfigurationSupport config()
config in interface Configurableconfig in interface BrooklynObjectInternalpublic AbstractEntity.BasicSensorSupport sensors()
sensors in interface Entitysensors in interface EntityInternalpublic <T> T getConfig(ConfigKey<T> key)
ConfigurableConfigurable.ConfigurationSupport.get(ConfigKey),
via code like config().get(key).getConfig in interface Configurablepublic <T> T getConfig(ConfigKey.HasConfigKey<T> key)
@Deprecated public <T> T getConfig(ConfigKey.HasConfigKey<T> key, T defaultValue)
getConfig in interface EntityLocal@Deprecated public <T> T getConfig(ConfigKey<T> key, T defaultValue)
getConfig in interface EntityLocal@Deprecated public Maybe<java.lang.Object> getConfigRaw(ConfigKey<?> key, boolean includeInherited)
EntitygetConfigRaw in interface Entity@Deprecated public Maybe<java.lang.Object> getConfigRaw(ConfigKey.HasConfigKey<?> key, boolean includeInherited)
getConfigRaw in interface Entity#getConfigRaw(ConfigKey, boolean)}.@Deprecated public <T> T setConfig(ConfigKey<T> key, T val)
setConfig in interface EntityLocalsetConfig in interface Configurable@Deprecated public <T> T setConfig(ConfigKey<T> key, Task<T> val)
setConfig in interface EntityLocal@Deprecated public <T> T setConfig(ConfigKey<T> key, DeferredSupplier val)
@Deprecated public <T> T setConfig(ConfigKey.HasConfigKey<T> key, T val)
setConfig in interface EntityLocal@Deprecated public <T> T setConfig(ConfigKey.HasConfigKey<T> key, Task<T> val)
setConfig in interface EntityLocal@Deprecated public <T> T setConfig(ConfigKey.HasConfigKey<T> key, DeferredSupplier val)
public <T> T setConfigEvenIfOwned(ConfigKey<T> key, T val)
public <T> T setConfigEvenIfOwned(ConfigKey.HasConfigKey<T> key, T val)
@Deprecated public void refreshInheritedConfig()
config().refreshInheritedConfig()refreshInheritedConfig in interface EntityInternal@Deprecated public EntityConfigMap getConfigMap()
getConfigMap in interface EntityInternal@Deprecated public java.util.Map<ConfigKey<?>,java.lang.Object> getAllConfig()
getAllConfig in interface EntityInternal@Deprecated public ConfigBag getAllConfigBag()
EntityInternalgetAllConfigBag in interface EntityInternal@Deprecated public ConfigBag getLocalConfigBag()
EntityInternalgetLocalConfigBag in interface EntityInternalpublic AbstractEntity.BasicSubscriptionSupport subscriptions()
BrooklynObjectsubscriptions in interface BrooklynObjectsubscriptions in interface BrooklynObjectInternal@Deprecated public <T> SubscriptionHandle subscribe(Entity producer, Sensor<T> sensor, SensorEventListener<? super T> listener)
subscriptions().subscribe(producer, sensor, listener)EntityLocalSensor on another entity.subscribe in interface EntityLocalSubscriptionManager.subscribe(Map, Entity, Sensor, SensorEventListener)@Deprecated public <T> SubscriptionHandle subscribeToChildren(Entity parent, Sensor<T> sensor, SensorEventListener<? super T> listener)
subscriptions().subscribeToChildren(parent, sensor, listener)subscribeToChildren in interface EntityLocalSubscriptionManager.subscribeToChildren(Map, Entity, Sensor, SensorEventListener)@Deprecated public <T> SubscriptionHandle subscribeToMembers(Group group, Sensor<T> sensor, SensorEventListener<? super T> listener)
subscriptions().subscribeToMembers(producer, sensor, listener)subscribeToMembers in interface EntityLocalSubscriptionManager.subscribeToMembers(Group, Sensor, SensorEventListener)@Deprecated public boolean unsubscribe(Entity producer)
subscriptions().unsubscribe(producer)EntityLocalunsubscribe in interface EntityLocalSubscriptionContext.unsubscribe(SubscriptionHandle)@Deprecated public boolean unsubscribe(Entity producer, SubscriptionHandle handle)
subscriptions().unsubscribe(producer, handle)EntityLocalunsubscribe in interface EntityLocalSubscriptionContext.unsubscribe(SubscriptionHandle)public ExecutionContext getExecutionContext()
EntityInternalgetExecutionContext in interface EntityInternalpublic java.lang.String toString()
toString in class java.lang.Objectpublic void init()
initEnrichers().init in class AbstractBrooklynObjectpublic AbstractEntity.BasicPolicySupport policies()
policies in interface Entitypolicies in interface EntityInternalpublic AbstractEntity.BasicEnricherSupport enrichers()
enrichers in interface Entityenrichers in interface EntityInternal@Deprecated public java.util.Collection<Policy> getPolicies()
AbstractEntity.BasicPolicySupport.iterator(); e.g. policies().iterator()getPolicies in interface Entity@Deprecated public void addPolicy(Policy policy)
Entity@Deprecated public <T extends Policy> T addPolicy(PolicySpec<T> spec)
Entity@Deprecated public <T extends Enricher> T addEnricher(EnricherSpec<T> spec)
EntityaddEnricher in interface Entity@Deprecated public boolean removePolicy(Policy policy)
EntityremovePolicy in interface Entity@Deprecated public boolean removeAllPolicies()
AbstractEntity.BasicPolicySupport.removeAllPolicies(); e.g. policies().removeAllPolicies()EntityLocalremoveAllPolicies in interface EntityLocal@Deprecated public java.util.Collection<Enricher> getEnrichers()
AbstractEntity.BasicEnricherSupport.iterator(); e.g. enrichers().iterator()getEnrichers in interface Entity@Deprecated public void addEnricher(Enricher enricher)
EntityaddEnricher in interface Entity@Deprecated public boolean removeEnricher(Enricher enricher)
Entity.removeEnricher(Enricher); e.g. enrichers().removeEnricher(enricher)EntityremoveEnricher in interface Entity@Deprecated public boolean removeAllEnrichers()
EntityLocal.removeAllEnrichers(); e.g. enrichers().removeAllEnrichers()EntityLocalremoveAllEnrichers in interface EntityLocalpublic <T extends Feed> T addFeed(T feed)
EntityInternal.feeds() and FeedSupport#addFeed(Feed).public EntityInternal.FeedSupport feeds()
feeds in interface EntityInternal@Deprecated public EntityInternal.FeedSupport getFeedSupport()
getFeedSupport in interface EntityInternal@Deprecated public <T> void emit(Sensor<T> sensor, T val)
emit in interface EntityLocalpublic <T> void emitInternal(Sensor<T> sensor, T val)
public Effector<?> getEffector(java.lang.String effectorName)
EntityType.getEffectors() Map.getEffector in interface EntityInternalpublic <T> Task<T> invoke(Effector<T> eff, java.util.Map<java.lang.String,?> parameters)
invoke in interface Entityinvoke(Effector)public void onManagementStarting()
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.public void onManagementStarted()
EntityManagementSupport when this entity is fully managed and visible to other entities
through the management context.public void onManagementBecomingMaster()
ManagementContext when this entity becomes managed at a particular management node,
including the initial management started and subsequent management node master-change for this entity.public void onManagementNoLongerMaster()
ManagementContext when this entity becomes mastered at a particular management node,
including the final management end and subsequent management node master-change for this entity.public void onManagementStopped()
EntityManagementSupport when this entity is fully unmanaged.
Note that the activies possible here (when unmanaged) are limited, and that this event may be caused by either a brooklyn node itself being demoted (so the entity is managed elsewhere) or by a controlled shutdown.
public void invalidateReferences()
public EntityManagementSupport getManagementSupport()
getManagementSupport in interface EntityInternalpublic void requestPersist()
EntityInternalrequestPersist in interface EntityInternalpublic RebindSupport<EntityMemento> getRebindSupport()
EntityInternal.getRebindSupport()...
Users are strongly discouraged to call or override this method.
It is for internal calls only, relating to persisting/rebinding entities.
This method may change (or be removed) in a future release without notice.getRebindSupport in interface RebindablegetRebindSupport in interface EntityInternalgetRebindSupport in interface BrooklynObjectInternalpublic BrooklynObjectInternal.RelationSupportInternal<Entity> relations()
BrooklynObjectrelations in interface Entityrelations in interface BrooklynObjectrelations in interface EntityInternalrelations in interface BrooklynObjectInternalrelations in class AbstractBrooklynObject