org.objectweb.dream.queue
Class IncomingHandlerRemovingImpl
java.lang.Object
org.objectweb.dream.AbstractComponent
org.objectweb.dream.queue.IncomingHandlerRemovingImpl
- All Implemented Interfaces:
- ContextualBindingController, NeedAsyncStartController, PrepareStopLifeCycleController, Loggable, Push, BindingController, LifeCycleController
public class IncomingHandlerRemovingImpl
- extends AbstractComponent
- implements Push
An incoming handler that adds pushed
messages into a
buffer
bound to it. For each pushed message, this component
uses BufferAdd.tryAdd(Message)
non blocking calls for trying to add
the pushed message into the buffer:
- If the pushed message has been successfully added, everything is ok.
- If the pushed message cannot be added, an attempt is made to
remove
a message from the buffer.
- If this succeeds, the removed message is deleted, and another attempt is
made to
add
the pushed message into the
buffer.
- If this last attempt succeeds, everything is ok.
- If this does not succeed, an
exception
is thrown.
- If this does not succeed, an
exception
is thrown.
Methods inherited from class org.objectweb.dream.AbstractComponent |
beforeFirstStart, bindFc, getFcNeedAsyncStart, getFcState, initComponent, lookupFc, prepareStopFc, setLogger, startFc, stopFc, unbindFc |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
CLIENT_INTERFACE_NAMES
protected static final String[] CLIENT_INTERFACE_NAMES
- The names of client interfaces.
messageManager
protected MessageManager messageManager
- Used to delete dropped messages.
bufferAdd
protected BufferAdd bufferAdd
- The buffer into which pushed messages are added.
bufferRemove
protected BufferRemove bufferRemove
- The buffer from which message may be removed.
IncomingHandlerRemovingImpl
public IncomingHandlerRemovingImpl()
push
public void push(Message message)
throws PushException
- Specified by:
push
in interface Push
- Throws:
PushException
- See Also:
Push.push(Message)
listFc
public String[] listFc()
- Specified by:
listFc
in interface BindingController
- See Also:
BindingController.listFc()
bindFc
public void bindFc(String clientItfName,
Object serverItf)
throws NoSuchInterfaceException,
IllegalBindingException,
IllegalLifeCycleException
- Specified by:
bindFc
in interface BindingController
- Overrides:
bindFc
in class AbstractComponent
- Throws:
NoSuchInterfaceException
IllegalBindingException
IllegalLifeCycleException
- See Also:
BindingController.bindFc(String,
Object)
Copyright © 2003, 2005 - INRIA Rhone-Alpes - All Rights Reserved.