edu.jas.util
Class TaggedSocketChannel
- java.lang.Object
-
- java.lang.Thread
-
- edu.jas.util.TaggedSocketChannel
-
- All Implemented Interfaces:
- java.lang.Runnable
public class TaggedSocketChannel extends java.lang.ThreadTaggedSocketChannel provides a communication channel with message tags for Java objects using TCP/IP sockets.
-
-
Constructor Summary
Constructors Constructor and Description TaggedSocketChannel(SocketChannel s)Constructs a tagged socket channel on the given socket channel s.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description voidclose()Closes the channel.SocketChannelgetSocket()Get the SocketChannelvoidinit()thread initialization and start.intmessages()Number of messages.java.lang.Objectreceive(java.lang.Integer tag)Receive an object.voidrun()Run receive() in an infinite loop.voidsend(java.lang.Integer tag, java.lang.Object v)Sends an object.inttagSize()Number of tags.voidterminate()Terminate the TaggedSocketChannel.java.lang.StringtoString()To string.-
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, yield
-
-
-
-
Constructor Detail
-
TaggedSocketChannel
public TaggedSocketChannel(SocketChannel s)
Constructs a tagged socket channel on the given socket channel s.- Parameters:
s- A socket channel object.
-
-
Method Detail
-
init
public void init()
thread initialization and start.
-
getSocket
public SocketChannel getSocket()
Get the SocketChannel
-
send
public void send(java.lang.Integer tag, java.lang.Object v) throws java.io.IOExceptionSends an object.- Parameters:
tag- message tagv- object to send- Throws:
java.io.IOException
-
receive
public java.lang.Object receive(java.lang.Integer tag) throws java.lang.InterruptedException, java.io.IOException, java.lang.ClassNotFoundExceptionReceive an object.- Parameters:
tag- message tag- Returns:
- object received
- Throws:
java.lang.InterruptedExceptionjava.io.IOExceptionjava.lang.ClassNotFoundException
-
close
public void close()
Closes the channel.
-
toString
public java.lang.String toString()
To string.- Overrides:
toStringin classjava.lang.Thread- See Also:
Thread.toString()
-
tagSize
public int tagSize()
Number of tags.- Returns:
- size of key set.
-
messages
public int messages()
Number of messages.- Returns:
- sum of all messages in queues.
-
run
public void run()
Run receive() in an infinite loop.- Specified by:
runin interfacejava.lang.Runnable- Overrides:
runin classjava.lang.Thread- See Also:
Thread.run()
-
terminate
public void terminate()
Terminate the TaggedSocketChannel.
-
-
DMelt 3.0 © DataMelt by jWork.ORG