Unverified Commit f08c0955 authored by Gautier de Saint Martin Lacaze's avatar Gautier de Saint Martin Lacaze Committed by GitHub
Browse files

Merge pull request #812 from gitlab4j/pr-768

Fix #767 : Adding merge request note award functions and renaming issue functions
parents e9e2a5bc 7c9c8c6f
...@@ -9,7 +9,7 @@ import org.gitlab4j.api.models.AwardEmoji; ...@@ -9,7 +9,7 @@ import org.gitlab4j.api.models.AwardEmoji;
/** /**
* This class implements the client side API for the GitLab Award Emoji API calls. * This class implements the client side API for the GitLab Award Emoji API calls.
* *
* @see <a href="https://docs.gitlab.com/ce/api/award_emoji.html">GitLab Award Emoji API Documentaion</a> * @see <a href="https://docs.gitlab.com/ce/api/award_emoji.html">GitLab Award Emoji API Documentaion</a>
* @since v4.8.31 * @since v4.8.31
*/ */
...@@ -68,7 +68,24 @@ public class AwardEmojiApi extends AbstractApi { ...@@ -68,7 +68,24 @@ public class AwardEmojiApi extends AbstractApi {
} }
/** /**
* Get a list of award emoji for the specified note. * Get a list of award emoji for the specified issue note.
*
* <pre><code>GitLab Endpoint: GET /projects/:id/issues/:issue_iid/notes/:note_id/award_emoji</code></pre>
*
* @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path
* @param issueIid the issue IID of the issue that owns the note
* @param noteId the note ID to get the award emojis for
* @return a list of AwardEmoji for the specified note
* @throws GitLabApiException if any exception occurs
*/
public List<AwardEmoji> getIssueNoteAwardEmojis(Object projectIdOrPath, Integer issueIid, Integer noteId) throws GitLabApiException {
Response response = get(Response.Status.OK, getPageQueryParams(1, getDefaultPerPage()),
"projects", getProjectIdOrPath(projectIdOrPath), "issues", issueIid, "notes", noteId, "award_emoji");
return response.readEntity(new GenericType<List<AwardEmoji>>() {});
}
/**
* Get a list of award emoji for the specified issue note.
* *
* <pre><code>GitLab Endpoint: GET /projects/:id/issues/:issue_iid/notes/:note_id/award_emoji</code></pre> * <pre><code>GitLab Endpoint: GET /projects/:id/issues/:issue_iid/notes/:note_id/award_emoji</code></pre>
* *
...@@ -79,8 +96,23 @@ public class AwardEmojiApi extends AbstractApi { ...@@ -79,8 +96,23 @@ public class AwardEmojiApi extends AbstractApi {
* @throws GitLabApiException if any exception occurs * @throws GitLabApiException if any exception occurs
*/ */
public List<AwardEmoji> getNoteAwardEmojis(Object projectIdOrPath, Integer issueIid, Integer noteId) throws GitLabApiException { public List<AwardEmoji> getNoteAwardEmojis(Object projectIdOrPath, Integer issueIid, Integer noteId) throws GitLabApiException {
return getIssueNoteAwardEmojis(projectIdOrPath, issueIid, noteId);
}
/**
* Get a list of award emoji for the specified merge request note.
*
* <pre><code>GitLab Endpoint: GET /projects/:id/merge_requests/:merge_request_iid/notes/:note_id/award_emoji</code></pre>
*
* @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path
* @param mergeRequestIid the merge request IID of the merge request that owns the note
* @param noteId the note ID to get the award emojis for
* @return a list of AwardEmoji for the specified note
* @throws GitLabApiException if any exception occurs
*/
public List<AwardEmoji> getMergeRequestNoteAwardEmojis(Object projectIdOrPath, Integer mergeRequestIid, Integer noteId) throws GitLabApiException {
Response response = get(Response.Status.OK, getPageQueryParams(1, getDefaultPerPage()), Response response = get(Response.Status.OK, getPageQueryParams(1, getDefaultPerPage()),
"projects", getProjectIdOrPath(projectIdOrPath), "issues", issueIid, "notes", noteId, "award_emoji"); "projects", getProjectIdOrPath(projectIdOrPath), "merge_requests", mergeRequestIid, "notes", noteId, "award_emoji");
return response.readEntity(new GenericType<List<AwardEmoji>>() {}); return response.readEntity(new GenericType<List<AwardEmoji>>() {});
} }
...@@ -92,7 +124,7 @@ public class AwardEmojiApi extends AbstractApi { ...@@ -92,7 +124,7 @@ public class AwardEmojiApi extends AbstractApi {
* @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path * @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path
* @param issueIid the issue IID to get the award emoji for * @param issueIid the issue IID to get the award emoji for
* @param awardId the ID of the award emoji to get * @param awardId the ID of the award emoji to get
* @return an AwardEmoji instance for the specified award emoji * @return an AwardEmoji instance for the specified award emoji
* @throws GitLabApiException if any exception occurs * @throws GitLabApiException if any exception occurs
*/ */
public AwardEmoji getIssueAwardEmoji(Object projectIdOrPath, Integer issueIid, Integer awardId) throws GitLabApiException { public AwardEmoji getIssueAwardEmoji(Object projectIdOrPath, Integer issueIid, Integer awardId) throws GitLabApiException {
...@@ -109,7 +141,7 @@ public class AwardEmojiApi extends AbstractApi { ...@@ -109,7 +141,7 @@ public class AwardEmojiApi extends AbstractApi {
* @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path * @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path
* @param mergeRequestIid the merge request IID to get the award emoji for * @param mergeRequestIid the merge request IID to get the award emoji for
* @param awardId the ID of the award emoji to get * @param awardId the ID of the award emoji to get
* @return an AwardEmoji instance for the specified award emoji * @return an AwardEmoji instance for the specified award emoji
* @throws GitLabApiException if any exception occurs * @throws GitLabApiException if any exception occurs
*/ */
public AwardEmoji getMergeRequestAwardEmoji(Object projectIdOrPath, Integer mergeRequestIid, Integer awardId) throws GitLabApiException { public AwardEmoji getMergeRequestAwardEmoji(Object projectIdOrPath, Integer mergeRequestIid, Integer awardId) throws GitLabApiException {
...@@ -126,7 +158,7 @@ public class AwardEmojiApi extends AbstractApi { ...@@ -126,7 +158,7 @@ public class AwardEmojiApi extends AbstractApi {
* @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path * @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path
* @param snippetId the snippet ID to get the award emoji for * @param snippetId the snippet ID to get the award emoji for
* @param awardId the ID of the award emoji to get * @param awardId the ID of the award emoji to get
* @return an AwardEmoji instance for the specified award emoji * @return an AwardEmoji instance for the specified award emoji
* @throws GitLabApiException if any exception occurs * @throws GitLabApiException if any exception occurs
*/ */
public AwardEmoji getSnippetAwardEmoji(Object projectIdOrPath, Integer snippetId, Integer awardId) throws GitLabApiException { public AwardEmoji getSnippetAwardEmoji(Object projectIdOrPath, Integer snippetId, Integer awardId) throws GitLabApiException {
...@@ -136,7 +168,7 @@ public class AwardEmojiApi extends AbstractApi { ...@@ -136,7 +168,7 @@ public class AwardEmojiApi extends AbstractApi {
} }
/** /**
* Get the specified award emoji for the specified note. * Get the specified award emoji for the specified issue note.
* *
* <pre><code>GitLab Endpoint: GET /projects/:id/issues/:issue_iid/notes/:note_id/award_emoji/:award_id</code></pre> * <pre><code>GitLab Endpoint: GET /projects/:id/issues/:issue_iid/notes/:note_id/award_emoji/:award_id</code></pre>
* *
...@@ -144,12 +176,48 @@ public class AwardEmojiApi extends AbstractApi { ...@@ -144,12 +176,48 @@ public class AwardEmojiApi extends AbstractApi {
* @param issueIid the issue IID of the issue that owns the note * @param issueIid the issue IID of the issue that owns the note
* @param noteId the note ID to get the award emoji from * @param noteId the note ID to get the award emoji from
* @param awardId the ID of the award emoji to get * @param awardId the ID of the award emoji to get
* @return an AwardEmoji instance for the specified award emoji * @return an AwardEmoji instance for the specified award emoji
* @throws GitLabApiException if any exception occurs * @throws GitLabApiException if any exception occurs
*/ */
public AwardEmoji getIssueNoteAwardEmoji(Object projectIdOrPath, Integer issueIid, Integer noteId, Integer awardId) throws GitLabApiException {
Response response = get(Response.Status.OK, getPageQueryParams(1, getDefaultPerPage()),
"projects", getProjectIdOrPath(projectIdOrPath), "issues", issueIid, "notes", noteId, "award_emoji", awardId);
return (response.readEntity(AwardEmoji.class));
}
/**
* Get the specified award emoji for the specified issue note.
*
* <pre><code>GitLab Endpoint: GET /projects/:id/issues/:issue_iid/notes/:note_id/award_emoji/:award_id</code></pre>
*
* @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path
* @param issueIid the issue IID of the issue that owns the note
* @param noteId the note ID to get the award emoji from
* @param awardId the ID of the award emoji to get
* @return an AwardEmoji instance for the specified award emoji
* @throws GitLabApiException if any exception occurs
* @deprecated use {@link #getIssueNoteAwardEmoji(Object, Integer, Integer, Integer)} instead
*/
@Deprecated
public AwardEmoji getNoteAwardEmoji(Object projectIdOrPath, Integer issueIid, Integer noteId, Integer awardId) throws GitLabApiException { public AwardEmoji getNoteAwardEmoji(Object projectIdOrPath, Integer issueIid, Integer noteId, Integer awardId) throws GitLabApiException {
return getIssueNoteAwardEmoji(projectIdOrPath, issueIid, noteId, awardId);
}
/**
* Get the specified award emoji for the specified merge request note.
*
* <pre><code>GitLab Endpoint: GET /projects/:id/merge_requests/:merge_request_iid/notes/:note_id/award_emoji/:award_id</code></pre>
*
* @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path
* @param mergeRequestIid the merge request IID of the merge request that owns the note
* @param noteId the note ID to get the award emoji from
* @param awardId the ID of the award emoji to get
* @return an AwardEmoji instance for the specified award emoji
* @throws GitLabApiException if any exception occurs
*/
public AwardEmoji getMergeRequestNoteAwardEmoji(Object projectIdOrPath, Integer mergeRequestIid, Integer noteId, Integer awardId) throws GitLabApiException {
Response response = get(Response.Status.OK, getPageQueryParams(1, getDefaultPerPage()), Response response = get(Response.Status.OK, getPageQueryParams(1, getDefaultPerPage()),
"projects", getProjectIdOrPath(projectIdOrPath), "issues", issueIid, "notes", noteId, "award_emoji", awardId); "projects", getProjectIdOrPath(projectIdOrPath), "merge_requests", mergeRequestIid, "notes", noteId, "award_emoji", awardId);
return (response.readEntity(AwardEmoji.class)); return (response.readEntity(AwardEmoji.class));
} }
...@@ -161,7 +229,7 @@ public class AwardEmojiApi extends AbstractApi { ...@@ -161,7 +229,7 @@ public class AwardEmojiApi extends AbstractApi {
* @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path * @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path
* @param issueIid the issue IID to add the award emoji to * @param issueIid the issue IID to add the award emoji to
* @param name the name of the award emoji to add * @param name the name of the award emoji to add
* @return an AwardEmoji instance for the added award emoji * @return an AwardEmoji instance for the added award emoji
* @throws GitLabApiException if any exception occurs * @throws GitLabApiException if any exception occurs
*/ */
public AwardEmoji addIssueAwardEmoji(Object projectIdOrPath, Integer issueIid, String name) throws GitLabApiException { public AwardEmoji addIssueAwardEmoji(Object projectIdOrPath, Integer issueIid, String name) throws GitLabApiException {
...@@ -179,7 +247,7 @@ public class AwardEmojiApi extends AbstractApi { ...@@ -179,7 +247,7 @@ public class AwardEmojiApi extends AbstractApi {
* @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path * @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path
* @param mergeRequestIid the merge request IID to add the award emoji to * @param mergeRequestIid the merge request IID to add the award emoji to
* @param name the name of the award emoji to add * @param name the name of the award emoji to add
* @return an AwardEmoji instance for the added award emoji * @return an AwardEmoji instance for the added award emoji
* @throws GitLabApiException if any exception occurs * @throws GitLabApiException if any exception occurs
*/ */
public AwardEmoji addMergeRequestAwardEmoji(Object projectIdOrPath, Integer mergeRequestIid, String name) throws GitLabApiException { public AwardEmoji addMergeRequestAwardEmoji(Object projectIdOrPath, Integer mergeRequestIid, String name) throws GitLabApiException {
...@@ -197,7 +265,7 @@ public class AwardEmojiApi extends AbstractApi { ...@@ -197,7 +265,7 @@ public class AwardEmojiApi extends AbstractApi {
* @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path * @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path
* @param snippetId the snippet ID to add the award emoji to * @param snippetId the snippet ID to add the award emoji to
* @param name the name of the award emoji to add * @param name the name of the award emoji to add
* @return an AwardEmoji instance for the added award emoji * @return an AwardEmoji instance for the added award emoji
* @throws GitLabApiException if any exception occurs * @throws GitLabApiException if any exception occurs
*/ */
public AwardEmoji addSnippetAwardEmoji(Object projectIdOrPath, Integer snippetId, String name) throws GitLabApiException { public AwardEmoji addSnippetAwardEmoji(Object projectIdOrPath, Integer snippetId, String name) throws GitLabApiException {
...@@ -208,7 +276,7 @@ public class AwardEmojiApi extends AbstractApi { ...@@ -208,7 +276,7 @@ public class AwardEmojiApi extends AbstractApi {
} }
/** /**
* Add an award emoji for the specified note. * Add an award emoji for the specified issue note.
* *
* <pre><code>GitLab Endpoint: POST /projects/:id/issues/:issue_iid/notes/:noteId/award_emoji</code></pre> * <pre><code>GitLab Endpoint: POST /projects/:id/issues/:issue_iid/notes/:noteId/award_emoji</code></pre>
* *
...@@ -216,13 +284,50 @@ public class AwardEmojiApi extends AbstractApi { ...@@ -216,13 +284,50 @@ public class AwardEmojiApi extends AbstractApi {
* @param issueIid the issue IID of the issue that owns the note * @param issueIid the issue IID of the issue that owns the note
* @param noteId the note ID to add the award emoji to * @param noteId the note ID to add the award emoji to
* @param name the name of the award emoji to add * @param name the name of the award emoji to add
* @return an AwardEmoji instance for the added award emoji * @return an AwardEmoji instance for the added award emoji
* @throws GitLabApiException if any exception occurs * @throws GitLabApiException if any exception occurs
*/ */
public AwardEmoji addIssueNoteAwardEmoji(Object projectIdOrPath, Integer issueIid, Integer noteId, String name) throws GitLabApiException {
GitLabApiForm form = new GitLabApiForm().withParam("name", name, true);
Response response = post(Response.Status.CREATED, form.asMap(),
"projects", getProjectIdOrPath(projectIdOrPath), "issues", issueIid, "notes", noteId, "award_emoji");
return (response.readEntity(AwardEmoji.class));
}
/**
* Add an award emoji for the specified issue note.
*
* <pre><code>GitLab Endpoint: POST /projects/:id/issues/:issue_iid/notes/:noteId/award_emoji</code></pre>
*
* @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path
* @param issueIid the issue IID of the issue that owns the note
* @param noteId the note ID to add the award emoji to
* @param name the name of the award emoji to add
* @return an AwardEmoji instance for the added award emoji
* @throws GitLabApiException if any exception occurs
* @deprecated use {@link #addIssueNoteAwardEmoji(Object, Integer, Integer, String)}
*/
@Deprecated
public AwardEmoji addNoteAwardEmoji(Object projectIdOrPath, Integer issueIid, Integer noteId, String name) throws GitLabApiException { public AwardEmoji addNoteAwardEmoji(Object projectIdOrPath, Integer issueIid, Integer noteId, String name) throws GitLabApiException {
return addIssueNoteAwardEmoji(projectIdOrPath, issueIid, noteId, name);
}
/**
* Add an award emoji for the specified merge request note.
*
* <pre><code>GitLab Endpoint: POST /projects/:id/merge_requests/:merge_request_iid/notes/:noteId/award_emoji</code></pre>
*
* @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path
* @param mergeRequestIid the merge request IID of the merge request that owns the note
* @param noteId the note ID to add the award emoji to
* @param name the name of the award emoji to add
* @return an AwardEmoji instance for the added award emoji
* @throws GitLabApiException if any exception occurs
*/
public AwardEmoji addMergeRequestAwardEmoji(Object projectIdOrPath, Integer mergeRequestIid, Integer noteId, String name) throws GitLabApiException {
GitLabApiForm form = new GitLabApiForm().withParam("name", name, true); GitLabApiForm form = new GitLabApiForm().withParam("name", name, true);
Response response = post(Response.Status.CREATED, form.asMap(), Response response = post(Response.Status.CREATED, form.asMap(),
"projects", getProjectIdOrPath(projectIdOrPath), "issues", issueIid, "notes", noteId, "award_emoji"); "projects", getProjectIdOrPath(projectIdOrPath), "merge_requests", mergeRequestIid, "notes", noteId, "award_emoji");
return (response.readEntity(AwardEmoji.class)); return (response.readEntity(AwardEmoji.class));
} }
...@@ -269,10 +374,26 @@ public class AwardEmojiApi extends AbstractApi { ...@@ -269,10 +374,26 @@ public class AwardEmojiApi extends AbstractApi {
public void deleteSnippetAwardEmoji(Object projectIdOrPath, Integer snippetId, Integer awardId) throws GitLabApiException { public void deleteSnippetAwardEmoji(Object projectIdOrPath, Integer snippetId, Integer awardId) throws GitLabApiException {
delete(Response.Status.NO_CONTENT, null, delete(Response.Status.NO_CONTENT, null,
"projects", getProjectIdOrPath(projectIdOrPath), "snippets", snippetId, "award_emoji", awardId); "projects", getProjectIdOrPath(projectIdOrPath), "snippets", snippetId, "award_emoji", awardId);
} }
/**
* Delete an award emoji from the specified issue note.
*
* <pre><code>GitLab Endpoint: DELETE /projects/:id/issues/:issue_iid/notes/:note_id/award_emoji/:award_id</code></pre>
*
* @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path
* @param issueIid the issue IID that owns the note
* @param noteId the note ID of the note to delete the award emoji from
* @param awardId the ID of the award emoji to delete
* @throws GitLabApiException if any exception occurs
*/
public void deleteIssueNoteAwardEmoji(Object projectIdOrPath, Integer issueIid, Integer noteId, Integer awardId) throws GitLabApiException {
delete(Response.Status.NO_CONTENT, null,
"projects", getProjectIdOrPath(projectIdOrPath), "issues", issueIid, "notes", noteId, "award_emoji", awardId);
}
/** /**
* Delete an award emoji from the specified note. * Delete an award emoji from the specified issue note.
* *
* <pre><code>GitLab Endpoint: DELETE /projects/:id/issues/:issue_iid/notes/:note_id/award_emoji/:award_id</code></pre> * <pre><code>GitLab Endpoint: DELETE /projects/:id/issues/:issue_iid/notes/:note_id/award_emoji/:award_id</code></pre>
* *
...@@ -281,9 +402,26 @@ public class AwardEmojiApi extends AbstractApi { ...@@ -281,9 +402,26 @@ public class AwardEmojiApi extends AbstractApi {
* @param noteId the note ID of the note to delete the award emoji from * @param noteId the note ID of the note to delete the award emoji from
* @param awardId the ID of the award emoji to delete * @param awardId the ID of the award emoji to delete
* @throws GitLabApiException if any exception occurs * @throws GitLabApiException if any exception occurs
* @deprecated use {@link #deleteIssueNoteAwardEmoji(Object, Integer, Integer, Integer)} instead
*/ */
@Deprecated
public void deleteNoteAwardEmoji(Object projectIdOrPath, Integer issueIid, Integer noteId, Integer awardId) throws GitLabApiException { public void deleteNoteAwardEmoji(Object projectIdOrPath, Integer issueIid, Integer noteId, Integer awardId) throws GitLabApiException {
deleteIssueNoteAwardEmoji(projectIdOrPath, issueIid, noteId, awardId);
}
/**
* Delete an award emoji from the specified merge request note.
*
* <pre><code>GitLab Endpoint: DELETE /projects/:id/merge_requests/:merge_request_iid/notes/:note_id/award_emoji/:award_id</code></pre>
*
* @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path
* @param mergeRequestIid the merge request IID of the merge request that owns the note
* @param noteId the note ID of the note to delete the award emoji from
* @param awardId the ID of the award emoji to delete
* @throws GitLabApiException if any exception occurs
*/
public void deleteMergeRequestNoteAwardEmoji(Object projectIdOrPath, Integer mergeRequestIid, Integer noteId, Integer awardId) throws GitLabApiException {
delete(Response.Status.NO_CONTENT, null, delete(Response.Status.NO_CONTENT, null,
"projects", getProjectIdOrPath(projectIdOrPath), "issues", issueIid, "notes", noteId, "award_emoji", awardId); "projects", getProjectIdOrPath(projectIdOrPath), "merge_requests", mergeRequestIid, "notes", noteId, "award_emoji", awardId);
} }
} }
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment