Public Member Functions | |
ErrorCheckingPolicy (int policy, int numberOfNodes) | |
int | getNumberOfNodes () |
void | setNumberOfNodes (int numberOfNodes) |
int | getPolicy () |
void | setPolicy (int policy) |
abstract ArrayList | getBackends (ArrayList backends) throws ErrorCheckingException |
abstract String | getInformation () |
String | getXml () |
Static Public Attributes | |
final int | RANDOM = 0 |
final int | ROUND_ROBIN = 1 |
final int | ALL = 2 |
Protected Attributes | |
int | nbOfNodes = 0 |
int | policy |
Definition at line 37 of file ErrorCheckingPolicy.java.
|
Creates a new
Definition at line 59 of file ErrorCheckingPolicy.java. 00060 { 00061 setPolicy(policy); 00062 setNumberOfNodes(numberOfNodes); 00063 }
|
|
Pickups backends from the given backends arraylist according to the current rule policy.
Implemented in org.objectweb.cjdbc.controller.loadbalancer.policies.errorchecking.ErrorCheckingAll, org.objectweb.cjdbc.controller.loadbalancer.policies.errorchecking.ErrorCheckingRandom, and org.objectweb.cjdbc.controller.loadbalancer.policies.errorchecking.ErrorCheckingRoundRobin. |
|
Gives information about the current policy.
Implemented in org.objectweb.cjdbc.controller.loadbalancer.policies.errorchecking.ErrorCheckingAll, org.objectweb.cjdbc.controller.loadbalancer.policies.errorchecking.ErrorCheckingRandom, and org.objectweb.cjdbc.controller.loadbalancer.policies.errorchecking.ErrorCheckingRoundRobin. |
|
Returns the number of nodes.
Definition at line 71 of file ErrorCheckingPolicy.java. 00072 {
00073 return nbOfNodes;
00074 }
|
|
Returns the policy.
Definition at line 98 of file ErrorCheckingPolicy.java. 00099 {
00100 return policy;
00101 }
|
|
Convert this error checking policy to xml
Definition at line 137 of file ErrorCheckingPolicy.java. 00139 { 00140 StringBuffer info = new StringBuffer(); 00141 info.append( 00142 "<" 00143 + DatabasesXmlTags.ELT_ErrorChecking 00144 + " />" 00145 + DatabasesXmlTags.ATT_numberOfNodes 00146 + "=\"" 00147 + this.getNumberOfNodes() 00148 + "\" " 00149 + DatabasesXmlTags.ATT_policy 00150 + "=\""); 00151 switch (policy) 00152 { 00153 case RANDOM : 00154 info.append(DatabasesXmlTags.VAL_random); 00155 case ROUND_ROBIN : 00156 info.append(DatabasesXmlTags.VAL_roundRobin); 00157 case ALL : 00158 info.append(DatabasesXmlTags.VAL_all); 00159 default : 00160 } 00161 info.append("\"/>"); 00162 return info.toString(); 00163 }
|
|
Sets the number of nodes.
Definition at line 82 of file ErrorCheckingPolicy.java. 00083 { 00084 if (numberOfNodes < 3) 00085 throw new IllegalArgumentException( 00086 "You must use at least 3 nodes for error checking (" 00087 + numberOfNodes 00088 + " is not acceptable)"); 00089 this.nbOfNodes = numberOfNodes; 00090 }
|
|
Sets the policy.
Definition at line 109 of file ErrorCheckingPolicy.java. 00110 {
00111 this.policy = policy;
00112 }
|
|
Request is sent to all backends. Definition at line 46 of file ErrorCheckingPolicy.java. |
|
Number of nodes that are involved in error-checking per request. Definition at line 49 of file ErrorCheckingPolicy.java. |
|
Pickup backends randomly. Definition at line 40 of file ErrorCheckingPolicy.java. |
|
Backends are chosen using a round-robin algorithm. Definition at line 43 of file ErrorCheckingPolicy.java. |