| java.lang.Object net.sourceforge.groboutils.pmti.v1.defimpl.AbstractEditableIssue
AbstractEditableIssue | abstract public class AbstractEditableIssue implements IEditableIssue(Code) | | Allows for editing of an issue. The only parts that can't be edited are
the ID and type, since those uniquely identify the issue at hand. Editing
an issue has several constraints that should be known by the user:
-
Just like with the IIssue instances, the issue being
edited will NOT be real-time updated to reflect the current
tracker state. Currently, the only way to update an issue is by
re-polling the ProblemManager. Individual implementations
may provide for alternative means to receive synchronized issues.
-
No changes to an editable issue will be committed to the problem
tracker is to call commit() on the issue.
author: Matt Albrecht groboclown@users.sourceforge.net version: $Date: 2003/02/10 22:51:57 $ since: July 12, 2002 |
AbstractEditableIssue | public AbstractEditableIssue(IIssue base)(Code) | | |
commit | abstract public void commit() throws ProblemManagerException(Code) | | Commits all changes from the issue to the tracker.
In theory, issues should never be removed. However, some systems allow
them to be deleted (say, if there was an accidental creation). In this
case, an IssueRemovedException will be thrown.
exception: ProblemManagerException - if there was an underlying trackererror. |
createEditableAttributeSet | abstract protected IEditableAttributeSet createEditableAttributeSet(IAttributeSet as)(Code) | | Creates an editable set of attributes based on the immutable attribute
set. The new set of attributes should accurately reflect the input
attribute set's values.
|
createNextEditableIssueStates | abstract protected IEditableIssueState[] createNextEditableIssueStates(IIssueState is)(Code) | | Creates a set of editable issue states that can be set as 'next' for
is. Note that it is required that the input is
must be returned in index 0 of the returned array.
|
getEditableAttributes | public IEditableAttributeSet getEditableAttributes()(Code) | | This is a synonymn for getAttributes(), but this explicitly
sets the returned value as an editable set, without the need for an
extra cast. The returned attribute set may be safely edited, and
changes there will affect the issue that returned them.
|
getNextStates | public IEditableIssueState[] getNextStates()(Code) | | Returns the list of all states that this issue can move to next.
This is part of the workflow logic of the underlying PMT. The returned
states may be safely edited without any affect; the only effect will be
when the state is explicitly set. This will always return, in index 0,
a copy of the current state as editable.
|
getShortDescription | public String getShortDescription()(Code) | | |
hasShortDescriptionChanged | public boolean hasShortDescriptionChanged()(Code) | | true if setShortDescription( String ) wascalled with a different description string than the originalissue, otherwise false. |
hasStateChanged | public boolean hasStateChanged()(Code) | | true if the setState( IIssueState ) methodhas been invoked and did not throw an exception, otherwisefalse. Note that even if the set state is an unchangedversion of the current issue's state, this will still returntrue. |
setShortDescription | public void setShortDescription(String desc)(Code) | | |
setState | public void setState(IIssueState state) throws ProblemManagerException(Code) | | Sets the current state. Since there is no getEditableState() method,
use this method if any information in the current state needs to be
updated. You can retrieve the current state as an editable state
using getNextStates()[0], but note that any changes to that
editable version will not affect the tracker's state unless that
editable instance is explicitly set in this method.
exception: ProblemManagerException - if the input state is not a validnext state. |
|
|