edu.UCL.satin.arch.components
Class Deployer

java.lang.Object
  extended byedu.UCL.satin.arch.components.Component
      extended byedu.UCL.satin.arch.components.Reflective
          extended byedu.UCL.satin.arch.components.Deployer
All Implemented Interfaces:
ComponentFacet, DeployerFacet, Facet
Direct Known Subclasses:
MiToolkitDeployer

public abstract class Deployer
extends Reflective
implements DeployerFacet

Represents a SATIN deployer

Author:
Stefanos Zachariadis

Field Summary
 
Fields inherited from class edu.UCL.satin.arch.components.Reflective
ACCEPT, FAIL, HANDLER_INSTANTIATION, PARTIAL_ACCEPT, REJECT
 
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
Deployer(java.lang.Object id)
          Creates a new deployer with the given id
 
Method Summary
abstract  short acceptLMU(LMU lmu)
          Allows the Reflective component to inspect a given LMU and receive parts of it
abstract  void asyncSend(LMU lmu)
          Sends asynchronously the given LMU to a remote host.
abstract  boolean send(LMU lmu)
          Sends the given LMU to a remote host.
 
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.DeployerFacet
addUbiquitousClass, addUbiquitousPackage
 
Methods inherited from interface edu.UCL.satin.arch.facets.ComponentFacet
addAttribute, construct, destroy, getAttribute, getProperties, hasAttribute, isEnabled, setEnabled
 

Constructor Detail

Deployer

public Deployer(java.lang.Object id)
Creates a new deployer with the given id

Parameters:
id - The id of the deployer
Method Detail

acceptLMU

public abstract short acceptLMU(LMU lmu)
Description copied from class: Reflective
Allows the Reflective component to inspect a given LMU and receive parts of it

Specified by:
acceptLMU in class Reflective
Parameters:
lmu - received which is targetted at this component
Returns:
true, if this component accepted all or parts of the lmu, false if the lmu was rejected

send

public abstract boolean send(LMU lmu)
Sends the given LMU to a remote host. The host is specified in the TARG attribute.

Specified by:
send in interface DeployerFacet
Parameters:
lmu - The LMU to be sent
Returns:
true if the operation was successful, false otherwise

asyncSend

public abstract void asyncSend(LMU lmu)
Sends asynchronously the given LMU to a remote host. The host is specified in the TARG attribute. Note that no callback mechanism is currently provided for this operation.

Specified by:
asyncSend in interface DeployerFacet
Parameters:
lmu - The lmu to be sent