org.objectweb.fractal.aokell.lib.util
Class MembraneHelper

java.lang.Object
  extended by org.objectweb.fractal.aokell.lib.util.MembraneHelper

public class MembraneHelper
extends Object

This class contains helper methods with an implementation which differs depending on the choosen version of the membrane feature.

Author:
Lionel Seinturier

Constructor Summary
MembraneHelper()
           
 
Method Summary
static MembraneDef duplicateMembraneDef(Object srcControllerDesc, Object newControllerDesc, Class newType)
          Duplicate an existing membrane definition.
static BindingController getFcBindingCtrl(Component comp)
          Return the binding controller reference associated to the given component.
static ComponentItf getFcCompCtrl(Component comp)
          Return the component controller reference associated to the given component.
static Component getFcCompCtrlImpl(Component comp)
          Return the component controller implementation associated to the given component.
static Object getFcContent(Component comp)
          Return the content associated to the given component.
static ContentControllerItf getFcContentCtrl(Component comp)
          Return the content controller reference associated to the given component.
static Object[] getFcControllerImpls(Component comp)
          Return the controller implementations associated to the given component.
static LifeCycleController getFcLifeCycleCtrl(Component comp)
          Return the lifecycle controller reference associated to the given component.
static org.objectweb.fractal.julia.control.content.SuperControllerNotifier getFcSuperCtrl(Component comp)
          Return the super controller reference associated to the given component.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MembraneHelper

public MembraneHelper()
Method Detail

getFcCompCtrlImpl

public static Component getFcCompCtrlImpl(Component comp)
Return the component controller implementation associated to the given component. This method returns the given parameter with object-oriented membranes.


getFcControllerImpls

public static Object[] getFcControllerImpls(Component comp)
Return the controller implementations associated to the given component.


getFcCompCtrl

public static ComponentItf getFcCompCtrl(Component comp)
Return the component controller reference associated to the given component. This method returns the given parameter with object-oriented membranes.


getFcBindingCtrl

public static BindingController getFcBindingCtrl(Component comp)
Return the binding controller reference associated to the given component.


getFcContentCtrl

public static ContentControllerItf getFcContentCtrl(Component comp)
Return the content controller reference associated to the given component.


getFcLifeCycleCtrl

public static LifeCycleController getFcLifeCycleCtrl(Component comp)
Return the lifecycle controller reference associated to the given component.


getFcSuperCtrl

public static org.objectweb.fractal.julia.control.content.SuperControllerNotifier getFcSuperCtrl(Component comp)
Return the super controller reference associated to the given component.


getFcContent

public static Object getFcContent(Component comp)
Return the content associated to the given component.


duplicateMembraneDef

public static MembraneDef duplicateMembraneDef(Object srcControllerDesc,
                                               Object newControllerDesc,
                                               Class newType)
Duplicate an existing membrane definition. The purpose of this method is to facilitate the creation of new membrane definitions based on existing ones. The duplicated membrane definition is registered with the membrane repository.

Parameters:
srcControllerDesc - the membrane to duplicate
newControllerDesc - the controller description of the new membrane
newType - the type of the new membrane
Returns:
the defintion of the new membrane
Throws:
IllegalArgumentException - if the source membrane does not exists