SmartFrog 3.10.000

org.smartfrog.sfcore.workflow.eventbus
Class EventPrimImpl

java.lang.Object
  extended by org.smartfrog.sfcore.reference.RemoteReferenceResolverHelperImpl
      extended by org.smartfrog.sfcore.prim.PrimImpl
          extended by org.smartfrog.sfcore.workflow.eventbus.EventPrimImpl
All Implemented Interfaces:
java.rmi.Remote, MessageKeys, Diagnostics, Liveness, Prim, RemoteReferenceResolver, RemoteReferenceResolverHelper, EventBus, EventRegistration, EventSink
Direct Known Subclasses:
Attribute, DoNothing, EventCounter, EventQueue, EventSend, FileTesterImpl, GameArenaWrapper, Terminator

public class EventPrimImpl
extends PrimImpl
implements EventRegistration, EventSink, EventBus, Prim

An extension of Prim providing the Primitive SmartFrog Component with the required event handling.


Field Summary
 
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
EventPrimImpl()
          Constructs EventPrimImpl.
 
Method Summary
 void deregister(EventSink sink)
          Deregisters an EventSink for forwarding of events.
 void event(java.lang.Object event)
          Handles the event locally then forwards to all registered EventSinks.
protected  void handleEvent(java.lang.Object event)
          Default implmentation of the event Handler hook to be overridden in sub-classes.
 void register(EventSink sink)
          Registers an EventSink for forwarding of events.
 void sendEvent(java.lang.Object event)
          Default implementation of the EventBus sendEvent method to forward all events to registered EventSinks.
 void sfDeploy()
          Registers components referenced in the SendTo sub-component registers itself with components referenced in the RegisterWith sub-component.
 void sfTerminateWith(TerminationRecord status)
          Deregisters from all current registrations.
 
Methods inherited from class org.smartfrog.sfcore.prim.PrimImpl
equals, hashCode, registerWithProcessCompound, sfAddAttribute, sfAttributeKeyFor, sfAttributes, sfCompleteName, sfCompleteNameSafe, sfContainsAttribute, sfContainsValue, sfContext, sfDeployedHost, sfDeployedProcessName, sfDeployWith, sfDetach, sfDetachAndTerminate, sfDiagnosticsReport, sfDumpState, sfExport, sfExportRef, sfExportRef, sfGetApplicationLog, sfGetCoreLog, sfGetLog, sfIsDeployed, sfIsRemote, sfIsStarted, sfIsTerminated, sfIsTerminating, sfLivenessFailure, sfLog, sfParent, sfParentageChanged, sfPing, sfRemoveAttribute, sfReplaceAttribute, sfResolve, sfResolve, sfResolveHere, sfResolveHere, sfResolveParent, sfSetLog, sfStart, sfStartLivenessSender, sfStopLivenessSender, sfTerminate, sfTerminatedWith, 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.prim.Prim
sfAddAttribute, sfAttributeKeyFor, sfAttributes, sfCompleteName, sfContainsAttribute, sfContainsValue, sfContext, sfDeployedHost, sfDeployedProcessName, sfDeployWith, sfDetach, sfDetachAndTerminate, sfDumpState, sfIsDeployed, sfIsStarted, sfIsTerminated, sfIsTerminating, sfParent, sfParentageChanged, sfRemoveAttribute, sfReplaceAttribute, sfStart, sfTerminate, sfTerminatedWith, 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
 

Constructor Detail

EventPrimImpl

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

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

register

public void register(EventSink sink)
Registers an EventSink for forwarding of events.

Specified by:
register in interface EventRegistration
Parameters:
sink - org.smartfrog.sfcore.workflow.eventbus.EventSink
See Also:
EventRegistration

deregister

public void deregister(EventSink sink)
Deregisters an EventSink for forwarding of events.

Specified by:
deregister in interface EventRegistration
Parameters:
sink - org.smartfrog.sfcore.workflow.eventbus.EventSink
See Also:
EventRegistration

event

public void event(java.lang.Object event)
Handles the event locally then forwards to all registered EventSinks.

Specified by:
event in interface EventSink
Parameters:
event - java.lang.Object

handleEvent

protected void handleEvent(java.lang.Object event)
Default implmentation of the event Handler hook to be overridden in sub-classes. The default implementation does nothing.

Parameters:
event - java.lang.Object The event

sendEvent

public void sendEvent(java.lang.Object event)
Default implementation of the EventBus sendEvent method to forward all events to registered EventSinks. Errors are ignored.

Specified by:
sendEvent in interface EventBus
Parameters:
event - java.lang.Object
See Also:
EventRegistration, EventSink

sfDeploy

public void sfDeploy()
              throws SmartFrogException,
                     java.rmi.RemoteException
Registers components referenced in the SendTo sub-component registers itself with components referenced in the RegisterWith sub-component. Overrides PrimImpl.sfDeploy.

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

sfTerminateWith

public void sfTerminateWith(TerminationRecord status)
Deregisters from all current registrations.

Overrides:
sfTerminateWith in class PrimImpl
Parameters:
status - Record having termination details of the component

SmartFrog CORE 3.10.000

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