| java.lang.Object org.jgroups.stack.Configurator
Configurator | public class Configurator (Code) | | The task if this class is to setup and configure the protocol stack. A string describing
the desired setup, which is both the layering and the configuration of each layer, is
given to the configurator which creates and configures the protocol stack and returns
a reference to the top layer (Protocol).
Future functionality will include the capability to dynamically modify the layering
of the protocol stack and the properties of each layer.
author: Bela Ban |
Inner Class :public class ProtocolConfiguration | |
Field Summary | |
final protected Log | log |
Method Summary | |
public Protocol | createProtocol(String prot_spec, ProtocolStack stack) Creates a new protocol given the protocol specification. | public Protocol | findProtocol(Protocol prot_stack, String name) | public Protocol | getBottommostProtocol(Protocol prot_stack) | public void | initProtocolStack(Protocol bottom_prot) | public void | insertProtocol(Protocol prot, int position, String neighbor_prot, ProtocolStack stack) Inserts an already created (and initialized) protocol into the protocol list. | public static void | main(String args) | public Vector | parseComponentStrings(String config_str, String delimiter) Get a string of the form "P1(config_str1):P2:P3(config_str3)" and return
ProtocolConfigurations for it. | public Vector | parseConfigurations(String configuration) | boolean | providesDownServices(int start_index, Vector req_list, int evt_type) | boolean | providesUpServices(int end_index, Vector req_list, int evt_type) | public void | removeProtocol(String prot_name) Removes a protocol from the stack. | public void | sanityCheck(Vector protocols) Throws an exception if sanity check fails. | public Protocol | setupProtocolStack(String configuration, ProtocolStack st) The configuration string has a number of entries, separated by a ':' (colon).
Each entry consists of the name of the protocol, followed by an optional configuration
of that protocol. | public void | startProtocolStack(Protocol bottom_prot) | public void | stopProtocolStack(Protocol start_prot) |
log | final protected Log log(Code) | | |
createProtocol | public Protocol createProtocol(String prot_spec, ProtocolStack stack) throws Exception(Code) | | Creates a new protocol given the protocol specification. Initializes the properties and starts the
up and down handler threads.
Parameters: prot_spec - The specification of the protocol. Same convention as for specifying a protocol stack.An exception will be thrown if the class cannot be created. Example:"VERIFY_SUSPECT(timeout=1500)" Note that no colons (:) have to bespecified Parameters: stack - The protocol stack Protocol The newly created protocol exception: Exception - Will be thrown when the new protocol cannot be created |
insertProtocol | public void insertProtocol(Protocol prot, int position, String neighbor_prot, ProtocolStack stack) throws Exception(Code) | | Inserts an already created (and initialized) protocol into the protocol list. Sets the links
to the protocols above and below correctly and adjusts the linked list of protocols accordingly.
Parameters: prot - The protocol to be inserted. Before insertion, a sanity check will ensure that noneof the existing protocols have the same name as the new protocol. Parameters: position - Where to place the protocol with respect to the neighbor_prot (ABOVE, BELOW) Parameters: neighbor_prot - The name of the neighbor protocol. An exception will be thrown if this nameis not found Parameters: stack - The protocol stack exception: Exception - Will be thrown when the new protocol cannot be created, or inserted. |
parseComponentStrings | public Vector parseComponentStrings(String config_str, String delimiter)(Code) | | Get a string of the form "P1(config_str1):P2:P3(config_str3)" and return
ProtocolConfigurations for it. That means, parse "P1(config_str1)", "P2" and
"P3(config_str3)"
Parameters: config_str - Configuration string Vector of ProtocolConfigurations |
parseConfigurations | public Vector parseConfigurations(String configuration) throws Exception(Code) | | Return a number of ProtocolConfigurations in a vector
Parameters: configuration - protocol-stack configuration string Vector of ProtocolConfigurations |
providesDownServices | boolean providesDownServices(int start_index, Vector req_list, int evt_type)(Code) | | Checks whether any of the protocols 'above' start_index provide evt_type
|
providesUpServices | boolean providesUpServices(int end_index, Vector req_list, int evt_type)(Code) | | Check whether any of the protocols 'below' end_index provide evt_type
|
removeProtocol | public void removeProtocol(String prot_name) throws Exception(Code) | | Removes a protocol from the stack. Stops the protocol and readjusts the linked lists of
protocols.
Parameters: prot_name - The name of the protocol. Since all protocol names in a stack have to be unique(otherwise the stack won't be created), the name refers to just 1 protocol. exception: Exception - Thrown if the protocol cannot be stopped correctly. |
sanityCheck | public void sanityCheck(Vector protocols) throws Exception(Code) | | Throws an exception if sanity check fails. Possible sanity check is uniqueness of all protocol
names.
|
setupProtocolStack | public Protocol setupProtocolStack(String configuration, ProtocolStack st) throws Exception(Code) | | The configuration string has a number of entries, separated by a ':' (colon).
Each entry consists of the name of the protocol, followed by an optional configuration
of that protocol. The configuration is enclosed in parentheses, and contains entries
which are name/value pairs connected with an assignment sign (=) and separated by
a semicolon.
UDP(in_port=5555;out_port=4445):FRAG(frag_size=1024)
The first entry defines the bottommost layer, the string is parsed
left to right and the protocol stack constructed bottom up. Example: the string
"UDP(in_port=5555):FRAG(frag_size=32000):DEBUG" results is the following stack:
-----------------------
| DEBUG |
|-----------------------|
| FRAG frag_size=32000 |
|-----------------------|
| UDP in_port=32000 |
-----------------------
|
startProtocolStack | public void startProtocolStack(Protocol bottom_prot)(Code) | | |
stopProtocolStack | public void stopProtocolStack(Protocol start_prot)(Code) | | |
|
|