SmartFrog 3.10.000

org.smartfrog.examples.dynamicwebserver.thresholder
Class ThresholderImpl

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.examples.dynamicwebserver.thresholder.ThresholderImpl
All Implemented Interfaces:
java.rmi.Remote, Thresholder, MessageKeys, SmartFrogCoreKeys, Compound, ChildMinder, Diagnostics, Liveness, Prim, RemoteReferenceResolver, RemoteReferenceResolverHelper

public class ThresholderImpl
extends CompoundImpl
implements Thresholder, Compound, SmartFrogCoreKeys

Description: Thresholder component.


Nested Class Summary
protected  class ThresholderImpl.Poller
           
 
Field Summary
protected  int maxNumber
           
protected  java.util.Vector servers
           
 
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.examples.dynamicwebserver.thresholder.Thresholder
BALANCER, DATASOURCE, DATASOURCENAME, ISAUTO, LOGTO, LOWERTHRESHOLD, MININSTANCES, POLLFREQUENCY, REPEATMEASURES, SERVERS, STABILIZATIONMEASURES, TEMPLATE, UPPERTHRESHOLD
 
Fields inherited from interface org.smartfrog.sfcore.common.SmartFrogCoreKeys
SF_APP_LOG_NAME, SF_BOOT_DATE, SF_CLASS, SF_CODE_BASE, SF_CONFIG, SF_CORE_LOG, SF_DEPLOY_FAILURE, SF_DEPLOYER_CLASS, SF_DIAGNOSTICS_REPORT, SF_EXPORT, SF_EXPORT_PORT, SF_HOST, SF_LIVENESS_DELAY, SF_LIVENESS_FACTOR, SF_PROCESS, SF_PROCESS_ALLOW, SF_PROCESS_CLASS, SF_PROCESS_CLASSPATH, SF_PROCESS_COMPONENT_NAME, SF_PROCESS_CONFIG, SF_PROCESS_ENV_VARS, SF_PROCESS_HOST, SF_PROCESS_JAVA, SF_PROCESS_NAME, SF_PROCESS_REPLACE_CLASSPATH, SF_PROCESS_REPLACE_SF_CODEBASE, SF_PROCESS_SF_CODEBASE, SF_PROCESS_TIMEOUT, SF_ROOT, SF_ROOT_LOCATOR_CLASS, SF_ROOT_LOCATOR_PORT, SF_ROOT_PROCESS, SF_RUN_PROCESS, SF_SCHEMA_DESCRIPTION, SF_START_FAILURE, SF_SUBPROCESS_GC_TIMEOUT, SF_SYNC_TERMINATE, SF_UNNAMED, SF_VERSION
 
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
ThresholderImpl()
           
 
Method Summary
 int lowerThreshold()
           
protected  boolean minInstancesChanged()
           
 void setAuto(boolean b)
           
 void setLowerThreshold(int t)
           
 void setMinInstances(int i)
           
protected  void setTargetInstances(int target)
           
 void setUpperThreshold(int t)
           
 void sfDeploy()
          Deploy the compound.
 void sfStart()
          Starts the compound.
 void sfTerminateWith(TerminationRecord t)
          Performs the compound termination behaviour.
protected  void startInstance()
           
protected  void startThresholdPolling()
           
protected  void stopInstance()
           
protected  void stopThresholdPolling()
           
 int upperThreshold()
           
 
Methods inherited from class org.smartfrog.sfcore.compound.CompoundImpl
sfAddChild, sfASyncTerminateWith, sfChildren, sfContainsChild, sfCreateNewApp, sfCreateNewChild, sfCreateNewChild, sfDeployChildren, sfDeployComponentDescription, sfDeployWith, sfDeployWithChildren, sfDumpState, sfParentageChanged, sfPing, sfPingChild, sfRemoveAttribute, sfRemoveChild, sfStartChildren, sfSyncTerminateWith, sfTerminatedWith
 
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, 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
 
Methods inherited from interface org.smartfrog.sfcore.prim.ChildMinder
sfAddChild, sfChildren, sfContainsChild, sfRemoveChild
 

Field Detail

servers

protected java.util.Vector servers

maxNumber

protected int maxNumber
Constructor Detail

ThresholderImpl

public ThresholderImpl()
                throws java.rmi.RemoteException
Throws:
java.rmi.RemoteException
Method Detail

sfDeploy

public void sfDeploy()
              throws SmartFrogException,
                     java.rmi.RemoteException
Description copied from class: CompoundImpl
Deploy the compound. Deployment is defined as iterating over the context and deploying any parsed eager components.

Specified by:
sfDeploy in interface Prim
Overrides:
sfDeploy in class CompoundImpl
Throws:
SmartFrogException - failure deploying compound or sub-component
java.rmi.RemoteException - In case of Remote/nework error

sfStart

public void sfStart()
             throws SmartFrogException,
                    java.rmi.RemoteException
Description copied from class: CompoundImpl
Starts the compound. This sends a synchronous sfStart to all managed components in the compound context. Any failure will cause the compound to terminate

Specified by:
sfStart in interface Prim
Overrides:
sfStart in class CompoundImpl
Throws:
SmartFrogException - failed to start compound
java.rmi.RemoteException - In case of Remote/nework error

sfTerminateWith

public void sfTerminateWith(TerminationRecord t)
Description copied from class: CompoundImpl
Performs the compound termination behaviour. Based on sfSyncTerminate flag this gets forwarded to sfSyncTerminate or sfASyncTerminateWith method. Terminates children before self.

Overrides:
sfTerminateWith in class CompoundImpl
Parameters:
t - termination status

setUpperThreshold

public void setUpperThreshold(int t)
Specified by:
setUpperThreshold in interface Thresholder

setLowerThreshold

public void setLowerThreshold(int t)
Specified by:
setLowerThreshold in interface Thresholder

upperThreshold

public int upperThreshold()
                   throws java.rmi.RemoteException
Specified by:
upperThreshold in interface Thresholder
Throws:
java.rmi.RemoteException

lowerThreshold

public int lowerThreshold()
                   throws java.rmi.RemoteException
Specified by:
lowerThreshold in interface Thresholder
Throws:
java.rmi.RemoteException

setAuto

public void setAuto(boolean b)

minInstancesChanged

protected boolean minInstancesChanged()

setMinInstances

public void setMinInstances(int i)

setTargetInstances

protected void setTargetInstances(int target)

startInstance

protected void startInstance()
                      throws java.lang.Exception
Throws:
java.lang.Exception

stopInstance

protected void stopInstance()
                     throws java.lang.Exception
Throws:
java.lang.Exception

startThresholdPolling

protected void startThresholdPolling()

stopThresholdPolling

protected void stopThresholdPolling()

SmartFrog CORE 3.10.000

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