ix.ip2
Class AgendaItem

java.lang.Object
  extended by ix.icore.process.TimePoint
      extended by ix.icore.process.PNode
          extended by ix.ip2.AgendaItem
All Implemented Interfaces:
HasStatus
Direct Known Subclasses:
ActivityItem, IssueItem

public abstract class AgendaItem
extends PNode

An entry in an Agenda.


Nested Class Summary
(package private)  class AgendaItem.UndoAddHistoryEvent
           
(package private)  class AgendaItem.UndoSetComments
           
(package private)  class AgendaItem.UndoSetPriority
           
(package private)  class AgendaItem.UndoSetStatus
           
 
Nested classes/interfaces inherited from class ix.icore.process.PNode
PNode.MakeVarIfUnbound
 
Field Summary
protected  java.util.List actions
           
protected  HandlerAction handledBy
           
protected  java.util.List listeners
           
protected  java.util.List reports
           
 
Fields inherited from class ix.icore.process.PNode
beginEnd, endEnd, level, modelManager, parent
 
Fields inherited from class ix.icore.process.TimePoint
tpn_mark
 
Constructor Summary
AgendaItem(AgendaItem parent, TaskItem about)
           
AgendaItem(TaskItem about)
           
 
Method Summary
 boolean actionCanBeTakenNow(HandlerAction act)
           
 void addAction(HandlerAction act)
          Add an action to this item.
 void addHistoryEvent(HistoryEvent event)
           
 void addItemListener(AgendaItemListener listener)
           
 void addReport(Report report)
           
 void assignStatus(Status s)
          Called when loading a plan to give this PNode the status specified in the plan.
 void clearActions()
           
 HandlerAction findAction(java.lang.Class actionClass)
           
 HandlerAction findAction(java.lang.String actionDescription)
           
 java.util.List findAllActions(java.lang.Class actionClass)
           
 void fireAgendaItemEdited()
           
 void fireHandlerActionsChanged()
           
 void fireNewHandlerAction(HandlerAction act)
           
 void fireNewReport(Report report)
           
 void firePriorityChanged()
           
 void fireStatusChanged()
           
 TaskItem getAbout()
           
 java.util.List getActions()
           
 java.lang.String getComments()
           
 HandlerAction getHandledBy()
           
 java.util.List getHistory()
           
 java.lang.String getHowHandled()
           
 AgendaItem getParent()
           
 LList getPattern()
           
 java.util.Set getPatternVars()
           
 Priority getPriority()
           
 java.util.List getReports()
           
 java.lang.String getShortDescription()
           
 Status getStatus()
           
 java.util.Set getUnboundVars()
           
protected  void handleReportBack(Status newStatus)
           
 boolean hasAction(HandlerAction act)
           
 void insertAction(HandlerAction action)
          Adds an action to this item, putting it at a "nice" place in the list.
 boolean isNew()
           
 void setAbout(TaskItem item)
           
 void setComments(java.lang.String comments)
           
 void setHandledBy(HandlerAction act)
           
 void setIsNew(boolean value)
           
 void setPattern(LList pattern)
           
 void setPriority(Priority priority)
           
 void setStatus(Status status)
          Changes the node's status and then that of related nodes.
protected  void setStatusBasedOn(Report report)
           
 java.lang.String toString()
           
 boolean wantsActionsFrom(ItemHandler handler)
          Gives this item its say in whether an item-handler should be able to give it handler actions.
 boolean wantsReport(Report report)
           
 
Methods inherited from class ix.icore.process.PNode
addChild, allComputeStatus, allHaveStatus, computeStatus, ensureChildrenLinkedToParent, expandOneLevel, getBegin, getChildren, getEnd, getEnd, getLevel, getModelManager, getNameToChildMap, getParentPNode, getRefinement, getVarTable, hasChildren, isAncestorOf, isDescendentOf, isExpanded, isParentOf, isSiblingOf, makePNode, processOrderings, refToTimePoint, setChildren, setModelManager, setNameToChildMap, setRefinement, setVarTable, statusFromNodeEnds, unlink, walk, walkChildren
 
Methods inherited from class ix.icore.process.TimePoint
addPostConstraint, addPreConstraint, clear, getMaxTime, getMinTime, getPostConstraints, getPreConstraints, hasUnboundedMax, removePostConstraint, removePreConstraint, setMaxTime, setMinTime
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

actions

protected java.util.List actions

reports

protected java.util.List reports

listeners

protected java.util.List listeners

handledBy

protected HandlerAction handledBy
Constructor Detail

AgendaItem

public AgendaItem(TaskItem about)

AgendaItem

public AgendaItem(AgendaItem parent,
                  TaskItem about)
Method Detail

getAbout

public TaskItem getAbout()

setAbout

public void setAbout(TaskItem item)

getPattern

public LList getPattern()
Specified by:
getPattern in class PNode

getPatternVars

public java.util.Set getPatternVars()

getUnboundVars

public java.util.Set getUnboundVars()

setPattern

public void setPattern(LList pattern)

getShortDescription

public java.lang.String getShortDescription()

isNew

public boolean isNew()

setIsNew

public void setIsNew(boolean value)

getParent

public AgendaItem getParent()

getStatus

public Status getStatus()
Specified by:
getStatus in interface HasStatus
Specified by:
getStatus in class PNode

setStatus

public void setStatus(Status status)
Description copied from class: PNode
Changes the node's status and then that of related nodes.

Specified by:
setStatus in interface HasStatus
Overrides:
setStatus in class PNode

assignStatus

public void assignStatus(Status s)
Description copied from class: PNode
Called when loading a plan to give this PNode the status specified in the plan. In other cases, PNode.setStatus(Status) should be called instead.

Overrides:
assignStatus in class PNode

getPriority

public Priority getPriority()

setPriority

public void setPriority(Priority priority)

getComments

public java.lang.String getComments()

setComments

public void setComments(java.lang.String comments)

getActions

public java.util.List getActions()

clearActions

public void clearActions()

wantsActionsFrom

public boolean wantsActionsFrom(ItemHandler handler)
Gives this item its say in whether an item-handler should be able to give it handler actions.

See Also:
ItemHandler.appliesTo(AgendaItem item)

addAction

public void addAction(HandlerAction act)
Add an action to this item. Note that an action with the same description may already exist. We regard that as a problem for the AgendaItemListeners. For example, a user interface might use the description as a way to identify the action and may not want any ambiguity.


insertAction

public void insertAction(HandlerAction action)
Adds an action to this item, putting it at a "nice" place in the list. This is typically used by the ItemHandler.reviseHandlerActions(AgendaItem, Object) method.


hasAction

public boolean hasAction(HandlerAction act)

findAction

public HandlerAction findAction(java.lang.Class actionClass)

findAllActions

public java.util.List findAllActions(java.lang.Class actionClass)

findAction

public HandlerAction findAction(java.lang.String actionDescription)

actionCanBeTakenNow

public boolean actionCanBeTakenNow(HandlerAction act)

getHandledBy

public HandlerAction getHandledBy()

setHandledBy

public void setHandledBy(HandlerAction act)

getHowHandled

public java.lang.String getHowHandled()

getHistory

public java.util.List getHistory()

addHistoryEvent

public void addHistoryEvent(HistoryEvent event)

wantsReport

public boolean wantsReport(Report report)

addReport

public void addReport(Report report)

setStatusBasedOn

protected void setStatusBasedOn(Report report)

getReports

public java.util.List getReports()

handleReportBack

protected void handleReportBack(Status newStatus)

addItemListener

public void addItemListener(AgendaItemListener listener)

fireStatusChanged

public void fireStatusChanged()

firePriorityChanged

public void firePriorityChanged()

fireHandlerActionsChanged

public void fireHandlerActionsChanged()

fireNewHandlerAction

public void fireNewHandlerAction(HandlerAction act)

fireNewReport

public void fireNewReport(Report report)

fireAgendaItemEdited

public void fireAgendaItemEdited()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object