Main Page | Packages | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

org.objectweb.cjdbc.controller.loadbalancer.policies.createtable.CreateTablePolicy Class Reference

List of all members.

Public Member Functions

void addRule (CreateTableRule rule)
HashMap getRuleList ()
CreateTableRule getTableRule (String tableName)
CreateTableRule getDefaultRule ()
String getXml ()

Static Public Member Functions

final String getXmlValue (int policy)

Static Public Attributes

final int RANDOM = 0
final int ROUND_ROBIN = 1
final int ALL = 2

Detailed Description

Defines the policy to adopt when creating a new table.

Author:
Emmanuel Cecchet
Version:
1.0

Definition at line 39 of file CreateTablePolicy.java.


Member Function Documentation

void org.objectweb.cjdbc.controller.loadbalancer.policies.createtable.CreateTablePolicy.addRule CreateTableRule  rule  ) 
 

Adds a rule to this policy.
If the rule's table name is null, the rule is considered as the default rule

Parameters:
rule rule to add

Definition at line 59 of file CreateTablePolicy.java.

References org.objectweb.cjdbc.controller.loadbalancer.policies.createtable.CreateTableRule.getTableName().

00060   {
00061     ruleList.put(rule.getTableName(), rule);
00062   }

CreateTableRule org.objectweb.cjdbc.controller.loadbalancer.policies.createtable.CreateTablePolicy.getDefaultRule  ) 
 

Returns the default rule or null if no default rule has been defined.

Returns:
a CreateTableRule

Definition at line 92 of file CreateTablePolicy.java.

00093   {
00094     return (CreateTableRule) ruleList.get(null);
00095   }

HashMap org.objectweb.cjdbc.controller.loadbalancer.policies.createtable.CreateTablePolicy.getRuleList  ) 
 

Returns the rule Hashmap(table name,rule).

Returns:
Hashmap

Definition at line 69 of file CreateTablePolicy.java.

00070   {
00071     return ruleList;
00072   }

CreateTableRule org.objectweb.cjdbc.controller.loadbalancer.policies.createtable.CreateTablePolicy.getTableRule String  tableName  ) 
 

Gets the rule corresponding to a table name.

Parameters:
tableName table name of the rule
Returns:
the rule or null if no specific rule has been defined for this table

Definition at line 81 of file CreateTablePolicy.java.

00082   {
00083     return (CreateTableRule) ruleList.get(tableName);
00084   }

String org.objectweb.cjdbc.controller.loadbalancer.policies.createtable.CreateTablePolicy.getXml  ) 
 

Returns xml formatted string containing information on all rules of the system

Returns:
xml formatted string.

Definition at line 124 of file CreateTablePolicy.java.

00125   {
00126     StringBuffer info = new StringBuffer();
00127     for (Iterator iterator = ruleList.keySet().iterator(); iterator.hasNext();)
00128       info.append(((CreateTableRule) ruleList.get(iterator.next())).getXml());
00129     return info.toString();
00130   }

final String org.objectweb.cjdbc.controller.loadbalancer.policies.createtable.CreateTablePolicy.getXmlValue int  policy  )  [static]
 

Returns the xml attribute value for the given policy

Parameters:
policy the policy to convert
Returns:
xml attribute value or "" if not found

Definition at line 103 of file CreateTablePolicy.java.

References org.objectweb.cjdbc.controller.loadbalancer.policies.createtable.CreateTablePolicy.ALL, org.objectweb.cjdbc.controller.loadbalancer.policies.createtable.CreateTablePolicy.RANDOM, and org.objectweb.cjdbc.controller.loadbalancer.policies.createtable.CreateTablePolicy.ROUND_ROBIN.

00104   {
00105     switch (policy)
00106     {
00107       case RANDOM :
00108         return DatabasesXmlTags.VAL_random;
00109       case ROUND_ROBIN :
00110         return DatabasesXmlTags.VAL_roundRobin;
00111       case ALL :
00112         return DatabasesXmlTags.VAL_all;
00113       default :
00114         return "";
00115     }
00116   }


Member Data Documentation

final int org.objectweb.cjdbc.controller.loadbalancer.policies.createtable.CreateTablePolicy.ALL = 2 [static]
 

Table is created on all backends in the backend list.

Definition at line 48 of file CreateTablePolicy.java.

Referenced by org.objectweb.cjdbc.controller.loadbalancer.policies.createtable.CreateTablePolicy.getXmlValue().

final int org.objectweb.cjdbc.controller.loadbalancer.policies.createtable.CreateTablePolicy.RANDOM = 0 [static]
 

Pickup a backend name randomly in the backend list.

Definition at line 42 of file CreateTablePolicy.java.

Referenced by org.objectweb.cjdbc.controller.loadbalancer.policies.createtable.CreateTablePolicy.getXmlValue().

final int org.objectweb.cjdbc.controller.loadbalancer.policies.createtable.CreateTablePolicy.ROUND_ROBIN = 1 [static]
 

Backends are chosen using a round-robin algorithm.

Definition at line 45 of file CreateTablePolicy.java.

Referenced by org.objectweb.cjdbc.controller.loadbalancer.policies.createtable.CreateTablePolicy.getXmlValue().


The documentation for this class was generated from the following file:
Generated on Mon Apr 11 22:03:57 2005 for C-JDBC by  doxygen 1.3.9.1