Interface ActionPolicy
- All Known Implementing Classes:
CompositeActionPolicy
,ConfigurableQuorumPolicy
,ConfigurableQuorumPolicy.ClusterQuorumPolicy
,ConfigurableQuorumPolicy.MembershipQuorumPolicy
,ConfigurableQuorumPolicy.PartitionedCacheQuorumPolicy
,ConfigurableQuorumPolicy.ProxyQuorumPolicy
,FailoverAccessPolicy
,NullImplementation.NullActionPolicy
public interface ActionPolicy
ActionPolicy defines which aspects of a Service's behavior are currently
allowed. Action policy implementations may be used to dynamically restrict
aspects of the associated service, for example based on the dynamic state of
the service or cluster membership.
For example, ActionPolicy could be used to define a quorum-based policy to prevent distribution from occurring before a certain fraction (a quorum) of the expected service members are present.
ActionPolicy implementations must exercise extreme caution since any delay
or unhandled exception will cause a delay or complete shutdown of the
corresponding service. ActionPolicy implementations must be thread-safe as
the isAllowed(com.tangosol.net.Service, com.tangosol.net.Action)
method may be invoked on a service's worker threads.
- Since:
- Coherence 3.6
- Author:
- rhl 2009.05.07
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Called when the specified service loads and configures this policy.boolean
Evaluate if the specified action is currently allowed by this policy.toString()
Return a human-readable String representation of this ActionPolicy.
-
Method Details
-
init
Called when the specified service loads and configures this policy.Note: A policy could be applied to multiple services.
- Parameters:
service
- the service that this policy applies to
-
isAllowed
Evaluate if the specified action is currently allowed by this policy.Note: for forward compatibility, implementations should generally return true for actions that are not recognized.
- Parameters:
service
- the service that is performing the actionaction
- the action that is being performed- Returns:
- true iff the specified action is currently allowed by this policy
-
toString
-