|
Rice Pastry API | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface AppSocket
Interface for sending bulk data from the application. Mimics java's non-blocking SocketChannel interface this should make it easier to implement in any Java-based p2p overlay.
| Method Summary | |
|---|---|
void |
close()
Closes this socket. |
long |
read(java.nio.ByteBuffer[] dsts,
int offset,
int length)
Reads a sequence of bytes from this channel into a subsequence of the given buffers. |
void |
register(boolean wantToRead,
boolean wantToWrite,
int timeout,
AppSocketReceiver receiver)
Must be called every time a Read/Write occurs to continue operation. |
void |
shutdownOutput()
Disables the output stream for this socket. |
long |
write(java.nio.ByteBuffer[] srcs,
int offset,
int length)
Writes a sequence of bytes to this channel from a subsequence of the given buffers. |
| Method Detail |
|---|
long read(java.nio.ByteBuffer[] dsts,
int offset,
int length)
throws java.io.IOException
java.io.IOException
long write(java.nio.ByteBuffer[] srcs,
int offset,
int length)
throws java.io.IOException
java.io.IOException
void register(boolean wantToRead,
boolean wantToWrite,
int timeout,
AppSocketReceiver receiver)
wantToRead - if you want to read from this socketwantToWrite - if you want to write to this sockettimeout - // the socket's timeout value (this is a TCP level param)receiver - will have receiveSelectResult() called on it
note that you must call select() each time receiveSelectResult() is called. This is so
your application can properly handle flow controlvoid shutdownOutput()
void close()
|
Rice Pastry API | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||