org.jgroups.protocols
Class BasicTCP

java.lang.Object
  extended by org.jgroups.stack.Protocol
      extended by org.jgroups.protocols.TP
          extended by org.jgroups.protocols.BasicTCP
Direct Known Subclasses:
TCP, TCP_NIO

public abstract class BasicTCP
extends TP

Shared base class for tcpip protocols

Author:
Scott Marlow

Nested Class Summary
 
Nested classes/interfaces inherited from class org.jgroups.protocols.TP
TP.ProbeHandler, TP.ProtocolAdapter
 
Field Summary
protected  long conn_expire_time
           
protected  int end_port
           
protected  java.net.InetAddress external_addr
           
protected  long reaper_interval
           
protected  int start_port
           
 
Fields inherited from class org.jgroups.protocols.TP
bind_addr, channel_name, discard_incompatible_packets, global_thread_factory, local_addr, members, persistent_ports, persistent_ports_file, pm, pm_expiry_time, thread_naming_pattern, timer, timer_thread_factory, view
 
Fields inherited from class org.jgroups.stack.Protocol
down_prot, log, props, stack, stats, up_prot
 
Constructor Summary
BasicTCP()
           
 
Method Summary
 long getConnExpireTime()
           
 int getEndPort()
           
 java.lang.String getInfo()
           
 long getReaperInterval()
           
 int getStartPort()
           
protected  java.lang.Object handleDownEvent(Event evt)
           
 void init()
          Called after instance has been created (null constructor) and before protocol is started.
 void postUnmarshalling(Message msg, Address dest, Address src, boolean multicast)
           
 void postUnmarshallingList(Message msg, Address dest, boolean multicast)
           
abstract  java.lang.String printConnections()
           
 void receive(Address sender, byte[] data, int offset, int length)
          ConnectionTable.Receiver interface
abstract  void retainAll(java.util.Collection<Address> members)
           
abstract  void send(Address dest, byte[] data, int offset, int length)
           
 void sendToAllMembers(byte[] data, int offset, int length)
          Send to all members in the group.
 void sendToSingleMember(Address dest, byte[] data, int offset, int length)
          Send to all members in the group.
 void setConnExpireTime(long conn_expire_time)
           
 void setEndPort(int end_port)
           
 boolean setProperties(java.util.Properties props)
          Setup the Protocol instance according to the configuration string
 void setReaperInterval(long reaper_interval)
           
 void setStartPort(int start_port)
           
 
Methods inherited from class org.jgroups.protocols.TP
createThreadPool, destroy, down, dumpStats, getBindAddress, getBindPort, getBindToAllInterfaces, getChannelName, getDefaultThreadPool, getDefaultThreadPoolThreadFactory, getIncomingKeepAliveTime, getIncomingMaxPoolSize, getIncomingMaxQueueSize, getIncomingMessages, getIncomingMinPoolSize, getIncomingPoolSize, getIncomingQueueSize, getLocalAddress, getMaxBundleSize, getMaxBundleTimeout, getNumBytesReceived, getNumBytesSent, getNumMessagesReceived, getNumMessagesSent, getOOBKeepAliveTime, getOOBMaxPoolSize, getOOBMaxQueueSize, getOOBMessages, getOOBMinPoolSize, getOOBPoolSize, getOOBQueueSize, getOOBThreadPool, getOOBThreadPoolThreadFactory, getReceiveInterfaces, getSendInterfaces, getSingletonName, getThreadFactory, getThreadNamingPattern, getTimer, getTimerThreadFactory, getUpProtocols, handleConfigEvent, handleConnect, handleDisconnect, isDefaulThreadPoolEnabled, isDiscardIncompatiblePackets, isEnable_unicast_bundling, isEnableBundling, isLoopback, isOOBThreadPoolEnabled, isReceiveOnAllInterfaces, isSendOnAllInterfaces, isUseIncomingPacketHandler, passToAllUpProtocols, receive, registerProbeHandler, resetStats, sendUpLocalAddressEvent, setBindAddress, setBindPort, setBindToAllInterfaces, setDefaultThreadPool, setDefaultThreadPoolThreadFactory, setDiscardIncompatiblePackets, setEnable_unicast_bundling, setEnableBundling, setIncomingKeepAliveTime, setIncomingMaxPoolSize, setIncomingMinPoolSize, setLoopback, setMaxBundleSize, setMaxBundleTimeout, setOOBKeepAliveTime, setOOBMaxPoolSize, setOOBMinPoolSize, setOOBThreadPool, setOOBThreadPoolThreadFactory, setThreadFactory, setThreadNames, setTimerThreadFactory, start, stop, toString, unregisterProbeHandler, unsetThreadNames, up
 
Methods inherited from class org.jgroups.stack.Protocol
downThreadEnabled, enableStats, getDownProtocol, getName, getProperties, getProtocolStack, getTransport, getUpProtocol, printStats, providedDownServices, providedUpServices, requiredDownServices, requiredUpServices, setDownProtocol, setPropertiesInternal, setProtocolStack, setUpProtocol, statsEnabled, upThreadEnabled
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

external_addr

protected java.net.InetAddress external_addr

start_port

protected int start_port

end_port

protected int end_port

reaper_interval

protected long reaper_interval

conn_expire_time

protected long conn_expire_time
Constructor Detail

BasicTCP

public BasicTCP()
Method Detail

getStartPort

public int getStartPort()

setStartPort

public void setStartPort(int start_port)

getEndPort

public int getEndPort()

setEndPort

public void setEndPort(int end_port)

getReaperInterval

public long getReaperInterval()

setReaperInterval

public void setReaperInterval(long reaper_interval)

getConnExpireTime

public long getConnExpireTime()

setConnExpireTime

public void setConnExpireTime(long conn_expire_time)

setProperties

public boolean setProperties(java.util.Properties props)
Description copied from class: TP
Setup the Protocol instance according to the configuration string

Overrides:
setProperties in class TP
Returns:
true if no other properties are left. false if the properties still have data in them, ie , properties are left over and not handled by the protocol stack

init

public void init()
          throws java.lang.Exception
Description copied from class: Protocol
Called after instance has been created (null constructor) and before protocol is started. Properties are already set. Other protocols are not yet connected and events cannot yet be sent.

Overrides:
init in class TP
Throws:
java.lang.Exception - Thrown if protocol cannot be initialized successfully. This will cause the ProtocolStack to fail, so the channel constructor will throw an exception

sendToAllMembers

public void sendToAllMembers(byte[] data,
                             int offset,
                             int length)
                      throws java.lang.Exception
Description copied from class: TP
Send to all members in the group. UDP would use an IP multicast message, whereas TCP would send N messages, one for each member

Specified by:
sendToAllMembers in class TP
Parameters:
data - The data to be sent. This is not a copy, so don't modify it
Throws:
java.lang.Exception

sendToSingleMember

public void sendToSingleMember(Address dest,
                               byte[] data,
                               int offset,
                               int length)
                        throws java.lang.Exception
Description copied from class: TP
Send to all members in the group. UDP would use an IP multicast message, whereas TCP would send N messages, one for each member

Specified by:
sendToSingleMember in class TP
Parameters:
dest - Must be a non-null unicast address
data - The data to be sent. This is not a copy, so don't modify it
Throws:
java.lang.Exception

getInfo

public java.lang.String getInfo()
Specified by:
getInfo in class TP

postUnmarshalling

public void postUnmarshalling(Message msg,
                              Address dest,
                              Address src,
                              boolean multicast)
Specified by:
postUnmarshalling in class TP

postUnmarshallingList

public void postUnmarshallingList(Message msg,
                                  Address dest,
                                  boolean multicast)
Specified by:
postUnmarshallingList in class TP

printConnections

public abstract java.lang.String printConnections()

send

public abstract void send(Address dest,
                          byte[] data,
                          int offset,
                          int length)
                   throws java.lang.Exception
Throws:
java.lang.Exception

retainAll

public abstract void retainAll(java.util.Collection<Address> members)

receive

public void receive(Address sender,
                    byte[] data,
                    int offset,
                    int length)
ConnectionTable.Receiver interface


handleDownEvent

protected java.lang.Object handleDownEvent(Event evt)
Overrides:
handleDownEvent in class TP


Copyright ? 1998-2008 Bela Ban. All Rights Reserved.