📄 wadicluster.java
字号:
package org.mortbay.jetty.servlet.wadi;import java.net.URI;import java.util.ArrayList;import java.util.Collection;import org.apache.catalina.tribes.Member;import org.codehaus.wadi.core.reflect.base.DeclaredMemberFilter;import org.codehaus.wadi.core.reflect.jdk.JDKClassIndexerRegistry;import org.codehaus.wadi.group.Dispatcher;import org.codehaus.wadi.group.DispatcherRegistry;import org.codehaus.wadi.group.StaticDispatcherRegistry;import org.codehaus.wadi.servicespace.admin.AdminServiceSpace;import org.codehaus.wadi.tribes.TribesDispatcher;import org.codehaus.wadi.web.impl.URIEndPoint;import org.mortbay.component.AbstractLifeCycle;public class WadiCluster extends AbstractLifeCycle{ private final String _clusterName; private final String _nodeName; private final URI _endPointURI; private final Collection<Member> _staticMembers; private Dispatcher _dispatcher; /** * Constructs a cluster having the specified details. * * @param clusterName name of the cluster. * @param nodeName name of the node this cluster instance is running on * @param endPointURI base URL to use from other nodes to reach this node. This value is actually not used and you * pretty much do not need to define a meaningful value; however, it must be a valid URI. * * @throws Exception */ public WadiCluster(String clusterName, String nodeName, String endPointURI) throws Exception { if (null == clusterName) { throw new IllegalArgumentException("clusterName is required"); } else if (null == nodeName) { throw new IllegalArgumentException("nodeName is required"); } _clusterName = clusterName; _nodeName = nodeName; _endPointURI = new URI(endPointURI); _staticMembers = new ArrayList<Member>(); } public void addStaticMember(Member member) { _staticMembers.add(member); } public Dispatcher getDispatcher() { return _dispatcher; } public String getNodeName() { return _nodeName; } @Override protected void doStart() throws Exception { _dispatcher = newDispatcher(); DispatcherRegistry dispatcherRegistry = new StaticDispatcherRegistry(); dispatcherRegistry.register(_dispatcher); _dispatcher.start(); AdminServiceSpace adminServiceSpace = new AdminServiceSpace(_dispatcher, new JDKClassIndexerRegistry(new DeclaredMemberFilter())); adminServiceSpace.start(); } @Override protected void doStop() throws Exception { _dispatcher.stop(); } protected Dispatcher newDispatcher() { return new TribesDispatcher(_clusterName, _nodeName, new URIEndPoint(_endPointURI), _staticMembers); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -