|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.synapse.endpoints.algorithms.WeightedRoundRobin
public class WeightedRoundRobin
This algorithm sends messages based on the weights of the endpoints. For example we may have 3 endpoints with following weights.
This algorithm will send the first 5 messages through Epr1, next 3 messages through Epr2 and next 2 messages with Epr3. Then algorithm moves again to the first endpoint and cycle continues.
| Constructor Summary | |
|---|---|
WeightedRoundRobin()
|
|
| Method Summary | |
|---|---|
void |
changeWeight(int pos,
int weight)
|
LoadbalanceAlgorithm |
clone()
|
void |
destroy()
This method should implement the destroying of the implemented parts of the configuration. |
int[] |
getCurrentWeights()
|
String |
getName()
Return the name of the load balancing algorithm |
Member |
getNextApplicationMember(AlgorithmContext algorithmContext)
This method returns the next member to which the request has been sent to, according to the algorithm implementation. |
Endpoint |
getNextEndpoint(MessageContext synapseMessageContext,
AlgorithmContext algorithmContext)
This method returns the next node according to the algorithm implementation. |
void |
init(SynapseEnvironment se)
This method should implement the initialization of the implemented parts of the configuration. |
void |
reset(AlgorithmContext algorithmContext)
Resets the algorithm to its initial position. |
void |
setApplicationMembers(List<Member> members)
we are not supporting members |
void |
setEndpoints(List<Endpoint> endpoints)
Set the endpoints |
void |
setLoadBalanceEndpoint(Endpoint endpoint)
Set the loadbalance endpoint |
| Methods inherited from class java.lang.Object |
|---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public WeightedRoundRobin()
| Method Detail |
|---|
public void setApplicationMembers(List<Member> members)
setApplicationMembers in interface LoadbalanceAlgorithmmembers - The application memberspublic void setEndpoints(List<Endpoint> endpoints)
LoadbalanceAlgorithm
setEndpoints in interface LoadbalanceAlgorithmendpoints - The endpointspublic void setLoadBalanceEndpoint(Endpoint endpoint)
LoadbalanceAlgorithm
setLoadBalanceEndpoint in interface LoadbalanceAlgorithmendpoint - the endpoint which uses this algorithm
public Endpoint getNextEndpoint(MessageContext synapseMessageContext,
AlgorithmContext algorithmContext)
LoadbalanceAlgorithm
getNextEndpoint in interface LoadbalanceAlgorithmsynapseMessageContext - SynapseMessageContext of the current messagealgorithmContext - The context in which holds run time states related to the algorithm
public Member getNextApplicationMember(AlgorithmContext algorithmContext)
LoadbalanceAlgorithm
getNextApplicationMember in interface LoadbalanceAlgorithmalgorithmContext - The context in which holds run time states related to the algorithm
public void reset(AlgorithmContext algorithmContext)
LoadbalanceAlgorithm
reset in interface LoadbalanceAlgorithmalgorithmContext - The context in which holds run time states related to the algorithmpublic String getName()
LoadbalanceAlgorithm
getName in interface LoadbalanceAlgorithmpublic LoadbalanceAlgorithm clone()
clone in interface LoadbalanceAlgorithmclone in class Objectpublic void init(SynapseEnvironment se)
ManagedLifecycle
init in interface ManagedLifecyclese - SynapseEnvironment to be used for initializationpublic void destroy()
ManagedLifecycle
destroy in interface ManagedLifecycle
public void changeWeight(int pos,
int weight)
public int[] getCurrentWeights()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||