Class: Osso::GraphQL::Mutations::CreateIdentityProvider
- Inherits:
-
BaseMutation
- Object
- GraphQL::Schema::RelayClassicMutation
- BaseMutation
- Osso::GraphQL::Mutations::CreateIdentityProvider
show all
- Defined in:
- lib/osso/graphql/mutations/create_identity_provider.rb
Instance Method Summary
collapse
#account_domain, #admin_ready?, #domain_ready?, #field_errors, #internal_ready?, #provider_domain, #ready?, #response_data, #response_error
Instance Method Details
#domain(enterprise_account_id:, **_args) ⇒ Object
35
36
37
|
# File 'lib/osso/graphql/mutations/create_identity_provider.rb', line 35
def domain(enterprise_account_id:, **_args)
enterprise_account(enterprise_account_id: enterprise_account_id)&.domain
end
|
#enterprise_account(enterprise_account_id:) ⇒ Object
39
40
41
|
# File 'lib/osso/graphql/mutations/create_identity_provider.rb', line 39
def enterprise_account(enterprise_account_id:)
@enterprise_account ||= Osso::Models::EnterpriseAccount.find(enterprise_account_id)
end
|
#resolve(enterprise_account_id:, oauth_client_id:, service: nil) ⇒ Object
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
# File 'lib/osso/graphql/mutations/create_identity_provider.rb', line 16
def resolve(enterprise_account_id:, oauth_client_id:, service: nil)
customer = enterprise_account(enterprise_account_id: enterprise_account_id)
identity_provider = customer.identity_providers.build(
service: service,
domain: customer.domain,
oauth_client_id: oauth_client_id,
)
if identity_provider.save
Osso::Analytics.capture(email: context[:email], event: self.class.name.demodulize, properties: {
service: service, enterprise_account_id: enterprise_account_id, oauth_client_id: oauth_client_id
})
return response_data(identity_provider: identity_provider)
end
response_error(identity_provider.errors)
end
|