summaryrefslogtreecommitdiff
path: root/lib/api/pages_domains.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/api/pages_domains.rb')
-rw-r--r--lib/api/pages_domains.rb12
1 files changed, 9 insertions, 3 deletions
diff --git a/lib/api/pages_domains.rb b/lib/api/pages_domains.rb
index 34d3a5150da..9cf61967ba4 100644
--- a/lib/api/pages_domains.rb
+++ b/lib/api/pages_domains.rb
@@ -106,7 +106,9 @@ module API
pages_domain_params = declared(params, include_parent_namespaces: false)
- pages_domain = user_project.pages_domains.create(pages_domain_params)
+ pages_domain = ::PagesDomains::CreateService
+ .new(user_project, current_user, pages_domain_params)
+ .execute
if pages_domain.persisted?
present pages_domain, with: Entities::PagesDomain
@@ -136,7 +138,9 @@ module API
pages_domain_params.delete(:user_provided_key)
end
- if pages_domain.update(pages_domain_params)
+ service = ::PagesDomains::UpdateService.new(user_project, current_user, pages_domain_params)
+
+ if service.execute(pages_domain)
present pages_domain, with: Entities::PagesDomain
else
render_validation_error!(pages_domain)
@@ -150,7 +154,9 @@ module API
delete ":id/pages/domains/:domain", requirements: PAGES_DOMAINS_ENDPOINT_REQUIREMENTS do
authorize! :update_pages, user_project
- pages_domain.destroy
+ ::PagesDomains::DeleteService
+ .new(user_project, current_user)
+ .execute(pages_domain)
no_content!
end