|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface SynchRecord<E>
SynchRecord associates a data item from a BatchSynchQueue
with its producer. This enables the data item data
item to be put back on the queue without unblocking its producer, or to send exceptions to the producer.
Responsibilities | Collaborations |
---|---|
Get the underlying data element. | |
Put the data element back on the queue without unblocking its producer. | |
Send and exception to the data elements producer. |
Method Summary | |
---|---|
E |
getElement()
Gets the data element contained by this record. |
void |
inError(Exception e)
Tells the synch queue to raise an exception with this elements producer. |
void |
releaseImmediately()
Immediately releases the producer of this data record. |
void |
reQueue()
Tells the synch queue to put this element back onto the queue instead of releasing its producer. |
Method Detail |
---|
E getElement()
void reQueue()
SynchRef.unblockProducers()
method.
This method will raise a runtime exception AlreadyUnblockedException
if the producer for this element
has already been unblocked.
void releaseImmediately()
void inError(Exception e)
SynchRef.unblockProducers()
method. The exception will be wrapped in a
SynchException
before it is raised on the producer.
This method is unusual in that it accepts an exception as an argument. This is non-standard but is used
because the exception is to be passed onto a different thread.
This method will raise a runtime exception AlreadyUnblockedException
if the producer for this element
has already been unblocked.
e
- The exception to raise on the producer.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |