org.objectweb.dream.protocol.atomicity
Class AtomicReactorImpl

java.lang.Object
  extended byorg.objectweb.dream.AbstractComponent
      extended byorg.objectweb.dream.protocol.atomicity.AtomicReactorImpl
All Implemented Interfaces:
BindingController, LifeCycleController, Loggable, Push

public class AtomicReactorImpl
extends AbstractComponent
implements Push

Transient impelmentation of the Reactor component. This implementation guarantees that notifications emited by the reacting agent are effectuively sent if the reaction doesn't throw an exception.


Field Summary
static String INCOMING_OUT_PUSH_ITF_NAME
          The name of the client interface used to pass message received on the incoming-in-push interface.
static String OUTGOING_OUT_PUSH_ITF_NAME
          The name of the client interface used to send message pulled from the waiting list.
static String WAITING_PULL_ITF_NAME
          The name of the client interface used to retrieve notifications emitted during reaction.
 
Fields inherited from class org.objectweb.dream.AbstractComponent
bindingLogger, componentDesc, fcState, firstStart, lifeCycleLogger, logger, weaveableC
 
Fields inherited from interface org.objectweb.dream.Push
IN_PUSH_ITF_NAME, OUT_PUSH_ITF_NAME
 
Fields inherited from interface org.objectweb.fractal.api.control.LifeCycleController
STARTED, STOPPED
 
Constructor Summary
AtomicReactorImpl()
           
 
Method Summary
 void bindFc(String clientItfName, Object serverItf)
           
 String[] listFc()
           
 void push(Message message, Map context)
           
 
Methods inherited from class org.objectweb.dream.AbstractComponent
beforeFirstStart, getFcState, initComponent, lookupFc, setLogger, startFc, stopFc, unbindFc
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

INCOMING_OUT_PUSH_ITF_NAME

public static final String INCOMING_OUT_PUSH_ITF_NAME
The name of the client interface used to pass message received on the incoming-in-push interface.

See Also:
Constant Field Values

OUTGOING_OUT_PUSH_ITF_NAME

public static final String OUTGOING_OUT_PUSH_ITF_NAME
The name of the client interface used to send message pulled from the waiting list.

See Also:
Constant Field Values

WAITING_PULL_ITF_NAME

public static final String WAITING_PULL_ITF_NAME
The name of the client interface used to retrieve notifications emitted during reaction. This interface MUST be in non blocking mode.

See Also:
PullQueueAttributeController, Constant Field Values
Constructor Detail

AtomicReactorImpl

public AtomicReactorImpl()
Method Detail

push

public void push(Message message,
                 Map context)
          throws PushException
Specified by:
push in interface Push
Throws:
PushException
See Also:
Push.push(Message, Map)

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
Throws:
NoSuchInterfaceException
IllegalBindingException
IllegalLifeCycleException
See Also:
BindingController.bindFc(String, Object)


Copyright © 2003, 2004 - INRIA Rhone-Alpes - All Rights Reserved.