SmartFrog 3.10.000

org.smartfrog.sfcore.workflow.combinators
Class Timeout

java.lang.Object
  extended by org.smartfrog.sfcore.reference.RemoteReferenceResolverHelperImpl
      extended by org.smartfrog.sfcore.prim.PrimImpl
          extended by org.smartfrog.sfcore.compound.CompoundImpl
              extended by org.smartfrog.sfcore.workflow.eventbus.EventCompoundImpl
                  extended by org.smartfrog.sfcore.workflow.combinators.Timeout
All Implemented Interfaces:
java.rmi.Remote, MessageKeys, Compound, ChildMinder, Diagnostics, Liveness, Prim, RemoteReferenceResolver, RemoteReferenceResolverHelper, EventBus, EventRegistration, EventSink

public class Timeout
extends EventCompoundImpl
implements Compound

Timeout is a modified compound which differs in that the single sub-component is given a certain amount of time to terminate and if it has not, the timeout combinator terminates it and itself abnormally. The sub-component may, of course, be a further combinator such as a Sequence. The timeout combinator creates its sub-componentent during the sfStart phase The Timeout combinator waits for its sub-components to terminate normally at which point it too terminates normally. If an error occurs at any point, or a sub-component terminates abnormally, or the timeout fires before its sub-component terminates, the Timeout combinator terminates abnormally.

The file timeout.sf contains the SmartFrog configuration file for the base Timeout combinator. This file conatins the details of the attributes which may be passed to Timeout.


Field Summary
 
Fields inherited from class org.smartfrog.sfcore.workflow.eventbus.EventCompoundImpl
action, actionKeys, actions, name
 
Fields inherited from class org.smartfrog.sfcore.compound.CompoundImpl
childCap, childInc, lifecycleChildren, sfChildren, sfSyncTerminate
 
Fields inherited from class org.smartfrog.sfcore.prim.PrimImpl
refLivenessDelay, refLivenessFactor, sfCompleteName, sfContext, sfDeployHooks, sfDeployWithHooks, sfExportRef, sfIsDeployed, sfIsStarted, sfIsTerminated, sfIsTerminating, sfLivenessCount, sfLivenessDelay, sfLivenessFactor, sfLivenessSender, sfParent, sfStartHooks, sfTerminateWithHooks, termLock
 
Fields inherited from interface org.smartfrog.sfcore.common.MessageKeys
CANNOT_LINK_TO_PREDICATE, COMPONENT_TERMINATED, COPY_FAILED, COPY_SERIALIZE_FAILED, ERROR_NO_SECURITY_BUT_REQUIRED, ILLEGAL_BOOLEAN_PARAMETER, ILLEGAL_NUMERIC_PARAMETER, ILLEGAL_STRING_PARAMETER, ILLEGAL_VECTOR_PARAMETER, LIVENESS_SEND_FAILURE, LIVENESS_SEND_FAILURE_IN, MISSING_PARAMETER, MSG_CLASS_NOT_FOUND, MSG_CONNECT_ERR, MSG_CONT_OTHER_DEPLOY, MSG_DEPLOY_COMP_TERMINATED, MSG_DEPLOY_SUCCESS, MSG_DEPLOYWITH_PHASE_FAILED, MSG_DETACH_SUCCESS, MSG_DETACH_TERMINATE_SUCCESS, MSG_ERR_DEPLOY_FROM_URL, MSG_ERR_PARSE, MSG_ERR_RESOLVE_PHASE, MSG_ERR_SF_RUNNING, MSG_ERR_TERM, MSG_FAILED_INET_ADDRESS_LOOKUP, MSG_FAILED_TO_CONTACT_PARENT, MSG_FILE_NOT_FOUND, MSG_HOOK_ACTION_FAILED, MSG_ILLEGAL_ACCESS, MSG_ILLEGAL_CLASS_TYPE, MSG_ILLEGAL_CLASS_TYPE_EXPECTING_GOT, MSG_ILLEGAL_REFERENCE, MSG_INPUTSTREAM_NULL, MSG_INSTANTIATION_ERROR, MSG_INVALID_OBJECT_TYPE, MSG_INVOCATION_TARGET, MSG_LANG_NOT_FOUND, MSG_LIVENESS_START_FAILED, MSG_LOADING_URL, MSG_METHOD_NOT_FOUND, MSG_NON_REP_ATTRIB, MSG_NOT_COMPONENT_REFERENCE, MSG_NOT_FOUND_ATTRIBUTE, MSG_NOT_FOUND_REFERENCE, MSG_NOT_VALUE_REFERENCE, MSG_NULL_DEF_METHOD, MSG_NULL_URL, MSG_OBJECT_REGISTRATION_FAILED, MSG_PARENT_LOCATION_FAILED, MSG_PING_SUCCESS, MSG_RANDM_ERR, MSG_REMOTE_CONNECT_ERR, MSG_REPEATED_ATTRIBUTE, MSG_SF_DEAD, MSG_SF_READY, MSG_SF_TERMINATED, MSG_STACKTRACE_FOLLOWS, MSG_START_COMP_TERMINATED, MSG_TERMINATE_SUCCESS, MSG_UNHANDLED_EXCEPTION, MSG_UNKNOWN_HOST, MSG_UNRESOLVED_REFERENCE, MSG_UNRESOLVED_REFERENCE_IN, MSG_UPDATE_SUCCESS, MSG_URL_NOT_FOUND, MSG_URL_TO_PARSE_NOT_FOUND, MSG_WARNING_LIVENESS_ENABLED, MSG_WARNING_STACKTRACE_DISABLED, MSG_WARNING_STACKTRACE_ENABLED, ROOT_MUST_BE_COMPONENT, WARN_NO_SECURITY
 
Constructor Summary
Timeout()
          Constructs Timeout.
 
Method Summary
 void sfDeploy()
          Deploys the component and reads configuration attributes.
 void sfStart()
          Deploys and manages the component and starts the timer.
 void sfTerminatedWith(TerminationRecord status, Prim comp)
          Terminates the component.
 
Methods inherited from class org.smartfrog.sfcore.workflow.eventbus.EventCompoundImpl
deregister, event, handleEvent, register, sendEvent, sfDeployWithChildren, sfTerminateWith
 
Methods inherited from class org.smartfrog.sfcore.compound.CompoundImpl
sfAddChild, sfASyncTerminateWith, sfChildren, sfContainsChild, sfCreateNewApp, sfCreateNewChild, sfCreateNewChild, sfDeployChildren, sfDeployComponentDescription, sfDeployWith, sfDumpState, sfParentageChanged, sfPing, sfPingChild, sfRemoveAttribute, sfRemoveChild, sfStartChildren, sfSyncTerminateWith
 
Methods inherited from class org.smartfrog.sfcore.prim.PrimImpl
equals, hashCode, registerWithProcessCompound, sfAddAttribute, sfAttributeKeyFor, sfAttributes, sfCompleteName, sfCompleteNameSafe, sfContainsAttribute, sfContainsValue, sfContext, sfDeployedHost, sfDeployedProcessName, sfDetach, sfDetachAndTerminate, sfDiagnosticsReport, sfExport, sfExportRef, sfExportRef, sfGetApplicationLog, sfGetCoreLog, sfGetLog, sfIsDeployed, sfIsRemote, sfIsStarted, sfIsTerminated, sfIsTerminating, sfLivenessFailure, sfLog, sfParent, sfReplaceAttribute, sfResolve, sfResolve, sfResolveHere, sfResolveHere, sfResolveParent, sfSetLog, sfStartLivenessSender, sfStopLivenessSender, sfTerminate, sfTerminateQuietlyWith, sfValues, terminateComponent, terminateNotifying, toString
 
Methods inherited from class org.smartfrog.sfcore.reference.RemoteReferenceResolverHelperImpl
sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolveWithParser
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.smartfrog.sfcore.compound.Compound
sfCreateNewApp, sfCreateNewChild, sfCreateNewChild, sfDeployComponentDescription
 
Methods inherited from interface org.smartfrog.sfcore.prim.Prim
sfAddAttribute, sfAttributeKeyFor, sfAttributes, sfCompleteName, sfContainsAttribute, sfContainsValue, sfContext, sfDeployedHost, sfDeployedProcessName, sfDeployWith, sfDetach, sfDetachAndTerminate, sfDumpState, sfIsDeployed, sfIsStarted, sfIsTerminated, sfIsTerminating, sfParent, sfParentageChanged, sfRemoveAttribute, sfReplaceAttribute, sfTerminate, sfTerminateQuietlyWith, sfValues
 
Methods inherited from interface org.smartfrog.sfcore.prim.Liveness
sfPing
 
Methods inherited from interface org.smartfrog.sfcore.reference.RemoteReferenceResolver
sfResolve, sfResolve, sfResolveHere, sfResolveHere, sfResolveParent
 
Methods inherited from interface org.smartfrog.sfcore.reference.RemoteReferenceResolverHelper
sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolve, sfResolveWithParser
 
Methods inherited from interface org.smartfrog.sfcore.prim.Diagnostics
sfDiagnosticsReport
 
Methods inherited from interface org.smartfrog.sfcore.prim.ChildMinder
sfAddChild, sfChildren, sfContainsChild, sfRemoveChild
 

Constructor Detail

Timeout

public Timeout()
        throws java.rmi.RemoteException
Constructs Timeout.

Throws:
java.rmi.RemoteException - In case of RMI or network failure.
Method Detail

sfDeploy

public void sfDeploy()
              throws SmartFrogException,
                     java.rmi.RemoteException
Deploys the component and reads configuration attributes.

Specified by:
sfDeploy in interface Prim
Overrides:
sfDeploy in class EventCompoundImpl
Throws:
java.rmi.RemoteException - In case of network/rmi error
SmartFrogException - In case of any error while deploying the component

sfStart

public void sfStart()
             throws SmartFrogException,
                    java.rmi.RemoteException
Deploys and manages the component and starts the timer.

Specified by:
sfStart in interface Prim
Overrides:
sfStart in class CompoundImpl
Throws:
java.rmi.RemoteException - In case of network/rmi error
SmartFrogException - In case of any error while starting the component

sfTerminatedWith

public void sfTerminatedWith(TerminationRecord status,
                             Prim comp)
Terminates the component. It is invoked by sub-components on termination. If normal termiantion, Timeout behaviour is to terminate normally, otherwise abnormally.

Specified by:
sfTerminatedWith in interface Prim
Overrides:
sfTerminatedWith in class CompoundImpl
Parameters:
status - termination status of sender
comp - sender of termination

SmartFrog CORE 3.10.000

(C) Copyright 1998-2006 Hewlett-Packard Development Company, LP