Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
1
Merge Requests
1
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
gitlab-ce
Commits
626e79b6
Commit
626e79b6
authored
Feb 06, 2017
by
Robert Schilling
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Split V3 entities into a separate file
parent
5985b557
Changes
6
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
95 additions
and
93 deletions
+95
-93
lib/api/entities.rb
lib/api/entities.rb
+0
-14
lib/api/v3/entities.rb
lib/api/v3/entities.rb
+16
-0
lib/api/v3/issues.rb
lib/api/v3/issues.rb
+14
-14
lib/api/v3/merge_requests.rb
lib/api/v3/merge_requests.rb
+20
-20
lib/api/v3/project_snippets.rb
lib/api/v3/project_snippets.rb
+8
-8
lib/api/v3/projects.rb
lib/api/v3/projects.rb
+37
-37
No files found.
lib/api/entities.rb
View file @
626e79b6
...
...
@@ -694,19 +694,5 @@ module API
expose
:id
,
:message
,
:starts_at
,
:ends_at
,
:color
,
:font
expose
:active?
,
as: :active
end
# Entities for the deprecated V3 API
class
ProjectSnippetV3
<
Grape
::
Entity
expose
:id
,
:title
,
:file_name
expose
:author
,
using:
Entities
::
UserBasic
expose
:updated_at
,
:created_at
# TODO (rspeicher): Deprecated; remove in 9.0
expose
(
:expires_at
)
{
|
snippet
|
nil
}
expose
:web_url
do
|
snippet
,
options
|
Gitlab
::
UrlBuilder
.
build
(
snippet
)
end
end
end
end
lib/api/v3/entities.rb
0 → 100644
View file @
626e79b6
module
API
module
V3
module
Entities
class
ProjectSnippet
<
Grape
::
Entity
expose
:id
,
:title
,
:file_name
expose
:author
,
using:
::
API
::
Entities
::
UserBasic
expose
:updated_at
,
:created_at
expose
(
:expires_at
)
{
|
snippet
|
nil
}
expose
:web_url
do
|
snippet
,
options
|
Gitlab
::
UrlBuilder
.
build
(
snippet
)
end
end
end
end
end
lib/api/v3/issues.rb
View file @
626e79b6
...
...
@@ -50,7 +50,7 @@ module API
resource
:issues
do
desc
"Get currently authenticated user's issues"
do
success
Entities
::
Issue
success
::
API
::
Entities
::
Issue
end
params
do
optional
:state
,
type:
String
,
values:
%w[opened closed all]
,
default:
'all'
,
...
...
@@ -60,7 +60,7 @@ module API
get
do
issues
=
find_issues
(
scope:
'authored'
)
present
paginate
(
issues
),
with:
Entities
::
Issue
,
current_user:
current_user
present
paginate
(
issues
),
with:
::
API
::
Entities
::
Issue
,
current_user:
current_user
end
end
...
...
@@ -69,7 +69,7 @@ module API
end
resource
:groups
do
desc
'Get a list of group issues'
do
success
Entities
::
Issue
success
::
API
::
Entities
::
Issue
end
params
do
optional
:state
,
type:
String
,
values:
%w[opened closed all]
,
default:
'opened'
,
...
...
@@ -81,7 +81,7 @@ module API
issues
=
find_issues
(
group_id:
group
.
id
,
state:
params
[
:state
]
||
'opened'
,
match_all_labels:
true
)
present
paginate
(
issues
),
with:
Entities
::
Issue
,
current_user:
current_user
present
paginate
(
issues
),
with:
::
API
::
Entities
::
Issue
,
current_user:
current_user
end
end
...
...
@@ -93,7 +93,7 @@ module API
desc
'Get a list of project issues'
do
detail
'iid filter is deprecated have been removed on V4'
success
Entities
::
Issue
success
::
API
::
Entities
::
Issue
end
params
do
optional
:state
,
type:
String
,
values:
%w[opened closed all]
,
default:
'all'
,
...
...
@@ -106,22 +106,22 @@ module API
issues
=
find_issues
(
project_id:
project
.
id
)
present
paginate
(
issues
),
with:
Entities
::
Issue
,
current_user:
current_user
,
project:
user_project
present
paginate
(
issues
),
with:
::
API
::
Entities
::
Issue
,
current_user:
current_user
,
project:
user_project
end
desc
'Get a single project issue'
do
success
Entities
::
Issue
success
::
API
::
Entities
::
Issue
end
params
do
requires
:issue_id
,
type:
Integer
,
desc:
'The ID of a project issue'
end
get
":id/issues/:issue_id"
do
issue
=
find_project_issue
(
params
[
:issue_id
])
present
issue
,
with:
Entities
::
Issue
,
current_user:
current_user
,
project:
user_project
present
issue
,
with:
::
API
::
Entities
::
Issue
,
current_user:
current_user
,
project:
user_project
end
desc
'Create a new project issue'
do
success
Entities
::
Issue
success
::
API
::
Entities
::
Issue
end
params
do
requires
:title
,
type:
String
,
desc:
'The title of an issue'
...
...
@@ -153,14 +153,14 @@ module API
end
if
issue
.
valid?
present
issue
,
with:
Entities
::
Issue
,
current_user:
current_user
,
project:
user_project
present
issue
,
with:
::
API
::
Entities
::
Issue
,
current_user:
current_user
,
project:
user_project
else
render_validation_error!
(
issue
)
end
end
desc
'Update an existing issue'
do
success
Entities
::
Issue
success
::
API
::
Entities
::
Issue
end
params
do
requires
:issue_id
,
type:
Integer
,
desc:
'The ID of a project issue'
...
...
@@ -186,14 +186,14 @@ module API
declared_params
(
include_missing:
false
)).
execute
(
issue
)
if
issue
.
valid?
present
issue
,
with:
Entities
::
Issue
,
current_user:
current_user
,
project:
user_project
present
issue
,
with:
::
API
::
Entities
::
Issue
,
current_user:
current_user
,
project:
user_project
else
render_validation_error!
(
issue
)
end
end
desc
'Move an existing issue'
do
success
Entities
::
Issue
success
::
API
::
Entities
::
Issue
end
params
do
requires
:issue_id
,
type:
Integer
,
desc:
'The ID of a project issue'
...
...
@@ -208,7 +208,7 @@ module API
begin
issue
=
::
Issues
::
MoveService
.
new
(
user_project
,
current_user
).
execute
(
issue
,
new_project
)
present
issue
,
with:
Entities
::
Issue
,
current_user:
current_user
,
project:
user_project
present
issue
,
with:
::
API
::
Entities
::
Issue
,
current_user:
current_user
,
project:
user_project
rescue
::
Issues
::
MoveService
::
MoveError
=>
error
render_api_error!
(
error
.
message
,
400
)
end
...
...
lib/api/v3/merge_requests.rb
View file @
626e79b6
...
...
@@ -39,7 +39,7 @@ module API
desc
'List merge requests'
do
detail
'iid filter is deprecated have been removed on V4'
success
Entities
::
MergeRequest
success
::
API
::
Entities
::
MergeRequest
end
params
do
optional
:state
,
type:
String
,
values:
%w[opened closed merged all]
,
default:
'all'
,
...
...
@@ -66,11 +66,11 @@ module API
end
merge_requests
=
merge_requests
.
reorder
(
params
[
:order_by
]
=>
params
[
:sort
])
present
paginate
(
merge_requests
),
with:
Entities
::
MergeRequest
,
current_user:
current_user
,
project:
user_project
present
paginate
(
merge_requests
),
with:
::
API
::
Entities
::
MergeRequest
,
current_user:
current_user
,
project:
user_project
end
desc
'Create a merge request'
do
success
Entities
::
MergeRequest
success
::
API
::
Entities
::
MergeRequest
end
params
do
requires
:title
,
type:
String
,
desc:
'The title of the merge request'
...
...
@@ -89,7 +89,7 @@ module API
merge_request
=
::
MergeRequests
::
CreateService
.
new
(
user_project
,
current_user
,
mr_params
).
execute
if
merge_request
.
valid?
present
merge_request
,
with:
Entities
::
MergeRequest
,
current_user:
current_user
,
project:
user_project
present
merge_request
,
with:
::
API
::
Entities
::
MergeRequest
,
current_user:
current_user
,
project:
user_project
else
handle_merge_request_errors!
merge_request
.
errors
end
...
...
@@ -114,34 +114,34 @@ module API
if
status
==
:deprecated
detail
DEPRECATION_MESSAGE
end
success
Entities
::
MergeRequest
success
::
API
::
Entities
::
MergeRequest
end
get
path
do
merge_request
=
find_merge_request_with_access
(
params
[
:merge_request_id
])
present
merge_request
,
with:
Entities
::
MergeRequest
,
current_user:
current_user
,
project:
user_project
present
merge_request
,
with:
::
API
::
Entities
::
MergeRequest
,
current_user:
current_user
,
project:
user_project
end
desc
'Get the commits of a merge request'
do
success
Entities
::
RepoCommit
success
::
API
::
Entities
::
RepoCommit
end
get
"
#{
path
}
/commits"
do
merge_request
=
find_merge_request_with_access
(
params
[
:merge_request_id
])
present
merge_request
.
commits
,
with:
Entities
::
RepoCommit
present
merge_request
.
commits
,
with:
::
API
::
Entities
::
RepoCommit
end
desc
'Show the merge request changes'
do
success
Entities
::
MergeRequestChanges
success
::
API
::
Entities
::
MergeRequestChanges
end
get
"
#{
path
}
/changes"
do
merge_request
=
find_merge_request_with_access
(
params
[
:merge_request_id
])
present
merge_request
,
with:
Entities
::
MergeRequestChanges
,
current_user:
current_user
present
merge_request
,
with:
::
API
::
Entities
::
MergeRequestChanges
,
current_user:
current_user
end
desc
'Update a merge request'
do
success
Entities
::
MergeRequest
success
::
API
::
Entities
::
MergeRequest
end
params
do
optional
:title
,
type:
String
,
allow_blank:
false
,
desc:
'The title of the merge request'
...
...
@@ -162,14 +162,14 @@ module API
merge_request
=
::
MergeRequests
::
UpdateService
.
new
(
user_project
,
current_user
,
mr_params
).
execute
(
merge_request
)
if
merge_request
.
valid?
present
merge_request
,
with:
Entities
::
MergeRequest
,
current_user:
current_user
,
project:
user_project
present
merge_request
,
with:
::
API
::
Entities
::
MergeRequest
,
current_user:
current_user
,
project:
user_project
else
handle_merge_request_errors!
merge_request
.
errors
end
end
desc
'Merge a merge request'
do
success
Entities
::
MergeRequest
success
::
API
::
Entities
::
MergeRequest
end
params
do
optional
:merge_commit_message
,
type:
String
,
desc:
'Custom merge commit message'
...
...
@@ -209,11 +209,11 @@ module API
.
execute
(
merge_request
)
end
present
merge_request
,
with:
Entities
::
MergeRequest
,
current_user:
current_user
,
project:
user_project
present
merge_request
,
with:
::
API
::
Entities
::
MergeRequest
,
current_user:
current_user
,
project:
user_project
end
desc
'Cancel merge if "Merge When Pipeline Succeeds" is enabled'
do
success
Entities
::
MergeRequest
success
::
API
::
Entities
::
MergeRequest
end
post
"
#{
path
}
/cancel_merge_when_build_succeeds"
do
merge_request
=
find_project_merge_request
(
params
[
:merge_request_id
])
...
...
@@ -227,19 +227,19 @@ module API
desc
'Get the comments of a merge request'
do
detail
'Duplicate. DEPRECATED and HAS BEEN REMOVED in V4'
success
Entities
::
MRNote
success
::
API
::
Entities
::
MRNote
end
params
do
use
:pagination
end
get
"
#{
path
}
/comments"
do
merge_request
=
find_merge_request_with_access
(
params
[
:merge_request_id
])
present
paginate
(
merge_request
.
notes
.
fresh
),
with:
Entities
::
MRNote
present
paginate
(
merge_request
.
notes
.
fresh
),
with:
::
API
::
Entities
::
MRNote
end
desc
'Post a comment to a merge request'
do
detail
'Duplicate. DEPRECATED and HAS BEEN REMOVED in V4'
success
Entities
::
MRNote
success
::
API
::
Entities
::
MRNote
end
params
do
requires
:note
,
type:
String
,
desc:
'The text of the comment'
...
...
@@ -256,14 +256,14 @@ module API
note
=
::
Notes
::
CreateService
.
new
(
user_project
,
current_user
,
opts
).
execute
if
note
.
save
present
note
,
with:
Entities
::
MRNote
present
note
,
with:
::
API
::
Entities
::
MRNote
else
render_api_error!
(
"Failed to save note
#{
note
.
errors
.
messages
}
"
,
400
)
end
end
desc
'List issues that will be closed on merge'
do
success
Entities
::
MRNote
success
::
API
::
Entities
::
MRNote
end
params
do
use
:pagination
...
...
lib/api/v3/project_snippets.rb
View file @
626e79b6
...
...
@@ -24,28 +24,28 @@ module API
end
desc
'Get all project snippets'
do
success
Entities
::
ProjectSnippetV3
success
::
API
::
V3
::
Entities
::
ProjectSnippet
end
params
do
use
:pagination
end
get
":id/snippets"
do
present
paginate
(
snippets_for_current_user
),
with:
Entities
::
ProjectSnippetV3
present
paginate
(
snippets_for_current_user
),
with:
::
API
::
V3
::
Entities
::
ProjectSnippet
end
desc
'Get a single project snippet'
do
success
Entities
::
ProjectSnippetV3
success
::
API
::
V3
::
Entities
::
ProjectSnippet
end
params
do
requires
:snippet_id
,
type:
Integer
,
desc:
'The ID of a project snippet'
end
get
":id/snippets/:snippet_id"
do
snippet
=
snippets_for_current_user
.
find
(
params
[
:snippet_id
])
present
snippet
,
with:
Entities
::
ProjectSnippetV3
present
snippet
,
with:
::
API
::
V3
::
Entities
::
ProjectSnippet
end
desc
'Create a new project snippet'
do
success
Entities
::
ProjectSnippetV3
success
::
API
::
V3
::
Entities
::
ProjectSnippet
end
params
do
requires
:title
,
type:
String
,
desc:
'The title of the snippet'
...
...
@@ -65,14 +65,14 @@ module API
snippet
=
CreateSnippetService
.
new
(
user_project
,
current_user
,
snippet_params
).
execute
if
snippet
.
persisted?
present
snippet
,
with:
Entities
::
ProjectSnippetV3
present
snippet
,
with:
::
API
::
V3
::
Entities
::
ProjectSnippet
else
render_validation_error!
(
snippet
)
end
end
desc
'Update an existing project snippet'
do
success
Entities
::
ProjectSnippetV3
success
::
API
::
V3
::
Entities
::
ProjectSnippet
end
params
do
requires
:snippet_id
,
type:
Integer
,
desc:
'The ID of a project snippet'
...
...
@@ -99,7 +99,7 @@ module API
snippet_params
).
execute
if
snippet
.
persisted?
present
snippet
,
with:
Entities
::
ProjectSnippetV3
present
snippet
,
with:
::
API
::
V3
::
Entities
::
ProjectSnippet
else
render_validation_error!
(
snippet
)
end
...
...
lib/api/v3/projects.rb
View file @
626e79b6
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment