|
More information: http://www.cs.berkeley.edu/~mdw/proj/seda/ | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--mdw.sandStorm.core.SimpleSink | +--mdw.sandStorm.lib.http.httpConnection
This class represents a single HTTP connection. When an httpServer receives a connection, an httpConnection is pushed to the user. To send HTTP responses to a client, you can enqueue an httpResponse object on the corresponding httpConnection.
httpRequest
,
httpResponse
Field Summary | |
java.lang.Object |
userTag
Can be used by applications to associate an arbitrary data object with this connection. |
Fields inherited from interface mdw.sandStorm.lib.http.httpConst |
CRLF, DEFAULT_HTTP_PORT, HTTP_VERSION, WRITE_CLOG_THRESHOLD |
Constructor Summary | |
(package private) |
httpConnection(ATcpConnection tcpconn,
httpServer hs,
SinkIF compQ)
Package-internal: Create an httpConnection with the given TCP connection and completion queue. |
Method Summary | |
void |
close(SinkIF compQ)
Close the connection. |
void |
enqueue_abort(java.lang.Object key)
Not supported; throws an IllegalArgumentException. |
void |
enqueue_commit(java.lang.Object key)
Not supported; throws an IllegalArgumentException. |
boolean |
enqueue_lossy(QueueElementIF element)
Enqueue outgoing data on this connection. |
void |
enqueue_many(QueueElementIF[] elements)
Enqueue outgoing data on this connection. |
java.lang.Object |
enqueue_prepare(QueueElementIF[] enqueueMe)
Not supported; throws an IllegalArgumentException. |
void |
enqueue(QueueElementIF element)
Enqueue outgoing data on this connection. |
void |
flush(SinkIF compQ)
Flush the connection; a SinkFlushedEvent will be pushed to the user when all packets have drained. |
ATcpConnection |
getConnection()
Return the ATcpConnection associated with this connection. |
(package private) void |
parsePacket(ATcpInPacket pkt)
Package-internal: Parse the data contained in the given TCP packet. |
int |
size()
Return the number of outgoing packets waiting to be sent. |
java.lang.String |
toString()
|
Methods inherited from class mdw.sandStorm.core.SimpleSink |
getEnqueuePredicate, profileSize, setEnqueuePredicate |
Methods inherited from class java.lang.Object |
|
Field Detail |
public java.lang.Object userTag
Constructor Detail |
httpConnection(ATcpConnection tcpconn, httpServer hs, SinkIF compQ)
Method Detail |
void parsePacket(ATcpInPacket pkt) throws java.io.IOException
public ATcpConnection getConnection()
public java.lang.String toString()
toString
in class java.lang.Object
public void enqueue(QueueElementIF element) throws SinkException
enqueue
in class SimpleSink
mdw.sandStorm.api.SinkIF
element
- The QueueElementIF
to enqueueSinkFullException
- Indicates that the sink is temporarily full.SinkClosedException
- Indicates that the sink is
no longer being serviced.public boolean enqueue_lossy(QueueElementIF element)
enqueue_lossy
in class SimpleSink
mdw.sandStorm.api.SinkIF
element
- The QueueElementIF
to enqueuepublic void enqueue_many(QueueElementIF[] elements) throws SinkException
enqueue_many
in class SimpleSink
mdw.sandStorm.api.SinkIF
elements
- The element array to enqueueSinkFullException
- Indicates that the sink is temporarily full.SinkClosedException
- Indicates that the sink is
no longer being serviced.public int size()
size
in class SimpleSink
public void close(SinkIF compQ) throws SinkClosedException
public void flush(SinkIF compQ) throws SinkClosedException
public java.lang.Object enqueue_prepare(QueueElementIF[] enqueueMe) throws SinkException
SimpleSink
enqueue_prepare
in class SimpleSink
mdw.sandStorm.api.SinkIF
elements
- The element array to provisionally enqueueSinkFullException
- Indicates that the sink is temporarily full
and that the requested elements could not be provisionally enqueued.SinkClosedException
- Indicates that the sink is
no longer being serviced.enqueue_commit
,
enqueue_abort
public void enqueue_commit(java.lang.Object key)
SimpleSink
enqueue_commit
in class SimpleSink
mdw.sandStorm.api.SinkIF
key
- The enqueue key returned by a previous call to
enqueue_prepare().java.lang.IllegalArgumentException
- Thrown if an unknown enqueue key
is provided.public void enqueue_abort(java.lang.Object key)
SimpleSink
enqueue_abort
in class SimpleSink
mdw.sandStorm.api.SinkIF
key
- The enqueue key returned by a previous call to
enqueue_prepare().java.lang.IllegalArgumentException
- Thrown if an unknown enqueue key
is provided.
|
More information: http://www.cs.berkeley.edu/~mdw/proj/seda/ | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |