FileDocCategorySizeDatePackage
ClusterRuleSet.javaAPI DocApache Tomcat 6.0.148120Fri Jul 20 04:20:34 BST 2007org.apache.catalina.ha

ClusterRuleSet

public class ClusterRuleSet extends org.apache.tomcat.util.digester.RuleSetBase

RuleSet for processing the contents of a Cluster definition element.

author
Filip Hanik
author
Peter Rossbach
version
$Revision: 467222 $ $Date: 2006-10-24 05:17:11 +0200 (mar., 24 oct. 2006) $

Fields Summary
protected String
prefix
The matching pattern prefix to use for recognizing our elements.
Constructors Summary
public ClusterRuleSet()
Construct an instance of this RuleSet with the default matching pattern prefix.



    // ------------------------------------------------------------ Constructor


                     
      

        this("");

    
public ClusterRuleSet(String prefix)
Construct an instance of this RuleSet with the specified matching pattern prefix.

param
prefix Prefix for matching pattern rules (including the trailing slash character)

        super();
        this.namespaceURI = null;
        this.prefix = prefix;
    
Methods Summary
public voidaddRuleInstances(org.apache.tomcat.util.digester.Digester digester)

Add the set of Rule instances defined in this RuleSet to the specified Digester instance, associating them with our namespace URI (if any). This method should only be called by a Digester instance.

param
digester Digester instance to which the new Rule instances should be added.

        //Cluster configuration start
        digester.addObjectCreate(prefix + "Manager",
                                 null, // MUST be specified in the element
                                 "className");
        digester.addSetProperties(prefix + "Manager");
        digester.addSetNext(prefix + "Manager",
                            "setManagerTemplate",
                            "org.apache.catalina.ha.ClusterManager");
        


        digester.addObjectCreate(prefix + "Channel",
                                 null, // MUST be specified in the element
                                 "className");
        digester.addSetProperties(prefix + "Channel");
        digester.addSetNext(prefix + "Channel",
                            "setChannel",
                            "org.apache.catalina.tribes.Channel");


        String channelPrefix = prefix + "Channel/";
        { //channel properties
            digester.addObjectCreate(channelPrefix + "Membership",
                                     null, // MUST be specified in the element
                                     "className");
            digester.addSetProperties(channelPrefix + "Membership");
            digester.addSetNext(channelPrefix + "Membership",
                                "setMembershipService",
                                "org.apache.catalina.tribes.MembershipService");

            digester.addObjectCreate(channelPrefix + "Sender",
                                     null, // MUST be specified in the element
                                     "className");
            digester.addSetProperties(channelPrefix + "Sender");
            digester.addSetNext(channelPrefix + "Sender",
                                "setChannelSender",
                                "org.apache.catalina.tribes.ChannelSender");

            digester.addObjectCreate(channelPrefix + "Sender/Transport",
                                     null, // MUST be specified in the element
                                     "className");
            digester.addSetProperties(channelPrefix + "Sender/Transport");
            digester.addSetNext(channelPrefix + "Sender/Transport",
                                "setTransport",
                                "org.apache.catalina.tribes.transport.MultiPointSender");


            digester.addObjectCreate(channelPrefix + "Receiver",
                                     null, // MUST be specified in the element
                                     "className");
            digester.addSetProperties(channelPrefix + "Receiver");
            digester.addSetNext(channelPrefix + "Receiver",
                                "setChannelReceiver",
                                "org.apache.catalina.tribes.ChannelReceiver");

            digester.addObjectCreate(channelPrefix + "Interceptor",
                                     null, // MUST be specified in the element
                                     "className");
            digester.addSetProperties(channelPrefix + "Interceptor");
            digester.addSetNext(channelPrefix + "Interceptor",
                                "addInterceptor",
                                "org.apache.catalina.tribes.ChannelInterceptor");

            
            digester.addObjectCreate(channelPrefix + "Interceptor/Member",
                                     null, // MUST be specified in the element
                                     "className");
            digester.addSetProperties(channelPrefix + "Interceptor/Member");
            digester.addSetNext(channelPrefix + "Interceptor/Member",
                                "addStaticMember",
                                "org.apache.catalina.tribes.Member");
        }

        digester.addObjectCreate(prefix + "Valve",
                                 null, // MUST be specified in the element
                                 "className");
        digester.addSetProperties(prefix + "Valve");
        digester.addSetNext(prefix + "Valve",
                            "addValve",
                            "org.apache.catalina.Valve");
        
        digester.addObjectCreate(prefix + "Deployer",
                                 null, // MUST be specified in the element
                                 "className");
        digester.addSetProperties(prefix + "Deployer");
        digester.addSetNext(prefix + "Deployer",
                            "setClusterDeployer",
                            "org.apache.catalina.ha.ClusterDeployer");
        
        digester.addObjectCreate(prefix + "Listener",
                null, // MUST be specified in the element
                "className");
        digester.addSetProperties(prefix + "Listener");
        digester.addSetNext(prefix + "Listener",
                            "addLifecycleListener",
                            "org.apache.catalina.LifecycleListener");
        
        digester.addObjectCreate(prefix + "ClusterListener",
                null, // MUST be specified in the element
                "className");
        digester.addSetProperties(prefix + "ClusterListener");
        digester.addSetNext(prefix + "ClusterListener",
                            "addClusterListener",
                            "org.apache.catalina.ha.ClusterListener");
        //Cluster configuration end