com.gigaspaces.cluster.loadbalance
Class LoadBalancingPolicy

java.lang.Object
  extended by com.gigaspaces.cluster.loadbalance.LoadBalancingPolicy
All Implemented Interfaces:
Externalizable, Serializable

public class LoadBalancingPolicy
extends Object
implements Serializable, Externalizable

Title: The GigaSpaces Platform Description: Load Balancing Policy class Copyright: Copyright (c) J-Spaces Team Company: J-Spaces Technologies

See Also:
Serialized Form

Nested Class Summary
static class LoadBalancingPolicy.BroadcastCondition
           
static class LoadBalancingPolicy.LoadBalancingPolicyDescription
           
 
Field Summary
static int DEFAULT_BROADCAST_THREADPOOL_MAX_SIZE
           
static int DEFAULT_BROADCAST_THREADPOOL_MIN_SIZE
           
 List<String> loadBalanceGroupMembersNames
           
 List<SpaceURL> loadBalanceGroupMembersURLs
           
 boolean m_ApplyOwnership
           
 int m_broadcastThreadpoolMaxSize
           
 int m_broadcastThreadpoolMinSize
           
 LoadBalancingPolicy.LoadBalancingPolicyDescription m_DefaultPolicy
           
 boolean m_DisableParallelScattering
           
 String m_GroupName
           
 LoadBalancingPolicy.LoadBalancingPolicyDescription m_NotifyOperationsPolicy
           
 LoadBalancingPolicy.LoadBalancingPolicyDescription m_ReadOperationsPolicy
           
 LoadBalancingPolicy.LoadBalancingPolicyDescription m_TakeOperationsPolicy
           
 LoadBalancingPolicy.LoadBalancingPolicyDescription m_WriteOperationsPolicy
           
 
Constructor Summary
LoadBalancingPolicy()
           
 
Method Summary
 LoadBalancingPolicy.LoadBalancingPolicyDescription getLoadBalancingPolicyDescription(com.gigaspaces.cluster.loadbalance.LoadBalanceOperation operation)
           
 List<SpaceURL> getRecoverableTargets(String clusterName, String myMemberName, List<String> excludeTargets)
          Finds all the recovery targets in cluster.
 void readExternal(ObjectInput in)
           
 String toString()
           
 void writeExternal(ObjectOutput out)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

m_GroupName

public String m_GroupName

loadBalanceGroupMembersNames

public List<String> loadBalanceGroupMembersNames

loadBalanceGroupMembersURLs

public List<SpaceURL> loadBalanceGroupMembersURLs

m_ApplyOwnership

public boolean m_ApplyOwnership

m_DisableParallelScattering

public boolean m_DisableParallelScattering

DEFAULT_BROADCAST_THREADPOOL_MIN_SIZE

public static final int DEFAULT_BROADCAST_THREADPOOL_MIN_SIZE
See Also:
Constant Field Values

DEFAULT_BROADCAST_THREADPOOL_MAX_SIZE

public static final int DEFAULT_BROADCAST_THREADPOOL_MAX_SIZE
See Also:
Constant Field Values

m_broadcastThreadpoolMinSize

public int m_broadcastThreadpoolMinSize

m_broadcastThreadpoolMaxSize

public int m_broadcastThreadpoolMaxSize

m_WriteOperationsPolicy

public LoadBalancingPolicy.LoadBalancingPolicyDescription m_WriteOperationsPolicy

m_ReadOperationsPolicy

public LoadBalancingPolicy.LoadBalancingPolicyDescription m_ReadOperationsPolicy

m_TakeOperationsPolicy

public LoadBalancingPolicy.LoadBalancingPolicyDescription m_TakeOperationsPolicy

m_NotifyOperationsPolicy

public LoadBalancingPolicy.LoadBalancingPolicyDescription m_NotifyOperationsPolicy

m_DefaultPolicy

public LoadBalancingPolicy.LoadBalancingPolicyDescription m_DefaultPolicy
Constructor Detail

LoadBalancingPolicy

public LoadBalancingPolicy()
Method Detail

writeExternal

public void writeExternal(ObjectOutput out)
                   throws IOException
Specified by:
writeExternal in interface Externalizable
Throws:
IOException

readExternal

public void readExternal(ObjectInput in)
                  throws IOException,
                         ClassNotFoundException
Specified by:
readExternal in interface Externalizable
Throws:
IOException
ClassNotFoundException

getRecoverableTargets

public List<SpaceURL> getRecoverableTargets(String clusterName,
                                            String myMemberName,
                                            List<String> excludeTargets)
Finds all the recovery targets in cluster. If jini URLs are used, the first target will always be multicast url. only if it fails the unicast and rmi URLs will be used.

Parameters:
clusterName - the cluster to recover in.
myMemberName - the member of the cluster that needs to be recovered.
excludeTargets - targets that should be excluded from recovery
Returns:
a list of recoverable members SpaceURLs. returns empty list if recovery is disabled.

getLoadBalancingPolicyDescription

public LoadBalancingPolicy.LoadBalancingPolicyDescription getLoadBalancingPolicyDescription(com.gigaspaces.cluster.loadbalance.LoadBalanceOperation operation)

toString

public String toString()
Overrides:
toString in class Object