com.vii.brillien.kernel.axiom.atomic
Interface Commander<P extends PresenceManager,C extends Communication,R>

All Superinterfaces:
Aspirer<C,R>, Callable<R>, Context<P,C,R>, Flow<P,C,R>, Presence<C,R>, Progressor, Sensor<C>, Unit<P,C,R>

public interface Commander<P extends PresenceManager,C extends Communication,R>
extends Flow<P,C,R>

Commander is a central management object in Brillien. Features: - maintain and manage all Presence instance in the running system - common interface for all Presence object to able to collect information about other Presence objects - registration-based Presence management The Commander object is a Unit, so Brillien is a Commander object graph and every Commander object may contain any Presence object, a Commander as well in fact. However, this would signify a very-very complex system. In most cases, a single Liaison is sufficient for all purposes.


Field Summary
 
Fields inherited from interface com.vii.brillien.kernel.axiom.atomic.Presence
CONSONANT, RESIDENT, SPARKLE
 
Method Summary
 P getPresenceManagerOf(String name)
          Get the Presence Manager of a Presence type by its name
 Collection<P> getPresenceManagers()
           
 Collection<String> getPresenceNames()
           
 boolean hasPresence(String name)
          Tells whether a Presence with the given name exists
<T extends Presence>
String
registerPresence(Class<T> Presence)
          Registers a Presence.
<T extends Presence>
String
registerPresence(Class<T> Presence, String cloneName)
          Makes a presence "clone".
 String registerPresence(String originalName, String cloneName)
          Makes a presence "clone".
 void setApyKeyPresenceName(String PresenceName)
          Sets the name of the Presence providing SSO functionality
 void setSSOPresenceName(String PresenceName)
          Sets the name of the Presence providing SSO functionality
 void unregisterPresence(String PresenceName)
          Unregisters a Presence by its name.
 
Methods inherited from interface com.vii.brillien.kernel.axiom.atomic.Flow
activate, getActivationData, getFlowID, getFlowResult, getStateSpace, isIndispensable, isSuspended, oppress, report, report, revivified, setFlowID, setFlowResult, setIndispensable, setStateSpace, suspend, terminate
 
Methods inherited from interface com.vii.brillien.kernel.axiom.atomic.Context
addExceptionLeveling, clearExceptionLeveling, getSharing, getShifter, hasSharing, levelException, registerSharing, removeExceptionLeveling, removeSharing
 
Methods inherited from interface com.vii.brillien.kernel.axiom.atomic.Unit
activateUnitAll, activateUnitCallable, activateUnitMessaging, addPresences, addSubUnits, classify, clearPresences, clearSubUnits, communicationUnitReceived, complement, getCharacteristicFunction, getPresences, getSubUnits, hasUnitActivity, intersect, isSubSet, isUnitInExitState, isUnitInValidStates, isUnitWaitingForResponse, order, passivateUnitAll, passivateUnitCallable, passivateUnitMessaging, printUnitErrorStates, removePresences, removeSubUnits, retrieveUnit, scrutinise, setCharacteristicFunction, subset, symmetricDifference, union
 
Methods inherited from interface com.vii.brillien.kernel.axiom.atomic.Presence
activateAll, addSuperUnits, clearSuperUnits, getApiKeyPresenceName, getFlow, getPresenceManager, getSharing, getSSOPresenceName, getSuperUnits, passivateAll, printErrorStates, removeSuperUnits, retrieve, setFlow, setPresenceManager
 
Methods inherited from interface com.vii.brillien.kernel.axiom.Presence
aspirationTimeIsUp, getAspirationTimeMeasure, getFullName, getMessageProcessorParameterNames, getMessageProcessorParameterTypes, getName, hasMessageProcessorReturnValue, isAspirationPeriodical, reset, setAspirationPeriodical, setAspirationTimeMeasure, setName
 
Methods inherited from interface com.vii.brillien.kernel.axiom.Aspirer
activateCallable, getResult, hasActivity, isWaitingForInputData, isWaitingForResponse, passivateCallable, plan, sendAGet, sendDelegatedSet, sendError, sendError, sendError, sendGet, sendGet, sendResponse, sendSet, sendUnitAGet, sendUnitDelegatedSet, sendUnitGet, sendUnitGet, sendUnitSet
 
Methods inherited from interface java.util.concurrent.Callable
call
 
Methods inherited from interface com.vii.brillien.kernel.axiom.Sensor
activateMessaging, communicationReceived, errorReceived, passivateMessaging, presenseChangedState
 
Methods inherited from interface com.vii.brillien.kernel.axiom.Progressor
addState, changeState, getActualStates, getPotentialStates, getStateDivision, hasStateMachine, initStateMashine, isInExitState, isInState, isInValidStates, panic, registerStateChangeNotification, removeState, setStateDivision, unregisterStateChangeNotification
 

Method Detail

registerPresence

<T extends Presence> String registerPresence(Class<T> Presence)
                        throws BrillienException
Registers a Presence. It is performed after loading a component from the deployment directory.

Type Parameters:
T - generic type representing the Presence origin
Parameters:
Presence - class reference for the Presence type
Returns:
name of the Presence component
Throws:
BrillienException

registerPresence

<T extends Presence> String registerPresence(Class<T> Presence,
                                             String cloneName)
                        throws BrillienException
Makes a presence "clone". An already registered presence will be registered with a new name, thus reusing entity. Name must be unique.

Type Parameters:
T - generic type representing the Presence origin
Parameters:
Presence - class reference for the Presence type
cloneName - name of the clone
Returns:
name of the Presence component
Throws:
BrillienException

registerPresence

String registerPresence(String originalName,
                        String cloneName)
                        throws BrillienException
Makes a presence "clone". An already registered presence will be registered with a new name, thus reusing entity. The Presence type will be identified by its publishing name. Name must be unique.

Parameters:
originalName - name of the original Presence
cloneName - name of the clone
Returns:
name of the Presence component
Throws:
BrillienException

unregisterPresence

void unregisterPresence(String PresenceName)
                        throws BrillienException
Unregisters a Presence by its name.

Parameters:
PresenceName - presence to be unregistered
Throws:
BrillienException

getPresenceNames

Collection<String> getPresenceNames()
Returns:
the list of published components

hasPresence

boolean hasPresence(String name)
Tells whether a Presence with the given name exists

Parameters:
name - name of the presence

getPresenceManagers

Collection<P> getPresenceManagers()
Returns:
list of managers of published components

getPresenceManagerOf

P getPresenceManagerOf(String name)
Get the Presence Manager of a Presence type by its name

Parameters:
name - name of the Presence type
Returns:
Presence Manager of the given Presence type

setSSOPresenceName

void setSSOPresenceName(String PresenceName)
Sets the name of the Presence providing SSO functionality


setApyKeyPresenceName

void setApyKeyPresenceName(String PresenceName)
Sets the name of the Presence providing SSO functionality



Copyright © 2012. All Rights Reserved.