Class Issue

java.lang.Object
org.deltava.beans.DatabaseBean
org.deltava.beans.system.Issue
All Implemented Interfaces:
Serializable, Cloneable, Comparable<Object>, Auditable, AuthoredBean, IDBean, ViewEntry, Cacheable

public class Issue extends DatabaseBean implements AuthoredBean, Auditable, ViewEntry
A bean for tracking development issues.
Since:
1.0
Version:
11.0
Author:
Luke
See Also:
  • Constructor Details

  • Method Details

    • getSubject

      public String getSubject()
      Returns the issue title.
      Returns:
      the title
      See Also:
    • getDescription

      public String getDescription()
      Returns the issue description.
      Returns:
      the description
      See Also:
    • getComments

      public Collection<IssueComment> getComments()
      Returns all the comments associated with this issue.
      Returns:
      a Collection of IssueComments
      See Also:
    • getAirlines

      public Collection<AirlineInformation> getAirlines()
      Returns the virtual airlines associated with this issue.
      Returns:
      a Collection of AirlineInformation beans
    • getPriority

      public IssuePriority getPriority()
      Returns the issue priority.
      Returns:
      the IssuePriority
      See Also:
    • getStatus

      public IssueStatus getStatus()
      Returns the issue status.
      Returns:
      the IssueStatus
      See Also:
    • getType

      public Issue.IssueType getType()
      Returns the issue type.
      Returns:
      the IssueType
      See Also:
    • getArea

      public IssueArea getArea()
      Returns the issue area.
      Returns:
      the IssueArea
      See Also:
    • getSecurity

      public IssueSecurity getSecurity()
      Returns the Issue security level.
      Returns:
      the IssueSecurity
      See Also:
    • getCreatedOn

      public Instant getCreatedOn()
      Returns the date/time this Issue was created on.
      Returns:
      the creation date/time
      See Also:
    • getLastCommentOn

      public Instant getLastCommentOn()
      Returns the date/time the last comment for this issue was created on.
      Returns:
      the creation date/time of the last comment
      See Also:
    • getResolvedOn

      public Instant getResolvedOn()
      Returns the date/time this issue was resolved on.
      Returns:
      the date/time the issue was resolved on, or null
      See Also:
    • getCommentCount

      public int getCommentCount()
      Returns the number of comments for this Issue.
      Returns:
      the number of comments
      See Also:
    • getAuthorID

      public int getAuthorID()
      Description copied from interface: AuthoredBean
      Returns the Author of this bean.
      Specified by:
      getAuthorID in interface AuthoredBean
      Returns:
      the author's database ID
      See Also:
    • getAssignedTo

      public int getAssignedTo()
      The database ID of the Person this issue is assigned to.
      Returns:
      the database ID
      See Also:
    • getLinkedIssueID

      public int getLinkedIssueID()
      Returns the database ID of a linked Help Desk Issue.
      Returns:
      the database ID
      See Also:
    • getMajorVersion

      public int getMajorVersion()
      Returns the major version number this Issue applies to.
      Returns:
      the major version
      See Also:
    • getMinorVersion

      public int getMinorVersion()
      Returns the minor version number this Issue applies to.
      Returns:
      the minor version
      See Also:
    • add

      public void add(IssueComment ic)
      Adds an IssueComment to this Issue. The issue ID will be automatically copied to the comment.
      Parameters:
      ic - the new comment
      Throws:
      NullPointerException - if ic is null
      See Also:
    • setDescription

      public void setDescription(String desc)
      Updates the description of this Issue.
      Parameters:
      desc - the new description
      See Also:
    • setCreatedOn

      public void setCreatedOn(Instant d)
      Updates the creation date/time of this Issue.
      Parameters:
      d - the new creation date/time
      Throws:
      IllegalArgumentException - if d is null
      See Also:
    • setLastCommentOn

      public void setLastCommentOn(Instant d)
      Updates the last comment date/time for this Issue.
      Parameters:
      d - the date/time the last comment was created
      Throws:
      IllegalArgumentException - if d is null or before getCreatedOn()
      See Also:
    • setResolvedOn

      public void setResolvedOn(Instant d)
      Updates the resolution date/time for this Issue.
      Parameters:
      d - the date/time the Issue was resolved
      Throws:
      IllegalArgumentException - if d is null or before getCreatedOn()
      See Also:
    • setMajorVersion

      public void setMajorVersion(int v)
      Updates the major version for this Issue.
      Parameters:
      v - the major version
      See Also:
    • setMinorVersion

      public void setMinorVersion(int v)
      Updates the minor version for this Issue.
      Parameters:
      v - the minor version
      See Also:
    • setCommentCount

      public void setCommentCount(int cnt)
      Updates the number of comments for this Issue.
      Parameters:
      cnt - the number of comments
      Throws:
      IllegalArgumentException - if comments are already populated
      See Also:
    • addAirline

      public void addAirline(AirlineInformation ai)
      Associaates a virtual airline with this Issue.
      Parameters:
      ai - an AirlineInformation bean
    • setAirlines

      public void setAirlines(Collection<String> airlineCodes)
      Updates the virtual airlines associated with this Issue.
      Parameters:
      airlineCodes - a Collection of airline codes
    • setAuthorID

      public void setAuthorID(int id)
      Description copied from interface: AuthoredBean
      Updates the author of this bean.
      Specified by:
      setAuthorID in interface AuthoredBean
      Parameters:
      id - the author's database ID.
      See Also:
    • setAssignedTo

      public void setAssignedTo(int id)
      Updates the database ID of this Issue's assignee.
      Parameters:
      id - the database ID
      Throws:
      IllegalArgumentException - if id is zero or negative
      See Also:
    • setLinkedIssueID

      public void setLinkedIssueID(int id)
      Updates the database ID of a linked Help Desk issue.
      Parameters:
      id - the Help Desk Issue database ID
      Throws:
      IllegalArgumentException - if id is negative
      See Also:
    • setType

      public void setType(Issue.IssueType pv)
      Updates this Issue's type.
      Parameters:
      pv - the IssueType
      See Also:
    • setArea

      public void setArea(IssueArea pv)
      Updates this Issue's area.
      Parameters:
      pv - the IssueArea
      See Also:
    • setPriority

      public void setPriority(IssuePriority pv)
      Updates this Issue's priority.
      Parameters:
      pv - the IssuePriority
      See Also:
    • setSecurity

      public void setSecurity(IssueSecurity pv)
      Updates this Issues's security level.
      Parameters:
      pv - the IssueSecurity
      See Also:
    • setStatus

      public void setStatus(IssueStatus pv)
      Updates this Issue's status.
      Parameters:
      pv - the IssueStatus
      See Also:
    • setSubject

      public void setSubject(String subj)
      Updates this Issue's title.
      Parameters:
      subj - the new title
      Throws:
      NullPointerException - if subj is null
      See Also:
    • getAuditID

      public String getAuditID()
      Description copied from interface: Auditable
      Returns the object ID for this auditable object.
      Specified by:
      getAuditID in interface Auditable
      Returns:
      the ID
    • getRowClassName

      public String getRowClassName()
      Description copied from interface: ViewEntry
      Returns the CSS class for this object if rendered in a view table.
      Specified by:
      getRowClassName in interface ViewEntry
      Returns:
      the CSS class name, or NULL if none