Class GHIssue

    • Field Detail

      • assignee

        protected GHUser assignee
        The assignee.
      • assignees

        protected GHUser[] assignees
        The assignees.
      • state

        protected String state
        The state.
      • number

        protected int number
        The number.
      • closed_at

        protected String closed_at
        The closed at.
      • comments

        protected int comments
        The comments.
      • body

        protected String body
        The body.
      • user

        protected GHUser user
        The user.
      • title

        protected String title
        The html url.
      • html_url

        protected String html_url
        The html url.
      • milestone

        protected GHMilestone milestone
        The milestone.
      • closed_by

        protected GHUser closed_by
        The closed by.
      • locked

        protected boolean locked
        The locked.
    • Constructor Detail

      • GHIssue

        public GHIssue()
    • Method Detail

      • getRepository

        public GHRepository getRepository()
        Repository to which the issue belongs.
        Returns:
        the repository
      • getBody

        public String getBody()
        The description of this pull request.
        Returns:
        the body
      • getNumber

        public int getNumber()
        ID.
        Returns:
        the number
      • getHtmlUrl

        public URL getHtmlUrl()
        The HTML page of this issue, like https://github.com/jenkinsci/jenkins/issues/100
        Specified by:
        getHtmlUrl in class GHObject
        Returns:
        the html url
      • getTitle

        public String getTitle()
        Gets title.
        Returns:
        the title
      • isLocked

        public boolean isLocked()
        Is locked boolean.
        Returns:
        the boolean
      • getState

        public GHIssueState getState()
        Gets state.
        Returns:
        the state
      • getLabels

        public Collection<GHLabel> getLabels()
        Gets labels.
        Returns:
        the labels
      • getClosedAt

        public Date getClosedAt()
        Gets closed at.
        Returns:
        the closed at
      • comment

        @WithBridgeMethods(void.class)
        public GHIssueComment comment​(String message)
                               throws IOException
        Updates the issue by adding a comment.
        Parameters:
        message - the message
        Returns:
        Newly posted comment.
        Throws:
        IOException - the io exception
      • setTitle

        public void setTitle​(String title)
                      throws IOException
        Sets title.
        Parameters:
        title - the title
        Throws:
        IOException - the io exception
      • setBody

        public void setBody​(String body)
                     throws IOException
        Sets body.
        Parameters:
        body - the body
        Throws:
        IOException - the io exception
      • setMilestone

        public void setMilestone​(GHMilestone milestone)
                          throws IOException
        Sets the milestone for this issue.
        Parameters:
        milestone - The milestone to assign this issue to. Use null to remove the milestone for this issue.
        Throws:
        IOException - The io exception
      • assignTo

        public void assignTo​(GHUser user)
                      throws IOException
        Assign to.
        Parameters:
        user - the user
        Throws:
        IOException - the io exception
      • setLabels

        public void setLabels​(String... labels)
                       throws IOException
        Sets labels on the target to a specific list.
        Parameters:
        labels - the labels
        Throws:
        IOException - the io exception
      • addLabels

        @WithBridgeMethods(void.class)
        public List<GHLabel> addLabels​(String... names)
                                throws IOException
        Adds labels to the issue. Labels that are already present on the target are ignored.
        Parameters:
        names - Names of the label
        Returns:
        the complete list of labels including the new additions
        Throws:
        IOException - the io exception
      • addLabels

        @WithBridgeMethods(void.class)
        public List<GHLabel> addLabels​(GHLabel... labels)
                                throws IOException
        Add labels. Labels that are already present on the target are ignored.
        Parameters:
        labels - the labels
        Returns:
        the complete list of labels including the new additions
        Throws:
        IOException - the io exception
      • addLabels

        @WithBridgeMethods(void.class)
        public List<GHLabel> addLabels​(Collection<GHLabel> labels)
                                throws IOException
        Add labels. Labels that are already present on the target are ignored.
        Parameters:
        labels - the labels
        Returns:
        the complete list of labels including the new additions
        Throws:
        IOException - the io exception
      • removeLabels

        @WithBridgeMethods(void.class)
        public List<GHLabel> removeLabels​(String... names)
                                   throws IOException
        Remove a collection of labels. Attempting to remove labels that are not present on the target are ignored.
        Parameters:
        names - the names
        Returns:
        the remaining list of labels
        Throws:
        IOException - the io exception
      • removeLabels

        @WithBridgeMethods(void.class)
        public List<GHLabel> removeLabels​(GHLabel... labels)
                                   throws IOException
        Remove a collection of labels. Attempting to remove labels that are not present on the target are ignored.
        Parameters:
        labels - the labels
        Returns:
        the remaining list of labels
        Throws:
        IOException - the io exception
        See Also:
        #removeLabels(String...)
      • removeLabels

        @WithBridgeMethods(void.class)
        public List<GHLabel> removeLabels​(Collection<GHLabel> labels)
                                   throws IOException
        Remove a collection of labels. Attempting to remove labels that are not present on the target are ignored.
        Parameters:
        labels - the labels
        Returns:
        the remaining list of labels
        Throws:
        IOException - the io exception
      • addAssignees

        public void addAssignees​(GHUser... assignees)
                          throws IOException
        Add assignees.
        Parameters:
        assignees - the assignees
        Throws:
        IOException - the io exception
      • setAssignees

        public void setAssignees​(GHUser... assignees)
                          throws IOException
        Sets assignees.
        Parameters:
        assignees - the assignees
        Throws:
        IOException - the io exception
      • removeAssignees

        public void removeAssignees​(GHUser... assignees)
                             throws IOException
        Remove assignees.
        Parameters:
        assignees - the assignees
        Throws:
        IOException - the io exception
      • removeAssignees

        public void removeAssignees​(Collection<GHUser> assignees)
                             throws IOException
        Remove assignees.
        Parameters:
        assignees - the assignees
        Throws:
        IOException - the io exception
      • getApiRoute

        protected String getApiRoute()
        Gets api route.
        Returns:
        the api route
      • getIssuesApiRoute

        protected String getIssuesApiRoute()
        Gets issues api route.
        Returns:
        the issues api route
      • getAssignees

        public List<GHUser> getAssignees()
        Gets assignees.
        Returns:
        the assignees
      • getUser

        public GHUser getUser()
                       throws IOException
        User who submitted the issue.
        Returns:
        the user
        Throws:
        IOException - the io exception
      • getClosedBy

        public GHUser getClosedBy()
                           throws IOException
        Reports who has closed the issue.

        Note that GitHub doesn't always seem to report this information even for an issue that's already closed. See https://github.com/kohsuke/github-api/issues/60.

        Returns:
        the closed by
        Throws:
        IOException - the io exception
      • getCommentsCount

        public int getCommentsCount()
        Gets comments count.
        Returns:
        the comments count
      • getPullRequest

        public GHIssue.PullRequest getPullRequest()
        Returns non-null if this issue is a shadow of a pull request.
        Returns:
        the pull request
      • isPullRequest

        public boolean isPullRequest()
        Is pull request boolean.
        Returns:
        the boolean
      • getMilestone

        public GHMilestone getMilestone()
        Gets milestone.
        Returns:
        the milestone
      • getLogins

        protected static List<String> getLogins​(Collection<GHUser> users)
        Gets the logins.
        Parameters:
        users - the users
        Returns:
        the logins
      • getRoot

        @Deprecated
        public GitHub getRoot()
        Deprecated.
        For access to the GitHub instance, use a local copy instead of pulling it out of objects.
        Get the root GitHub instance for this object.
        Returns:
        the root GitHub instance