org.objectweb.dream.pump
Class SynchronizedPumpImpl

java.lang.Object
  extended byorg.objectweb.dream.AbstractComponent
      extended byorg.objectweb.dream.pump.SynchronizedPumpImpl
All Implemented Interfaces:
AttributeController, BindingController, LifeCycleController, Loggable, PumpAttributeController
Direct Known Subclasses:
SynchronizedPeriodicPumpImpl

public class SynchronizedPumpImpl
extends AbstractComponent
implements PumpAttributeController

Synchronized implementation of a Pull/Push pump. This component has an optional Mutexclient interface that it uses to synchronize the execution of its run method with other components.


Field Summary
protected  Pull inPullItf
          The server interface to which this component is bound.
protected  Mutex mutexItf
          The server interface to which this component is bound.
protected  Push outPushItf
          The server interface to which this component is bound.
protected  Task pumpTask
           
protected  boolean pushNullPolicy
           
 
Fields inherited from class org.objectweb.dream.AbstractComponent
bindingLogger, componentDesc, fcState, lifeCycleLogger, logger, weaveableC
 
Fields inherited from interface org.objectweb.fractal.api.control.LifeCycleController
STARTED, STOPPED
 
Constructor Summary
SynchronizedPumpImpl()
           
 
Method Summary
 void bindFc(String clientItfName, Object serverItf)
           
 boolean getPushNullPolicy()
          Returns the PushNullPolicy.
protected  void initComponent(Component componentItf)
           
 String[] listFc()
           
 void setPushNullPolicy(boolean pushNull)
          Sets the PushNullPolicy.
 
Methods inherited from class org.objectweb.dream.AbstractComponent
getFcState, 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

outPushItf

protected Push outPushItf
The server interface to which this component is bound.


inPullItf

protected Pull inPullItf
The server interface to which this component is bound.


mutexItf

protected Mutex mutexItf
The server interface to which this component is bound.


pumpTask

protected Task pumpTask

pushNullPolicy

protected boolean pushNullPolicy
Constructor Detail

SynchronizedPumpImpl

public SynchronizedPumpImpl()
Method Detail

initComponent

protected void initComponent(Component componentItf)
                      throws InitializationException
Throws:
InitializationException

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)

getPushNullPolicy

public boolean getPushNullPolicy()
Description copied from interface: PumpAttributeController
Returns the PushNullPolicy.

Specified by:
getPushNullPolicy in interface PumpAttributeController
Returns:
the PushNullPolicy.
See Also:
PumpAttributeController.getPushNullPolicy()

setPushNullPolicy

public void setPushNullPolicy(boolean pushNull)
Description copied from interface: PumpAttributeController
Sets the PushNullPolicy.

Specified by:
setPushNullPolicy in interface PumpAttributeController
Parameters:
pushNull - the PushNullPolicy.
See Also:
PumpAttributeController.setPushNullPolicy(boolean)


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