|
Rice Pastry API | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object rice.pastry.PastryNodeFactory rice.pastry.transport.TransportPastryNodeFactory rice.pastry.socket.SocketPastryNodeFactory rice.pastry.socket.nat.rendezvous.RendezvousSocketPastryNodeFactory
public class RendezvousSocketPastryNodeFactory
This class assembles the rendezvous layer with the rendezvous app. Need to think about where this best goes, but for now, we'll put it just above the magic number layer.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class rice.pastry.socket.SocketPastryNodeFactory |
---|
SocketPastryNodeFactory.TLBootstrapper, SocketPastryNodeFactory.TransLiveness<Identifier,MessageType>, SocketPastryNodeFactory.TransLivenessProximity<Identifier,MessageType> |
Field Summary | |
---|---|
protected java.lang.String |
CONTACT_STATE
Maps to a byte contactState |
protected RandomSource |
random
|
static java.lang.String |
RENDEZVOUS_CONTACT_DIRECT_STRATEGY
getVars() maps to a ContactDirectStrategy |
static java.lang.String |
RENDEZVOUS_STRATEGY
maps to a RendezvousStrategy |
static java.lang.String |
RENDEZVOUS_TL
maps to a RendezvousTransportLayerImpl |
static java.lang.String |
SIMULATE_FIREWALL
maps to a boolean, if true then simulates a firewall |
Fields inherited from class rice.pastry.socket.SocketPastryNodeFactory |
---|
findFireWallPolicy, IP_SERVICE, localAddress, MULTI_ADDRESS_STRATEGY, MULTI_INET_TL, NETWORK_INFO_NODE_HANDLE_INDEX, nidFactory, NODE_HANDLE_FACTORY, PASTRY_MAGIC_NUMBER, PRIORITY_TL, PROXY_ADDRESS, testFireWallPolicy |
Fields inherited from class rice.pastry.transport.TransportPastryNodeFactory |
---|
leafSetMaintFreq, routeSetMaintFreq |
Fields inherited from class rice.pastry.PastryNodeFactory |
---|
environment, logger, lSetSize, rtBase, rtMax |
Constructor Summary | |
---|---|
RendezvousSocketPastryNodeFactory(NodeIdFactory nf,
java.net.InetAddress bindAddress,
int startPort,
Environment env,
boolean firewalled)
|
|
RendezvousSocketPastryNodeFactory(NodeIdFactory nf,
int startPort,
Environment env,
boolean firewalled)
|
Methods inherited from class rice.pastry.transport.TransportPastryNodeFactory |
---|
getLeafSetProtocol, getRouterStrategy, getRouteSetProtocol, getTLDeserializer, nodeHandleHelper |
Methods inherited from class rice.pastry.PastryNodeFactory |
---|
getEnvironment |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected java.lang.String CONTACT_STATE
protected RandomSource random
public static final java.lang.String RENDEZVOUS_STRATEGY
public static final java.lang.String RENDEZVOUS_TL
public static final java.lang.String SIMULATE_FIREWALL
public static final java.lang.String RENDEZVOUS_CONTACT_DIRECT_STRATEGY
Constructor Detail |
---|
public RendezvousSocketPastryNodeFactory(NodeIdFactory nf, java.net.InetAddress bindAddress, int startPort, Environment env, boolean firewalled) throws java.io.IOException
java.io.IOException
public RendezvousSocketPastryNodeFactory(NodeIdFactory nf, int startPort, Environment env, boolean firewalled) throws java.io.IOException
java.io.IOException
Method Detail |
---|
public void setContactState(byte contactState)
protected void newNodeSelector(Id nodeId, MultiInetSocketAddress proxyAddress, Continuation<PastryNode,java.io.IOException> deliverResultToMe, java.util.Map<java.lang.String,java.lang.Object> initialVars, boolean firewalled)
nodeId
- proxyAddress
- deliverResultToMe
- initialVars
- firewalled
- protected void newNodeSelector(Id nodeId, MultiInetSocketAddress proxyAddress, Continuation<PastryNode,java.io.IOException> deliverResultToMe, java.util.Map<java.lang.String,java.lang.Object> initialVars, byte contactState)
nodeId
- proxyAddress
- deliverResultToMe
- initialVars
- contactState
- protected JoinProtocol getJoinProtocol(PastryNode pn, LeafSet leafSet, RoutingTable routeTable, ReadyStrategy lsProtocol)
getJoinProtocol
in class TransportPastryNodeFactory
protected TransportLayer<java.net.InetSocketAddress,java.nio.ByteBuffer> getIpServiceTransportLayer(TransportLayer<java.net.InetSocketAddress,java.nio.ByteBuffer> wtl, PastryNode pn) throws java.io.IOException
getIpServiceTransportLayer
in class SocketPastryNodeFactory
java.io.IOException
protected IdentitySerializer<TransportLayerNodeHandle<MultiInetSocketAddress>,MultiInetSocketAddress,SourceRoute<MultiInetSocketAddress>> getIdentiySerializer(PastryNode pn, SocketNodeHandleFactory handleFactory)
getIdentiySerializer
in class SocketPastryNodeFactory
protected TransportLayer<java.net.InetSocketAddress,java.nio.ByteBuffer> getRendezvousTransportLayer(TransportLayer<java.net.InetSocketAddress,java.nio.ByteBuffer> mtl, PastryNode pn)
protected NextHopStrategy<MultiInetSocketAddress> getNextHopStrategy(TransportLayer<SourceRoute<MultiInetSocketAddress>,java.nio.ByteBuffer> ltl, LivenessProvider<SourceRoute<MultiInetSocketAddress>> livenessProvider, Pinger<SourceRoute<MultiInetSocketAddress>> pinger, PastryNode pn, MultiInetSocketAddress proxyAddress, MultiAddressSourceRouteFactory esrFactory) throws java.io.IOException
getNextHopStrategy
in class SocketPastryNodeFactory
java.io.IOException
protected ResponseStrategy<java.net.InetSocketAddress> getResponseStrategy(PastryNode pn)
protected ContactDirectStrategy<RendezvousSocketNodeHandle> getContactDirectStrategy(PastryNode pn)
protected PilotFinder<RendezvousSocketNodeHandle> getPilotFinder(PastryNode pn)
protected void generatePilotStrategy(PastryNode pn, RendezvousTransportLayerImpl<java.net.InetSocketAddress,RendezvousSocketNodeHandle> rendezvousLayer)
protected ContactDeserializer<java.net.InetSocketAddress,RendezvousSocketNodeHandle> getContactDeserializer(PastryNode pn)
protected RendezvousGenerationStrategy<RendezvousSocketNodeHandle> getRendezvousGenerator(PastryNode pn)
protected ProximityNeighborSelector getProximityNeighborSelector(PastryNode pn)
TransportPastryNodeFactory
getProximityNeighborSelector
in class TransportPastryNodeFactory
protected RendezvousStrategy<RendezvousSocketNodeHandle> getRendezvousStrategyHelper(PastryNode pn)
protected RendezvousStrategy<RendezvousSocketNodeHandle> getRendezvousStrategy(PastryNode pn)
protected void registerApps(PastryNode pn, LeafSet leafSet, RoutingTable routeTable, NodeHandleAdapter nha, NodeHandleFactory handleFactory)
registerApps
in class SocketPastryNodeFactory
public NodeHandleFactory getNodeHandleFactory(PastryNode pn)
getNodeHandleFactory
in class SocketPastryNodeFactory
public NodeHandle getLocalHandle(PastryNode pn, NodeHandleFactory nhf)
getLocalHandle
in class SocketPastryNodeFactory
protected TransportLayer<java.net.InetSocketAddress,java.nio.ByteBuffer> getWireTransportLayer(java.net.InetSocketAddress innermostAddress, PastryNode pn) throws java.io.IOException
getWireTransportLayer
in class SocketPastryNodeFactory
java.io.IOException
protected PriorityTransportLayer<MultiInetSocketAddress> getPriorityTransportLayer(TransportLayer<MultiInetSocketAddress,java.nio.ByteBuffer> trans, LivenessProvider<MultiInetSocketAddress> liveness, ProximityProvider<MultiInetSocketAddress> prox, PastryNode pn)
getPriorityTransportLayer
in class SocketPastryNodeFactory
protected Bootstrapper getBootstrapper(PastryNode pn, NodeHandleAdapter tl, NodeHandleFactory handleFactory, ProximityNeighborSelector pns)
getBootstrapper
in class SocketPastryNodeFactory
protected boolean isInternetRoutablePrefix(java.net.InetAddress address)
|
Rice Pastry API | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |