diff --git a/app/models/project.rb b/app/models/project.rb index bc15ca3fc2e64c1f129b665cc2109c71ea4ebfd8..a6039bb8cc4809689815628fccbeab686890baa8 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -734,7 +734,7 @@ class Project < ActiveRecord::Base def create_labels Label.templates.each do |label| params = label.attributes.except('id', 'template', 'created_at', 'updated_at') - Labels::CreateService.new(owner, self, params).execute + Labels::FindOrCreateService.new(owner, self, params).execute end end diff --git a/app/services/boards/lists/generate_service.rb b/app/services/boards/lists/generate_service.rb index 1d3c7f2071ba251d34d1219a25b5e1ab3b218ed6..939f9bfd068cd5a56ed4141f4a53c482bd9c464e 100644 --- a/app/services/boards/lists/generate_service.rb +++ b/app/services/boards/lists/generate_service.rb @@ -19,7 +19,7 @@ module Boards end def find_or_create_label(params) - ::Labels::CreateService.new(current_user, project, params).execute + ::Labels::FindOrCreateService.new(current_user, project, params).execute end def label_params diff --git a/app/services/issuable_base_service.rb b/app/services/issuable_base_service.rb index 4554963370ff65600149d202c323a03a1775d7b5..bb92cd80cc9bf5df48d7b24d6afb4142e6468f3e 100644 --- a/app/services/issuable_base_service.rb +++ b/app/services/issuable_base_service.rb @@ -88,7 +88,7 @@ class IssuableBaseService < BaseService return unless labels params[:label_ids] = labels.split(',').map do |label_name| - service = Labels::CreateService.new(current_user, project, title: label_name.strip) + service = Labels::FindOrCreateService.new(current_user, project, title: label_name.strip) label = service.execute label.id diff --git a/app/services/labels/create_service.rb b/app/services/labels/find_or_create_service.rb similarity index 96% rename from app/services/labels/create_service.rb rename to app/services/labels/find_or_create_service.rb index bb475ce741dbb1244e21c905c923867c2e4e5978..74291312c4e4d03d5b832fb8af62859cb434b0e1 100644 --- a/app/services/labels/create_service.rb +++ b/app/services/labels/find_or_create_service.rb @@ -1,5 +1,5 @@ module Labels - class CreateService + class FindOrCreateService def initialize(current_user, project, params = {}) @current_user = current_user @group = project.group diff --git a/app/services/labels/transfer_service.rb b/app/services/labels/transfer_service.rb index 65b4bdbaff95d100425eafc771c3dcb9fc1e9685..f91b3724aefed18674b93af7ab26548c11b20f98 100644 --- a/app/services/labels/transfer_service.rb +++ b/app/services/labels/transfer_service.rb @@ -43,7 +43,7 @@ module Labels def find_or_create_label!(label) params = label.attributes.slice('title', 'description', 'color') - new_label = CreateService.new(current_user, project, params).execute + new_label = FindOrCreateService.new(current_user, project, params).execute new_label.id end diff --git a/lib/gitlab/fogbugz_import/importer.rb b/lib/gitlab/fogbugz_import/importer.rb index f154ee689cf7fe56f5e623f8590bc2f6f9d1c755..ce4d87a07417bddf9c6a1f81e056e0dbed81148d 100644 --- a/lib/gitlab/fogbugz_import/importer.rb +++ b/lib/gitlab/fogbugz_import/importer.rb @@ -75,7 +75,7 @@ module Gitlab def create_label(name) params = { title: name, color: nice_label_color(name) } - ::Labels::CreateService.new(project.owner, project, params).execute + ::Labels::FindOrCreateService.new(project.owner, project, params).execute end def user_info(person_id) diff --git a/lib/gitlab/github_import/label_formatter.rb b/lib/gitlab/github_import/label_formatter.rb index 8ed1574c4fcef1b67281ad74ef3fd77f0a03ac50..942dfb3312b6be2c33811e52f5e720d6bfa1dae7 100644 --- a/lib/gitlab/github_import/label_formatter.rb +++ b/lib/gitlab/github_import/label_formatter.rb @@ -15,7 +15,7 @@ module Gitlab def create! params = attributes.except(:project) - service = ::Labels::CreateService.new(project.owner, project, params) + service = ::Labels::FindOrCreateService.new(project.owner, project, params) label = service.execute raise ActiveRecord::RecordInvalid.new(label) unless label.persisted? diff --git a/lib/gitlab/google_code_import/importer.rb b/lib/gitlab/google_code_import/importer.rb index 904a228aeef0a60938fd74c9930feda92472280f..b16a56540966c5d7994960bfdc93c1023d2c7d61 100644 --- a/lib/gitlab/google_code_import/importer.rb +++ b/lib/gitlab/google_code_import/importer.rb @@ -234,7 +234,7 @@ module Gitlab def create_label(name) params = { name: name, color: nice_label_color(name) } - ::Labels::CreateService.new(project.owner, project, params).execute + ::Labels::FindOrCreateService.new(project.owner, project, params).execute end def format_content(raw_content) diff --git a/lib/gitlab/issues_labels.rb b/lib/gitlab/issues_labels.rb index 6788eca7146283da6845a5e3dfee390f3c69b0b9..01a2c19ab23105e1520f86910e0a702215de13d8 100644 --- a/lib/gitlab/issues_labels.rb +++ b/lib/gitlab/issues_labels.rb @@ -19,7 +19,7 @@ module Gitlab ] labels.each do |params| - ::Labels::CreateService.new(project.owner, project).execute(params) + ::Labels::FindOrCreateService.new(project.owner, project).execute(params) end end end diff --git a/spec/services/labels/create_service_spec.rb b/spec/services/labels/find_or_create_service_spec.rb similarity index 96% rename from spec/services/labels/create_service_spec.rb rename to spec/services/labels/find_or_create_service_spec.rb index 1e4bc294b46081aa238a38f48543eb5446cc7e1e..cbfc63de81150ebae9bc1ff60e22f32f89568a64 100644 --- a/spec/services/labels/create_service_spec.rb +++ b/spec/services/labels/find_or_create_service_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe Labels::CreateService, services: true do +describe Labels::FindOrCreateService, services: true do describe '#execute' do let(:user) { create(:user) } let(:group) { create(:group) }