Brooklyn

brooklyn.entity.basic
[Java] Class AbstractGroup

java.lang.Object
  groovy.lang.GroovyObjectSupport
      brooklyn.entity.basic.AbstractEntity
          brooklyn.entity.basic.AbstractGroup
All Implemented Interfaces:
Changeable, Group

@InheritConstructors
public abstract class AbstractGroup
extends AbstractEntity

Represents a group of entities - sub-classes can support dynamically changing membership, ad hoc groupings, etc.

Synchronization model. When changing and reading the group membership, this class uses internal synchronization to ensure atomic operations and the "happens-before" relationship for reads/updates from different threads. Sub-classes should not use this same synchronization mutex when doing expensive operations - e.g. if resizing a cluster, don't block everyone else from asking for the current number of members.


Field Summary
 
Fields inherited from class AbstractEntity
LOG, SENSOR_ADDED, SENSOR_REMOVED, _subscriptionTracker, application, attributesInternal, configsInternal, execution, managementContext, managementData, subscription, tempWorkings
 
Constructor Summary
AbstractGroup(java.util.Map props, Entity owner)

AbstractGroup()

AbstractGroup(java.util.Map props)

AbstractGroup(Entity owner)

 
Method Summary
void addMember(Entity member)

Adds the given entity as a member of this group and this group as one of the groups of the child

java.lang.Integer getCurrentSize()

java.util.Collection getMembers()

boolean hasMember(Entity e)

boolean removeMember(Entity member)

Returns true if the group was changed as a result of the call.

void setMembers(java.util.Collection m)

void setMembers(java.util.Collection mm, Predicate filter)

 
Methods inherited from class AbstractEntity
addEnricher, addGroup, addOwnedChild, addPolicy, assertNotYetOwned, clearOwner, configure, configure, destroy, emit, emitInternal, firstLocation, getAllConfig, getApplication, getApplicationId, getAttribute, getAttributeByNameParts, getConfig, getConfig, getConfig, getConfig, getConfigMap, getEffector, getEnrichers, getEntityType, getExecutionContext, getGroups, getLocations, getManagementContext, getMutableEntityType, getOwnedChildren, getOwner, getPolicies, getSubscriptionContext, getSubscriptionTracker, hasEverBeenManaged, invalidate, invoke, invoke, invokeFromJava, invokeMethod, onManagementBecomingMaster, onManagementNoLongerMaster, refreshInheritedConfig, refreshInheritedConfigOfChildren, removeAllEnrichers, removeAllPolicies, removeAttribute, removeEnricher, removeOwnedChild, removePolicy, setApplication, setAttribute, setAttribute, setBeingManaged, setConfig, setConfig, setConfigEvenIfOwned, setConfigEvenIfOwned, setConfigIfValNonNull, setConfigIfValNonNull, setOwner, subscribe, subscribeToChildren, subscribeToMembers, toString, toStringFieldsToInclude, unsubscribe, unsubscribe
 
Methods inherited from class groovy.lang.GroovyObjectSupport
groovy.lang.GroovyObjectSupport#setProperty(java.lang.String, java.lang.Object), groovy.lang.GroovyObjectSupport#getProperty(java.lang.String), groovy.lang.GroovyObjectSupport#getMetaClass(), groovy.lang.GroovyObjectSupport#setMetaClass(groovy.lang.MetaClass), groovy.lang.GroovyObjectSupport#invokeMethod(java.lang.String, java.lang.Object), groovy.lang.GroovyObjectSupport#wait(), groovy.lang.GroovyObjectSupport#wait(long), groovy.lang.GroovyObjectSupport#wait(long, int), groovy.lang.GroovyObjectSupport#equals(java.lang.Object), groovy.lang.GroovyObjectSupport#toString(), groovy.lang.GroovyObjectSupport#hashCode(), groovy.lang.GroovyObjectSupport#getClass(), groovy.lang.GroovyObjectSupport#notify(), groovy.lang.GroovyObjectSupport#notifyAll()
 

Constructor Detail

AbstractGroup

public AbstractGroup(java.util.Map props, Entity owner)


AbstractGroup

public AbstractGroup()


AbstractGroup

public AbstractGroup(java.util.Map props)


AbstractGroup

public AbstractGroup(Entity owner)


 
Method Detail

addMember

public void addMember(Entity member)
Adds the given entity as a member of this group and this group as one of the groups of the child


getCurrentSize

public java.lang.Integer getCurrentSize()


getMembers

public java.util.Collection getMembers()


hasMember

public boolean hasMember(Entity e)


removeMember

public boolean removeMember(Entity member)
Returns true if the group was changed as a result of the call.


setMembers

public void setMembers(java.util.Collection m)


setMembers

public void setMembers(java.util.Collection mm, Predicate filter)


 

Brooklyn Multi-Cloud Application Management Platform
brooklyncentral.github.com. Apache License. © 2012.