edu.UCL.satin.arch.components.container
Class Registrar

java.lang.Object
  extended byedu.UCL.satin.arch.components.Component
      extended byedu.UCL.satin.arch.components.container.Registrar
All Implemented Interfaces:
ComponentFacet, Facet, RegistrarFacet
Direct Known Subclasses:
CoreRegistrar

public abstract class Registrar
extends Component
implements RegistrarFacet

Represents a registration technique of the container

Author:
Stefanos Zachariadis

Field Summary
 
Fields inherited from class edu.UCL.satin.arch.components.Component
immutable, properties
 
Fields inherited from interface edu.UCL.satin.arch.facets.ComponentFacet
DISABLED, ENABLED
 
Constructor Summary
Registrar(java.lang.Object id)
           
 
Method Summary
abstract  boolean registerComponent(Component c)
          Adds a new component to the container.
abstract  java.lang.String removeComponent(Component c)
          Removes a component from the container
 
Methods inherited from class edu.UCL.satin.arch.components.Component
addAttribute, construct, destroy, getAttribute, getProperties, hasAttribute, isEnabled, match, setEnabled, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface edu.UCL.satin.arch.facets.ComponentFacet
addAttribute, construct, destroy, getAttribute, getProperties, hasAttribute, isEnabled, setEnabled
 

Constructor Detail

Registrar

public Registrar(java.lang.Object id)
Parameters:
id - the Registrar Component's Identifier
Method Detail

registerComponent

public abstract boolean registerComponent(Component c)
Adds a new component to the container.

Specified by:
registerComponent in interface RegistrarFacet
Parameters:
c - The component to add
Returns:
true if the operation was successful or false otherwise (component with the same id and version number exist/failure/etc.)

removeComponent

public abstract java.lang.String removeComponent(Component c)
Removes a component from the container

Specified by:
removeComponent in interface RegistrarFacet
Parameters:
c - The component to remove
Returns:
null if the operation was successful or the ID of the component that depends on c