Class: MultiClient::CreateClientService
- Inherits:
-
Itsf::Services::V2::Service::Base
- Object
- Itsf::Services::V2::Service::Base
- MultiClient::CreateClientService
- Defined in:
- app/services/multi_client/create_client_service.rb
Defined Under Namespace
Classes: Response
Instance Attribute Summary collapse
-
#create_roles_and_permissions ⇒ Object
writeonly
attr_accessor :subdomain, :identifier, :enabled, :brand_primary_color, :logo, :user_emails, :product_ids, :create_roles_and_permissions, :request_host.
-
#enabled ⇒ Object
attr_accessor :subdomain, :identifier, :enabled, :brand_primary_color, :logo, :user_emails, :product_ids, :create_roles_and_permissions, :request_host.
-
#identifier ⇒ Object
attr_accessor :subdomain, :identifier, :enabled, :brand_primary_color, :logo, :user_emails, :product_ids, :create_roles_and_permissions, :request_host.
-
#request_host ⇒ Object
attr_accessor :subdomain, :identifier, :enabled, :brand_primary_color, :logo, :user_emails, :product_ids, :create_roles_and_permissions, :request_host.
-
#subdomain ⇒ Object
attr_accessor :subdomain, :identifier, :enabled, :brand_primary_color, :logo, :user_emails, :product_ids, :create_roles_and_permissions, :request_host.
-
#user_emails ⇒ Object
attr_accessor :subdomain, :identifier, :enabled, :brand_primary_color, :logo, :user_emails, :product_ids, :create_roles_and_permissions, :request_host.
Instance Method Summary collapse
Instance Attribute Details
#create_roles_and_permissions=(value) ⇒ Object
attr_accessor :subdomain, :identifier, :enabled, :brand_primary_color, :logo, :user_emails, :product_ids, :create_roles_and_permissions, :request_host
9 10 11 |
# File 'app/services/multi_client/create_client_service.rb', line 9 def (value) @create_roles_and_permissions = value end |
#enabled ⇒ Object
attr_accessor :subdomain, :identifier, :enabled, :brand_primary_color, :logo, :user_emails, :product_ids, :create_roles_and_permissions, :request_host
9 10 11 |
# File 'app/services/multi_client/create_client_service.rb', line 9 def enabled @enabled end |
#identifier ⇒ Object
attr_accessor :subdomain, :identifier, :enabled, :brand_primary_color, :logo, :user_emails, :product_ids, :create_roles_and_permissions, :request_host
9 10 11 |
# File 'app/services/multi_client/create_client_service.rb', line 9 def identifier @identifier end |
#request_host ⇒ Object
attr_accessor :subdomain, :identifier, :enabled, :brand_primary_color, :logo, :user_emails, :product_ids, :create_roles_and_permissions, :request_host
9 10 11 |
# File 'app/services/multi_client/create_client_service.rb', line 9 def request_host @request_host end |
#subdomain ⇒ Object
attr_accessor :subdomain, :identifier, :enabled, :brand_primary_color, :logo, :user_emails, :product_ids, :create_roles_and_permissions, :request_host
9 10 11 |
# File 'app/services/multi_client/create_client_service.rb', line 9 def subdomain @subdomain end |
#user_emails ⇒ Object
attr_accessor :subdomain, :identifier, :enabled, :brand_primary_color, :logo, :user_emails, :product_ids, :create_roles_and_permissions, :request_host
9 10 11 |
# File 'app/services/multi_client/create_client_service.rb', line 9 def user_emails @user_emails end |
Instance Method Details
#do_work ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'app/services/multi_client/create_client_service.rb', line 14 def do_work say "Running on environment #{Rails.env}" say "Validating input" return response unless valid? say "Input is valid" ActiveRecord::Base.transaction do response.client = create_client return response unless response.client.persisted? Client.with_client(response.client) do # response.client_setting = create_client_setting response.roles, response. = if == true response.users = create_users # response.licensed_products = create_licensed_products raise ActiveRecord::Rollback if errors.any? request_user_password_resets(response.users.map(&:email)) end end say "Done" respond end |