org.objectweb.dream.protocol.utobcast
Class DATImpl

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

public class DATImpl
extends AbstractComponent
implements Push

Implementation of the DAT component. This component handles DAT messages. Upon message reception, it stores the message into the PendingMessages queue, and then it sends a REP message to pbackup. Finally, it increments the sequence number. Note that this component may trigger a backup election if it detects its failure.


Field Summary
protected  BackupElection backupElectionItf
          The interface to elect a new backup.
protected  MessageManager messageManagerItf
          The interface to manage message lifecycle.
protected  Push outPushItf
          The interface to send REP messages to pbackup.
static String PENDING_MESSAGES_IN_ITF_NAME
          The commonly used name to refer to the pendingMessageInItf interface.
protected  Push pendingMessagesInItf
          The interface to store messages in the PendingMessage queue.
protected  ProcessMembership processMembershipItf
          The interface to retrieve process membership information.
protected  SequenceNumber sequenceNumberItf
          The interface to get/set the sequence number.
 
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
DATImpl()
          Constructor.
 
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

PENDING_MESSAGES_IN_ITF_NAME

public static final String PENDING_MESSAGES_IN_ITF_NAME
The commonly used name to refer to the pendingMessageInItf interface.

See Also:
Constant Field Values

pendingMessagesInItf

protected Push pendingMessagesInItf
The interface to store messages in the PendingMessage queue.


outPushItf

protected Push outPushItf
The interface to send REP messages to pbackup.


processMembershipItf

protected ProcessMembership processMembershipItf
The interface to retrieve process membership information.


sequenceNumberItf

protected SequenceNumber sequenceNumberItf
The interface to get/set the sequence number.


backupElectionItf

protected BackupElection backupElectionItf
The interface to elect a new backup.


messageManagerItf

protected MessageManager messageManagerItf
The interface to manage message lifecycle.

Constructor Detail

DATImpl

public DATImpl()
Constructor.

Method Detail

push

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

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(java.lang.String, java.lang.Object)

listFc

public String[] listFc()
Specified by:
listFc in interface BindingController
See Also:
BindingController.listFc()


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