jhomenet.responsive
Class Plan

java.lang.Object
  extended by jhomenet.responsive.Plan
Direct Known Subclasses:
TestPlan

public class Plan
extends java.lang.Object

ID: $Id: Plan.java,v 1.27 2005/09/30 21:56:54 dhirwinjr Exp $ Description:


Nested Class Summary
static class Plan.ResponseType
           
 
Field Summary
protected  java.lang.String description
          Plan description.
protected  Expression expression
          Used to maintain the list of conditions.
protected  boolean isActive
          Flag used for indicating an active responsive plan.
protected  java.util.Set<AbstractResponse> onFalseResponses
           
protected  java.util.Set<AbstractResponse> onTrueResponses
          Used to maintain a list of the responses.
 
Constructor Summary
Plan()
          Default constructor.
Plan(java.lang.String description)
          Constructor.
 
Method Summary
 void activate()
          Activate the responsive plan.
 void addListener(PlanListener listener)
          Add a listener.
 void addResponse(AbstractResponse aResponse)
          Add a response to the plan.
 void addResponse(AbstractResponse aResponse, Plan.ResponseType type)
          Add a response to the plan.
 void deactivate()
          Deactivate the responsive plan.
 void forceResponses()
           
 java.lang.String getDescription()
          Get the plan description.
 Expression getExpression()
          Get the expression associated with this plan.
 java.lang.Long getId()
          Get the plan ID.
 java.util.Set<AbstractResponse> getOnFalseResponses()
          Get the current list of on-false responses.
 java.util.Set<AbstractResponse> getOnTrueResponses()
          Get the current list of on-true responses.
 void removeExpression()
          Remove the plan's expression.
 void removeListener(PlanListener listener)
          Remove a listener.
 void removeResponse(AbstractResponse response)
          Try to remove a response from the list.
 void ResponseUpdated(AbstractResponse response)
          Call this method when a response has been updated.
 void run()
          Run the plan.
 void setDescription(java.lang.String desc)
          Manually set the plan description.
 void setExpression(Expression expression)
          Set the plan's expression.
 void setOnFalseResponses(java.util.Set<AbstractResponse> responses)
           
 void setOnTrueResponses(java.util.Set<AbstractResponse> responses)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

isActive

protected boolean isActive
Flag used for indicating an active responsive plan. By default, the plan is not active.


expression

protected Expression expression
Used to maintain the list of conditions.


onTrueResponses

protected java.util.Set<AbstractResponse> onTrueResponses
Used to maintain a list of the responses.


onFalseResponses

protected java.util.Set<AbstractResponse> onFalseResponses

description

protected java.lang.String description
Plan description.

Constructor Detail

Plan

public Plan()
Default constructor.


Plan

public Plan(java.lang.String description)
Constructor.

Parameters:
description -
Method Detail

getId

public java.lang.Long getId()
Get the plan ID.

Returns:
the plan ID

getDescription

public java.lang.String getDescription()
Get the plan description.

Returns:
Plan description

setDescription

public void setDescription(java.lang.String desc)
Manually set the plan description.

Parameters:
desc -

activate

public void activate()
Activate the responsive plan.


deactivate

public void deactivate()
Deactivate the responsive plan.


getExpression

public Expression getExpression()
Get the expression associated with this plan.

Returns:
A reference to the plan's expression

setExpression

public void setExpression(Expression expression)
Set the plan's expression.

Parameters:
expression -

removeExpression

public void removeExpression()
Remove the plan's expression.


addResponse

public void addResponse(AbstractResponse aResponse)
Add a response to the plan. Defaults to adding it to the on-true response list.

Parameters:
aResponse - Response to add

addResponse

public void addResponse(AbstractResponse aResponse,
                        Plan.ResponseType type)
Add a response to the plan. The response can be any number of different types of responses from device responses (switch hardware on or off), message responses (send messages to interested parties), etc.

Parameters:
aResponse - Response to add
type - Response type (on-true or on-false)

setOnTrueResponses

public void setOnTrueResponses(java.util.Set<AbstractResponse> responses)

setOnFalseResponses

public void setOnFalseResponses(java.util.Set<AbstractResponse> responses)

getOnTrueResponses

public java.util.Set<AbstractResponse> getOnTrueResponses()
Get the current list of on-true responses.

Returns:
The list of current on-true responses

getOnFalseResponses

public java.util.Set<AbstractResponse> getOnFalseResponses()
Get the current list of on-false responses.

Returns:
The list of current on-false responses

removeResponse

public void removeResponse(AbstractResponse response)
Try to remove a response from the list.

Parameters:
response -

run

public void run()
Run the plan.


forceResponses

public void forceResponses()

ResponseUpdated

public void ResponseUpdated(AbstractResponse response)
Call this method when a response has been updated.

Parameters:
response - The response that has been updated

addListener

public void addListener(PlanListener listener)
Add a listener.

Parameters:
listener - A plan listener to add

removeListener

public void removeListener(PlanListener listener)
Remove a listener.

Parameters:
listener - Listener to remove


Copyright © 2004-2005 David Irwin. All Rights Reserved.