org.objectweb.fractal.julia
Class BasicComponentMixin

java.lang.Object
  extended byorg.objectweb.fractal.julia.BasicComponentMixin
All Implemented Interfaces:
Component, Controller

public abstract class BasicComponentMixin
extends Object
implements Controller, Component

Provides a basic implementation of the Component interface.

Requirements


Field Summary
 Map fcInterfaces
          The interfaces of this component.
 Type fcType
          The type of this component.
 
Method Summary
abstract  void _super_initFcController(InitializationContext i)
          The initFcController method overriden by this mixin.
 Object getFcInterface(String interfaceName)
          Returns an external interface of the component to which this interface belongs.
 Object[] getFcInterfaces()
          Returns the external interfaces of the component to which this interface belongs.
 Type getFcType()
          Returns the type of the component to which this interface belongs.
 void initFcController(InitializationContext ic)
          Initializes the fields of this mixin from the given context, and then calls the overriden method.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

fcType

public Type fcType
The type of this component.


fcInterfaces

public Map fcInterfaces
The interfaces of this component. This map associates each interface to its name.

Method Detail

initFcController

public void initFcController(InitializationContext ic)
                      throws InstantiationException
Initializes the fields of this mixin from the given context, and then calls the overriden method.

Specified by:
initFcController in interface Controller
Parameters:
ic - information about the component to which this controller object belongs.
Throws:
InstantiationException - if the initialization fails.

getFcType

public Type getFcType()
Description copied from interface: Component
Returns the type of the component to which this interface belongs. The type system is not specified here, in order to allow many type systems to be used. The basic type system specified in the org.objectweb.fractal.api.type package should be sufficient in most cases, but another one can be used if necessary.

Specified by:
getFcType in interface Component
Returns:
the type of the component to which this interface belongs.

getFcInterfaces

public Object[] getFcInterfaces()
Description copied from interface: Component
Returns the external interfaces of the component to which this interface belongs.

Specified by:
getFcInterfaces in interface Component
Returns:
the external interfaces of the component to which this interface belongs, including this interface.

getFcInterface

public Object getFcInterface(String interfaceName)
                      throws NoSuchInterfaceException
Description copied from interface: Component
Returns an external interface of the component to which this interface belongs.

Specified by:
getFcInterface in interface Component
Parameters:
interfaceName - the name of the external interface that must be returned.
Returns:
the external interface of the component to which this interface belongs, whose name is equal to the given name.
Throws:
NoSuchInterfaceException - if there is no such interface.

_super_initFcController

public abstract void _super_initFcController(InitializationContext i)
                                      throws InstantiationException
The initFcController method overriden by this mixin.

Throws:
InstantiationException