Class PosetAwareMailbox
java.lang.Object
tools.refinery.interpreter.rete.network.mailbox.timeless.AbstractUpdateSplittingMailbox<GroupBasedMessageIndexer,PosetAwareReceiver>
 
tools.refinery.interpreter.rete.network.mailbox.timeless.PosetAwareMailbox
- All Implemented Interfaces:
 Clearable,IGroupable,Mailbox
public class PosetAwareMailbox
extends AbstractUpdateSplittingMailbox<GroupBasedMessageIndexer,PosetAwareReceiver> 
A monotonicity aware mailbox implementation. The mailbox uses an 
IPosetComparator to identify if a pair of
 REVOKE - INSERT updates represent a monotone change pair. The mailbox is used by PosetAwareReceivers.- Since:
 - 2.0
 
- 
Field Summary
FieldsFields inherited from class tools.refinery.interpreter.rete.network.mailbox.timeless.AbstractUpdateSplittingMailbox
antiMonotoneBuffer, antiMonotoneQueue, container, deliveringAntiMonotone, deliveringMonotone, group, monotoneBuffer, monotoneQueue, receiver - 
Constructor Summary
Constructors - 
Method Summary
Modifier and TypeMethodDescriptionvoiddeliverAll(MessageSelector kind) Delivers all messages according to the given selector from this mailbox.voidpostMessage(Direction direction, Tuple update, Timestamp timestamp) Posts a new message to this mailbox.toString()tryFindCounterPart(Tuple first, boolean findPositiveCounterPart, boolean findAllCounterParts) Methods inherited from class tools.refinery.interpreter.rete.network.mailbox.timeless.AbstractUpdateSplittingMailbox
clear, getActiveAntiMonotoneQueue, getActiveMonotoneQueue, getCurrentGroup, getReceiver, isEmpty, setCurrentGroup, swapAndClearAntiMonotone, swapAndClearMonotone 
- 
Field Details
- 
groupMask
 
 - 
 - 
Constructor Details
- 
PosetAwareMailbox
 
 - 
 - 
Method Details
- 
postMessage
Description copied from interface:MailboxPosts a new message to this mailbox.- Parameters:
 direction- the direction of the updateupdate- the update element
 - 
tryFindCounterPart
 - 
deliverAll
Description copied from interface:MailboxDelivers all messages according to the given selector from this mailbox. The selector can also be null. In this case, no special separation is expected between the messages.- Parameters:
 kind- the message selector
 - 
toString
 
 -