com.cometway.props
Class AbstractPropsPoolAgent

java.lang.Object
  extended by com.cometway.props.Props
      extended by com.cometway.ak.Agent
          extended by com.cometway.ak.ServiceAgent
              extended by com.cometway.props.AbstractPropsPoolAgent
All Implemented Interfaces:
AgentInterface, HasStateMachineModel

public abstract class AbstractPropsPoolAgent
extends ServiceAgent


Nested Class Summary
 class AbstractPropsPoolAgent.PropsPoolImpl
           
 
Field Summary
protected  PropsList propsList
           
protected  AbstractPropsPoolAgent.PropsPoolImpl propsPool
           
 
Fields inherited from class com.cometway.ak.Agent
agent_id, agentController, CREATING_STATE, debugReporter, DESTROYED_STATE, DESTROYING_STATE, errorReporter, FAILED_STATE, printlnReporter, props, RUNNING_STATE, STARTING_STATE, STOPPED_STATE, STOPPING_STATE, warningReporter
 
Constructor Summary
AbstractPropsPoolAgent()
           
 
Method Summary
abstract  void addNewPropsToPool()
          Creates a new Props and adds it to the pool.
 void initProps()
          Override this method to initialize this agent's properties before it is started.
abstract  void returnToPool(Props Props, java.lang.Object o)
          Returns a Props to the pool based on the specified Object parameter.
 void start()
          Sets up the Props pool and registers the PropsPoolImpl using service_name.
 void stop()
          Unregisters the PropsPoolImpl and releases it and the PropsList.
abstract  Props takeFromPool(java.lang.Object o)
          Takes a Props from the pool based on the specified Object parameter.
 
Methods inherited from class com.cometway.ak.Agent
currentStateEquals, debug, destroy, error, error, getAgentController, getDateTimeStr, getProps, getServiceImpl, getStateMachineModel, println, register, registerService, setAgentController, setProps, toString, unregister, unregisterService, warning, warning
 
Methods inherited from class com.cometway.props.Props
addListener, append, copy, copyFrom, copyTo, decrementInteger, dump, enableListeners, enumerateKeys, format, getBoolean, getByteArray, getCharacter, getDate, getDate, getDateString, getDouble, getFloat, getHexString, getInteger, getKeys, getLong, getNextKey, getProperty, getProperty, getPropsContainer, getSize, getString, getString, getTokens, getTokens, getTrimmedString, getVector, hasProperty, incrementInteger, insertProps, loadProps, notifyPropsChanged, notifyPropsChangedIgnore, notifyPropsChangedIgnore, parse, propertyMatchesRegEx, readFromFile, regExPropertyMatches, removeAll, removeListener, removeProperty, resumeNotify, saveProps, set, setBoolean, setCharacter, setDefault, setDouble, setFloat, setInteger, setLong, setProperty, setProperty, setProperty, setPropsContainer, suspendNotify, writeToFile
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

propsList

protected PropsList propsList

propsPool

protected AbstractPropsPoolAgent.PropsPoolImpl propsPool
Constructor Detail

AbstractPropsPoolAgent

public AbstractPropsPoolAgent()
Method Detail

initProps

public void initProps()
Description copied from class: Agent
Override this method to initialize this agent's properties before it is started.

Specified by:
initProps in interface AgentInterface
Overrides:
initProps in class Agent

start

public void start()
Sets up the Props pool and registers the PropsPoolImpl using service_name.

Specified by:
start in interface AgentInterface
Overrides:
start in class ServiceAgent

stop

public void stop()
Unregisters the PropsPoolImpl and releases it and the PropsList.

Specified by:
stop in interface AgentInterface
Overrides:
stop in class ServiceAgent

addNewPropsToPool

public abstract void addNewPropsToPool()
Creates a new Props and adds it to the pool.


takeFromPool

public abstract Props takeFromPool(java.lang.Object o)
Takes a Props from the pool based on the specified Object parameter. Passing null *may* return a default value.


returnToPool

public abstract void returnToPool(Props Props,
                                  java.lang.Object o)
Returns a Props to the pool based on the specified Object parameter. A Props that is not returned to the pool may never be reused.