Class DiscussionsApi

    • Constructor Detail

      • DiscussionsApi

        public DiscussionsApi​(GitLabApi gitLabApi)
    • Method Detail

      • getIssueDiscussions

        public java.util.List<Discussion> getIssueDiscussions​(java.lang.Object projectIdOrPath,
                                                              java.lang.Long issueIid)
                                                       throws GitLabApiException
        Get a list of all discussions for the specified issue.
        GitLab Endpoint: GET /projects/:id/issues/:issue_iid/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        issueIid - the internal ID of the issue
        Returns:
        a list containing all the discussions for the specified issue
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getIssueDiscussions

        public java.util.List<Discussion> getIssueDiscussions​(java.lang.Object projectIdOrPath,
                                                              java.lang.Long issueIid,
                                                              int maxItems)
                                                       throws GitLabApiException
        Get a list of discussions for the specified issue.
        GitLab Endpoint: GET /projects/:id/issues/:issue_iid/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        issueIid - the internal ID of the issue
        maxItems - the maximum number of Discussion instances to get, if < 1 will fetch all Discussion instances for the issue
        Returns:
        a list containing the discussions for the specified issue
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getIssueDiscussionsPager

        public Pager<Discussion> getIssueDiscussionsPager​(java.lang.Object projectIdOrPath,
                                                          java.lang.Long issueIid,
                                                          int itemsPerPage)
                                                   throws GitLabApiException
        Get a Pager of Discussion instances for the specified issue.
        GitLab Endpoint: GET /projects/:id/issues/:issue_iid/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        issueIid - the internal ID of the issue
        itemsPerPage - the number of Discussion instances that will be fetched per page
        Returns:
        a Pager containing the Discussion instances for the specified issue
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getIssueDiscussionsStream

        public java.util.stream.Stream<Discussion> getIssueDiscussionsStream​(java.lang.Object projectIdOrPath,
                                                                             java.lang.Long issueIid)
                                                                      throws GitLabApiException
        Get a Stream of Discussion instances for the specified issue.
        GitLab Endpoint: GET /projects/:id/issues/:issue_iid/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        issueIid - the internal ID of the issue
        Returns:
        a Stream instance containing the Discussion instances for the specified issue
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getSnippetDiscussions

        public java.util.List<Discussion> getSnippetDiscussions​(java.lang.Object projectIdOrPath,
                                                                java.lang.Long snippetId)
                                                         throws GitLabApiException
        Get a list of all discussions for the specified snippet.
        GitLab Endpoint: GET /projects/:id/snippets/:snippet_id/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        snippetId - the ID of the snippet
        Returns:
        a list containing all the discussions for the specified snippet
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getSnippetDiscussions

        public java.util.List<Discussion> getSnippetDiscussions​(java.lang.Object projectIdOrPath,
                                                                java.lang.Long snippetId,
                                                                int maxItems)
                                                         throws GitLabApiException
        Get a list of discussions for the specified snippet.
        GitLab Endpoint: GET /projects/:id/snippets/:snippet_id/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        snippetId - the ID of the snippet
        maxItems - the maximum number of Discussion instances to get, if < 1 will fetch all Discussion instances for the snippet
        Returns:
        a list containing the discussions for the specified snippet
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getSnippetDiscussionsPager

        public Pager<Discussion> getSnippetDiscussionsPager​(java.lang.Object projectIdOrPath,
                                                            java.lang.Long snippetId,
                                                            int itemsPerPage)
                                                     throws GitLabApiException
        Get a Pager of Discussion instances for the specified snippet.
        GitLab Endpoint: GET /projects/:id/snippets/:snippet_id/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        snippetId - the ID of the snippet
        itemsPerPage - the number of Discussion instances that will be fetched per page
        Returns:
        a Pager containing the Discussion instances for the specified snippet
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getSnippetDiscussionsStream

        public java.util.stream.Stream<Discussion> getSnippetDiscussionsStream​(java.lang.Object projectIdOrPath,
                                                                               java.lang.Long snippetId)
                                                                        throws GitLabApiException
        Get a Stream of Discussion instances for the specified snippet.
        GitLab Endpoint: GET /projects/:id/snippets/:snippet_id/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        snippetId - the ID of the snippet
        Returns:
        a Stream instance containing the Discussion instances for the specified snippet
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getEpicDiscussions

        public java.util.List<Discussion> getEpicDiscussions​(java.lang.Object projectIdOrPath,
                                                             java.lang.Long epicId)
                                                      throws GitLabApiException
        Get a list of all discussions for the specified epic.
        GitLab Endpoint: GET /projects/:id/epics/:epic_id/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        epicId - the internal ID of the epic
        Returns:
        a list containing all the discussions for the specified epic
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getEpicDiscussions

        public java.util.List<Discussion> getEpicDiscussions​(java.lang.Object projectIdOrPath,
                                                             java.lang.Long epicId,
                                                             int maxItems)
                                                      throws GitLabApiException
        Get a list of discussions for the specified epic.
        GitLab Endpoint: GET /projects/:id/epics/:epic_id/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        epicId - the internal ID of the epic
        maxItems - the maximum number of Discussion instances to get, if < 1 will fetch all Discussion instances for the epic
        Returns:
        a list containing the discussions for the specified epic
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getEpicDiscussionsPager

        public Pager<Discussion> getEpicDiscussionsPager​(java.lang.Object projectIdOrPath,
                                                         java.lang.Long epicId,
                                                         int itemsPerPage)
                                                  throws GitLabApiException
        Get a Pager of Discussion instances for the specified epic.
        GitLab Endpoint: GET /projects/:id/epics/:epic_id/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        epicId - the internal ID of the epic
        itemsPerPage - the number of Discussion instances that will be fetched per page
        Returns:
        a Pager containing the Discussion instances for the specified epic
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getEpicDiscussionsStream

        public java.util.stream.Stream<Discussion> getEpicDiscussionsStream​(java.lang.Object projectIdOrPath,
                                                                            java.lang.Long epicId)
                                                                     throws GitLabApiException
        Get a Stream of Discussion instances for the specified epic.
        GitLab Endpoint: GET /projects/:id/epics/:epic_id/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        epicId - the internal ID of the epic
        Returns:
        a Stream instance containing the Discussion instances for the specified epic
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getMergeRequestDiscussions

        public java.util.List<Discussion> getMergeRequestDiscussions​(java.lang.Object projectIdOrPath,
                                                                     java.lang.Long mergeRequestIid)
                                                              throws GitLabApiException
        Get a list of all discussions for the specified merge request.
        GitLab Endpoint: GET /projects/:id/merge_requests/:merge_request_iid/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        mergeRequestIid - the internal ID of the merge request
        Returns:
        a list containing all the discussions for the specified merge request
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getMergeRequestDiscussions

        public java.util.List<Discussion> getMergeRequestDiscussions​(java.lang.Object projectIdOrPath,
                                                                     java.lang.Long mergeRequestIid,
                                                                     int maxItems)
                                                              throws GitLabApiException
        Get a list of discussions for the specified merge request.
        GitLab Endpoint: GET /projects/:id/merge_requests/:merge_request_iid/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        mergeRequestIid - the internal ID of the merge request
        maxItems - the maximum number of Discussion instances to get, if < 1 will fetch all Discussion instances for the merge request
        Returns:
        a list containing the discussions for the specified merge request
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getMergeRequestDiscussionsPager

        public Pager<Discussion> getMergeRequestDiscussionsPager​(java.lang.Object projectIdOrPath,
                                                                 java.lang.Long mergeRequestIid,
                                                                 int itemsPerPage)
                                                          throws GitLabApiException
        Get a Pager of Discussion instances for the specified merge request.
        GitLab Endpoint: GET /projects/:id/merge_requests/:merge_request_iid/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        mergeRequestIid - the internal ID of the merge request
        itemsPerPage - the number of Discussion instances that will be fetched per page
        Returns:
        a Pager containing the Discussion instances for the specified merge request
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getMergeRequestDiscussionsStream

        public java.util.stream.Stream<Discussion> getMergeRequestDiscussionsStream​(java.lang.Object projectIdOrPath,
                                                                                    java.lang.Long mergeRequestIid)
                                                                             throws GitLabApiException
        Get a Stream of Discussion instances for the specified merge request.
        GitLab Endpoint: GET /projects/:id/issues/:issue_iid/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        mergeRequestIid - the internal ID of the merge request
        Returns:
        a Stream instance containing the Discussion instances for the specified issue
        Throws:
        GitLabApiException - if any exception occurs during execution
      • createMergeRequestDiscussion

        public Discussion createMergeRequestDiscussion​(java.lang.Object projectIdOrPath,
                                                       java.lang.Long mergeRequestIid,
                                                       java.lang.String body,
                                                       java.util.Date createdAt,
                                                       java.lang.String positionHash,
                                                       Position position)
                                                throws GitLabApiException
        Creates a new discussion to a single project merge request. This is similar to creating a note but other comments (replies) can be added to it later.
        GitLab Endpoint: POST /projects/:id/merge_requests/:merge_request_iid/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        mergeRequestIid - mergeRequestIid the internal ID of the merge request
        body - the content of a discussion
        createdAt - date the discussion was created (requires admin or project/group owner rights)
        positionHash - position when creating a diff note
        position - a Position instance holding the position attributes
        Returns:
        a Discussion instance containing the newly created discussion
        Throws:
        GitLabApiException - if any exception occurs during execution
      • resolveMergeRequestDiscussion

        public Discussion resolveMergeRequestDiscussion​(java.lang.Object projectIdOrPath,
                                                        java.lang.Long mergeRequestIid,
                                                        java.lang.String discussionId,
                                                        java.lang.Boolean resolved)
                                                 throws GitLabApiException
        Resolve or unresolve whole discussion of a merge request.
        GitLab Endpoint: PUT /projects/:id/merge_requests/:merge_request_iid/discussions/:discussion_id
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        mergeRequestIid - mergeRequestIid the internal ID of the merge request
        discussionId - the ID of a discussion
        resolved - resolve/unresolve the discussion
        Returns:
        the updated DIscussion instance
        Throws:
        GitLabApiException - if any exception occurs during execution
      • deleteMergeRequestDiscussionNote

        public void deleteMergeRequestDiscussionNote​(java.lang.Object projectIdOrPath,
                                                     java.lang.Long mergeRequestIid,
                                                     java.lang.String discussionId,
                                                     java.lang.Long noteId)
                                              throws GitLabApiException
        Deletes an existing discussion note of a merge request.
        GitLab Endpoint: DELETE /projects/:id/merge_requests/:merge_request_iid/discussions/:discussion_id/notes/:note_id
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        mergeRequestIid - mergeRequestIid the internal ID of the merge request
        discussionId - the ID of a discussion
        noteId - the note ID to delete
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getCommitDiscussions

        public java.util.List<Discussion> getCommitDiscussions​(java.lang.Object projectIdOrPath,
                                                               java.lang.String commitSha)
                                                        throws GitLabApiException
        Get a list of all discussions for the specified commit.
        GitLab Endpoint: GET /projects/:id/repository/commits/:commit_sha/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        commitSha - the SHA of the commit to get discussions for
        Returns:
        a list containing all the discussions for the specified commit
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getCommitDiscussions

        public java.util.List<Discussion> getCommitDiscussions​(java.lang.Object projectIdOrPath,
                                                               java.lang.String commitSha,
                                                               int maxItems)
                                                        throws GitLabApiException
        Get a list of discussions for the specified commit.
        GitLab Endpoint: GET /projects/:id/repository/commits/:commit_sha/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        commitSha - the SHA of the commit to get discussions for
        maxItems - the maximum number of Discussion instances to get, if < 1 will fetch all Discussion instances for the commit
        Returns:
        a list containing the discussions for the specified commit
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getCommitDiscussionsPager

        public Pager<Discussion> getCommitDiscussionsPager​(java.lang.Object projectIdOrPath,
                                                           java.lang.String commitSha,
                                                           int itemsPerPage)
                                                    throws GitLabApiException
        Get a Pager of Discussion instances for the specified commit.
        GitLab Endpoint: GET /projects/:id/repository/commits/:commit_sha/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        commitSha - the SHA of the commit to get discussions for
        itemsPerPage - the number of Discussion instances that will be fetched per page
        Returns:
        a Pager containing the Discussion instances for the specified commit
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getCommitDiscussionsStream

        public java.util.stream.Stream<Discussion> getCommitDiscussionsStream​(java.lang.Object projectIdOrPath,
                                                                              java.lang.String commitSha)
                                                                       throws GitLabApiException
        Get a Stream of Discussion instances for the specified commit.
        GitLab Endpoint: GET /projects/:id/repository/commits/:commit_sha/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        commitSha - the SHA of the commit to get discussions for
        Returns:
        a Stream instance containing the Discussion instances for the specified commit
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getCommitDiscussion

        public Discussion getCommitDiscussion​(java.lang.Object projectIdOrPath,
                                              java.lang.String commitSha,
                                              java.lang.String discussionId)
                                       throws GitLabApiException
        Get a single discussion for the specified commit.
        GitLab Endpoint: GET /projects/:id/repository/commits/:commit_sha/discussions/:discussion_id
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        commitSha - the SHA of the commit to get discussions for
        discussionId - the ID of the discussion
        Returns:
        the Discussion instance specified by discussionId for the specified commit
        Throws:
        GitLabApiException - if any exception occurs during execution
      • getOptionalCommitDiscussion

        public java.util.Optional<Discussion> getOptionalCommitDiscussion​(java.lang.Object projectIdOrPath,
                                                                          java.lang.String commitSha,
                                                                          java.lang.String discussionId)
        Get an Optional instance of a single discussion for the specified commit.
        GitLab Endpoint: GET /projects/:id/repository/commits/:commit_sha/discussions/:discussion_id
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        commitSha - the SHA of the commit to get discussions for
        discussionId - the ID of the discussion
        Returns:
        an Optional instance with the specified Discussion instance as a value
      • createCommitDiscussion

        public Discussion createCommitDiscussion​(java.lang.Object projectIdOrPath,
                                                 java.lang.String commitSha,
                                                 java.lang.String body,
                                                 java.util.Date createdAt,
                                                 java.lang.String positionHash,
                                                 Position position)
                                          throws GitLabApiException
        Creates a new discussion to a single project commit. This is similar to creating a note but other comments (replies) can be added to it later.
        GitLab Endpoint: POST /projects/:id/repository/commits/:commit_sha/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        commitSha - the commit SHA to create the discussion for
        body - the content of a discussion
        createdAt - date the discussion was created (requires admin or project/group owner rights)
        positionHash - position when creating a diff note
        position - a Position instance holding the position attributes
        Returns:
        a Discussion instance containing the newly created discussion
        Throws:
        GitLabApiException - if any exception occurs during execution
      • addCommitDiscussionNote

        public Note addCommitDiscussionNote​(java.lang.Object projectIdOrPath,
                                            java.lang.String commitSha,
                                            java.lang.String discussionId,
                                            java.lang.String body,
                                            java.util.Date createdAt)
                                     throws GitLabApiException
        Adds a note to an existing commit discussion.
        GitLab Endpoint: POST /projects/:id/repository/commits/:commit_sha/discussions/:discussion_id/notes
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        commitSha - the commit SHA to create the discussion for
        discussionId - the ID of a discussion
        body - the content of a discussion
        createdAt - date the discussion was created (requires admin or project/group owner rights)
        Returns:
        a Note instance containing the newly created discussion note
        Throws:
        GitLabApiException - if any exception occurs during execution
      • modifyCommitDiscussionNote

        public Note modifyCommitDiscussionNote​(java.lang.Object projectIdOrPath,
                                               java.lang.String commitSha,
                                               java.lang.String discussionId,
                                               java.lang.Long noteId,
                                               java.lang.String body)
                                        throws GitLabApiException
        Modify an existing discussion note of a commit.
        GitLab Endpoint: PUT /projects/:id/repository/commits/:commit_sha/discussions/:discussion_id/notes
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        commitSha - the commit SHA to delete the discussion from
        discussionId - the ID of a discussion
        noteId - the note ID to modify
        body - the content of a discussion
        Returns:
        a Note instance containing the updated discussion note
        Throws:
        GitLabApiException - if any exception occurs during execution
      • resolveCommitDiscussionNote

        public Note resolveCommitDiscussionNote​(java.lang.Object projectIdOrPath,
                                                java.lang.String commitSha,
                                                java.lang.String discussionId,
                                                java.lang.Long noteId,
                                                java.lang.Boolean resolved)
                                         throws GitLabApiException
        Resolve or unresolve an existing discussion note of a commit.
        GitLab Endpoint: PUT /projects/:id/repository/commits/:commit_sha/discussions/:discussion_id/notes
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        commitSha - the commit SHA to delete the discussion from
        discussionId - the ID of a discussion
        noteId - the note ID to resolve or unresolve
        resolved - if true will resolve the note, false will unresolve the note
        Returns:
        a Note instance containing the updated discussion note
        Throws:
        GitLabApiException - if any exception occurs during execution
      • deleteCommitDiscussionNote

        public void deleteCommitDiscussionNote​(java.lang.Object projectIdOrPath,
                                               java.lang.String commitSha,
                                               java.lang.String discussionId,
                                               java.lang.Long noteId)
                                        throws GitLabApiException
        Deletes an existing discussion note of a commit.
        GitLab Endpoint: DELETE /projects/:id/repository/commits/:commit_sha/discussions/:discussion_id/notes/:note_id
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        commitSha - the commit SHA to delete the discussion from
        discussionId - the ID of a discussion
        noteId - the note ID to delete
        Throws:
        GitLabApiException - if any exception occurs during execution
      • addMergeRequestThreadNote

        public Note addMergeRequestThreadNote​(java.lang.Object projectIdOrPath,
                                              java.lang.Long mergeRequestIid,
                                              java.lang.String discussionId,
                                              java.lang.String body,
                                              java.util.Date createdAt)
                                       throws GitLabApiException
        Adds a new note to the thread. This can also create a thread from a single comment.
        GitLab Endpoint: POST /projects/:id/merge_requests/:merge_request_iid/discussions/:discussion_id/notes
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        mergeRequestIid - mergeRequestIid the internal ID of the merge request
        discussionId - the ID of a discussion
        body - the content of a discussion
        createdAt - date the discussion was created (requires admin or project/group owner rights)
        Returns:
        a Note instance containing the newly created discussion note
        Throws:
        GitLabApiException - if any exception occurs during execution
      • modifyMergeRequestThreadNote

        public Note modifyMergeRequestThreadNote​(java.lang.Object projectIdOrPath,
                                                 java.lang.Long mergeRequestIid,
                                                 java.lang.String discussionId,
                                                 java.lang.Long noteId,
                                                 java.lang.String body,
                                                 java.lang.Boolean resolved)
                                          throws GitLabApiException
        Modify or resolve an existing thread note of a merge request.
        GitLab Endpoint: PUT /projects/:id/merge_requests/:merge_request_iid/discussions/:discussion_id/notes/:note_id
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        mergeRequestIid - mergeRequestIid the internal ID of the merge request
        discussionId - the ID of a discussion
        noteId - the note ID to modify
        body - the content of a discussion
        resolved - if true will resolve the note, false will unresolve the note
        Returns:
        a Note instance containing the updated discussion note
        Throws:
        GitLabApiException - if any exception occurs during execution
      • deleteMergeRequestThreadNote

        public void deleteMergeRequestThreadNote​(java.lang.Object projectIdOrPath,
                                                 java.lang.Long mergeRequestIid,
                                                 java.lang.String discussionId,
                                                 java.lang.Long noteId)
                                          throws GitLabApiException
        Deletes an existing thread note of a merge request.
        GitLab Endpoint: DELETE /projects/:id/merge_requests/:merge_request_iid/discussions/:discussion_id/notes/:note_id
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        mergeRequestIid - mergeRequestIid the internal ID of the merge request
        discussionId - the ID of a discussion
        noteId - the note ID to delete
        Throws:
        GitLabApiException - if any exception occurs during execution
      • createIssueDiscussion

        public Discussion createIssueDiscussion​(java.lang.Object projectIdOrPath,
                                                java.lang.Long issueIid,
                                                java.lang.String body,
                                                java.util.Date createdAt)
                                         throws GitLabApiException
        Creates a new thread to a single project issue. This is similar to creating a note but other comments (replies) can be added to it later.
        GitLab Endpoint: POST /projects/:id/issues/:issue_iid/discussions
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        issueIid - The IID of an issue
        body - the content of the discussion
        createdAt - (optional) date the discussion was created (requires admin or project/group owner rights)
        Returns:
        a Discussion instance containing the newly created discussion
        Throws:
        GitLabApiException - if any exception occurs during execution
      • addIssueThreadNote

        public Note addIssueThreadNote​(java.lang.Object projectIdOrPath,
                                       java.lang.Long issueIid,
                                       java.lang.String discussionId,
                                       java.lang.String body,
                                       java.util.Date createdAt)
                                throws GitLabApiException
        Adds a new note to the thread.
        GitLab Endpoint: POST /projects/:id/issues/:issue_iid/discussions/:discussion_id/notes
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        issueIid - The IID of an issue
        discussionId - the id of discussion
        body - the content of the note
        createdAt - (optional) date the discussion was created (requires admin or project/group owner rights)
        Returns:
        a Note instance containing the newly created note
        Throws:
        GitLabApiException - if any exception occurs during execution
      • modifyIssueThreadNote

        public Note modifyIssueThreadNote​(java.lang.Object projectIdOrPath,
                                          java.lang.Long issueIid,
                                          java.lang.String discussionId,
                                          java.lang.Long noteId,
                                          java.lang.String body)
                                   throws GitLabApiException
        Modify existing thread note of an issue.
        GitLab Endpoint: PUT /projects/:id/issues/:issue_iid/discussions/:discussion_id/notes/:note_id
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        issueIid - The IID of an issue
        discussionId - the id of discussion
        noteId - the id of the note
        body - the content of the note
        Returns:
        a Note instance containing the modified note
        Throws:
        GitLabApiException - if any exception occurs during execution
      • deleteIssueThreadNote

        public void deleteIssueThreadNote​(java.lang.Object projectIdOrPath,
                                          java.lang.Long issueIid,
                                          java.lang.String discussionId,
                                          java.lang.Long noteId)
                                   throws GitLabApiException
        Deletes an existing thread note of an issue.
        GitLab Endpoint: DELETE /projects/:id/issues/:issue_iid/discussions/:discussion_id/notes/:note_id
        Parameters:
        projectIdOrPath - projectIdOrPath the project in the form of an Long(ID), String(path), or Project instance
        issueIid - The IID of an issue
        discussionId - the id of discussion
        noteId - the id of the note
        Throws:
        GitLabApiException - if any exception occurs during execution