module Gitlab::Client::Notes

def create_epic_note(group, epic, body)

Returns:
  • (Gitlab::ObjectifiedHash) - Information about created note.

Parameters:
  • body (String) -- The body of a note.
  • epic (Integer) -- The ID of an epic.
  • group (Integer, String) -- The ID or name of a group.
def create_epic_note(group, epic, body)
  post("/groups/#{url_encode group}/epics/#{epic}/notes", body: { body: body })
end

def create_issue_note(project, issue, body)

Returns:
  • (Gitlab::ObjectifiedHash) - Information about created note.

Parameters:
  • body (String) -- The body of a note.
  • issue (Integer) -- The ID of an issue.
  • project (Integer, String) -- The ID or name of a project.
def create_issue_note(project, issue, body)
  post("/projects/#{url_encode project}/issues/#{issue}/notes", body: { body: body })
end

def create_merge_request_note(project, merge_request, body)

Parameters:
  • body (String) -- The content of a note.
  • merge_request (Integer) -- The ID of a merge request.
  • project (Integer) -- The ID of a project.
def create_merge_request_note(project, merge_request, body)
  post("/projects/#{url_encode project}/merge_requests/#{merge_request}/notes", body: { body: body })
end

def create_note(project, body)

Returns:
  • (Gitlab::ObjectifiedHash) - Information about created note.

Parameters:
  • body (String) -- The body of a note.
  • project (Integer, String) -- The ID or name of a project.
def create_note(project, body)
  post("/projects/#{url_encode project}/notes", body: { body: body })
end

def create_snippet_note(project, snippet, body)

Returns:
  • (Gitlab::ObjectifiedHash) - Information about created note.

Parameters:
  • body (String) -- The body of a note.
  • snippet (Integer) -- The ID of a snippet.
  • project (Integer, String) -- The ID or name of a project.
def create_snippet_note(project, snippet, body)
  post("/projects/#{url_encode project}/snippets/#{snippet}/notes", body: { body: body })
end

def delete_issue_note(project, issue, id)

Returns:
  • (Gitlab::ObjectifiedHash) -

Parameters:
  • id (Integer) -- The ID of a note.
  • issue (Integer) -- The ID of an issue.
  • project (Integer) -- The ID of a project.
def delete_issue_note(project, issue, id)
  delete("/projects/#{url_encode project}/issues/#{issue}/notes/#{id}")
end

def delete_merge_request_note(project, merge_request, id)

Returns:
  • (Gitlab::ObjectifiedHash) -

Parameters:
  • id (Integer) -- The ID of a note.
  • merge_request (Integer) -- The ID of a merge_request.
  • project (Integer) -- The ID of a project.
def delete_merge_request_note(project, merge_request, id)
  delete("/projects/#{url_encode project}/merge_requests/#{merge_request}/notes/#{id}")
end

def delete_note(project, id)

Returns:
  • (Gitlab::ObjectifiedHash) -

Parameters:
  • id (Integer) -- The ID of a note.
  • project (Integer) -- The ID of a project.
def delete_note(project, id)
  delete("/projects/#{url_encode project}/notes/#{id}")
end

def delete_snippet_note(project, snippet, id)

Returns:
  • (Gitlab::ObjectifiedHash) -

Parameters:
  • id (Integer) -- The ID of a note.
  • snippet (Integer) -- The ID of a snippet.
  • project (Integer) -- The ID of a project.
def delete_snippet_note(project, snippet, id)
  delete("/projects/#{url_encode project}/snippets/#{snippet}/notes/#{id}")
end

def edit_issue_note(project, issue, id, body)

Returns:
  • (Gitlab::ObjectifiedHash) -

Parameters:
  • body (String) -- The content of a note.
  • id (Integer) -- The ID of a note.
  • issue (Integer) -- The ID of an issue.
  • project (Integer) -- The ID of a project.
def edit_issue_note(project, issue, id, body)
  put("/projects/#{url_encode project}/issues/#{issue}/notes/#{id}", body: note_content(body))
end

def edit_merge_request_note(project, merge_request, id, body)

Returns:
  • (Gitlab::ObjectifiedHash) -

Parameters:
  • body (String) -- The content of a note.
  • id (Integer) -- The ID of a note.
  • merge_request (Integer) -- The ID of a merge_request.
  • project (Integer) -- The ID of a project.
def edit_merge_request_note(project, merge_request, id, body)
  put("/projects/#{url_encode project}/merge_requests/#{merge_request}/notes/#{id}", body: note_content(body))
end

def edit_note(project, id, body)

Returns:
  • (Gitlab::ObjectifiedHash) -

Parameters:
  • body (String) -- The content of a note.
  • id (Integer) -- The ID of a note.
  • project (Integer) -- The ID of a project.
def edit_note(project, id, body)
  put("/projects/#{url_encode project}/notes/#{id}", body: note_content(body))
end

def edit_snippet_note(project, snippet, id, body)

Returns:
  • (Gitlab::ObjectifiedHash) -

Parameters:
  • body (String) -- The content of a note.
  • id (Integer) -- The ID of a note.
  • snippet (Integer) -- The ID of a snippet.
  • project (Integer) -- The ID of a project.
def edit_snippet_note(project, snippet, id, body)
  put("/projects/#{url_encode project}/snippets/#{snippet}/notes/#{id}", body: note_content(body))
end

def epic_notes(group, epic, options = {})

Returns:
  • (Array) -

Options Hash: (**options)
  • :per_page (Integer) -- The number of results per page.
  • :page (Integer) -- The page number.

Parameters:
  • epic (Integer) -- The ID of an epic.
  • project (Integer) -- The ID of a group.
def epic_notes(group, epic, options = {})
  get("/groups/#{url_encode group}/epics/#{epic}/notes", query: options)
end

def issue_note(project, issue, id)

Returns:
  • (Gitlab::ObjectifiedHash) -

Parameters:
  • id (Integer) -- The ID of a note.
  • issue (Integer) -- The ID of an issue.
  • project (Integer) -- The ID of a project.
def issue_note(project, issue, id)
  get("/projects/#{url_encode project}/issues/#{issue}/notes/#{id}")
end

def issue_notes(project, issue, options = {})

Returns:
  • (Array) -

Options Hash: (**options)
  • :per_page (Integer) -- The number of results per page.
  • :page (Integer) -- The page number.

Parameters:
  • issue (Integer) -- The ID of an issue.
  • project (Integer) -- The ID of a project.
def issue_notes(project, issue, options = {})
  get("/projects/#{url_encode project}/issues/#{issue}/notes", query: options)
end

def merge_request_note(project, merge_request, id)

Returns:
  • (Gitlab::ObjectifiedHash) -

Parameters:
  • id (Integer) -- The ID of a note.
  • merge_request (Integer) -- The ID of a merge_request.
  • project (Integer) -- The ID of a project.
def merge_request_note(project, merge_request, id)
  get("/projects/#{url_encode project}/merge_requests/#{merge_request}/notes/#{id}")
end

def merge_request_notes(project, merge_request, options = {})

Returns:
  • (Array) -

Options Hash: (**options)
  • :per_page (Integer) -- The number of results per page.
  • :page (Integer) -- The page number.

Parameters:
  • merge_request (Integer) -- The ID of a merge request.
  • project (Integer) -- The ID of a project.
def merge_request_notes(project, merge_request, options = {})
  get("/projects/#{url_encode project}/merge_requests/#{merge_request}/notes", query: options)
end

def note(project, id)

Returns:
  • (Gitlab::ObjectifiedHash) -

Parameters:
  • id (Integer) -- The ID of a note.
  • project (Integer) -- The ID of a project.
def note(project, id)
  get("/projects/#{url_encode project}/notes/#{id}")
end

def note_content(body)

in the 'else'.
TODO: Remove this method after a couple deprecation cycles. Replace calls with the code
def note_content(body)
  if body.is_a?(Hash)
    warn 'Passing the note body as a Hash is deprecated.  You should just pass the String.'
    body
  else
    { body: body }
  end
end

def notes(project, options = {})

Returns:
  • (Array) -

Options Hash: (**options)
  • :per_page (Integer) -- The number of results per page.
  • :page (Integer) -- The page number.

Parameters:
  • project (Integer) -- The ID of a project.
def notes(project, options = {})
  get("/projects/#{url_encode project}/notes", query: options)
end

def snippet_note(project, snippet, id)

Returns:
  • (Gitlab::ObjectifiedHash) -

Parameters:
  • id (Integer) -- The ID of a note.
  • snippet (Integer) -- The ID of a snippet.
  • project (Integer) -- The ID of a project.
def snippet_note(project, snippet, id)
  get("/projects/#{url_encode project}/snippets/#{snippet}/notes/#{id}")
end

def snippet_notes(project, snippet, options = {})

Returns:
  • (Array) -

Options Hash: (**options)
  • :per_page (Integer) -- The number of results per page.
  • :page (Integer) -- The page number.

Parameters:
  • snippet (Integer) -- The ID of a snippet.
  • project (Integer) -- The ID of a project.
def snippet_notes(project, snippet, options = {})
  get("/projects/#{url_encode project}/snippets/#{snippet}/notes", query: options)
end