stormpath-sdk 1.6.0 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +21 -0
  3. data/CHANGES.md +11 -0
  4. data/README.md +23 -25
  5. data/lib/stormpath-sdk.rb +11 -2
  6. data/lib/stormpath-sdk/api_key.rb +0 -1
  7. data/lib/stormpath-sdk/auth/basic_authenticator.rb +7 -7
  8. data/lib/stormpath-sdk/auth/basic_login_attempt.rb +7 -11
  9. data/lib/stormpath-sdk/auth/create_factor.rb +1 -1
  10. data/lib/stormpath-sdk/auth/register_service_provider.rb +41 -0
  11. data/lib/stormpath-sdk/auth/username_password_request.rb +3 -5
  12. data/lib/stormpath-sdk/cache/cache.rb +3 -3
  13. data/lib/stormpath-sdk/cache/cache_entry.rb +2 -2
  14. data/lib/stormpath-sdk/cache/cache_manager.rb +3 -4
  15. data/lib/stormpath-sdk/cache/cache_stats.rb +1 -3
  16. data/lib/stormpath-sdk/cache/disabled_cache_store.rb +5 -8
  17. data/lib/stormpath-sdk/cache/memory_store.rb +1 -1
  18. data/lib/stormpath-sdk/cache/redis_store.rb +4 -4
  19. data/lib/stormpath-sdk/client.rb +35 -33
  20. data/lib/stormpath-sdk/data_store.rb +278 -257
  21. data/lib/stormpath-sdk/error.rb +18 -7
  22. data/lib/stormpath-sdk/http/authc/sauthc1_signer.rb +76 -82
  23. data/lib/stormpath-sdk/http/http_client_request_executor.rb +10 -8
  24. data/lib/stormpath-sdk/http/response.rb +5 -7
  25. data/lib/stormpath-sdk/id_site/id_site_result.rb +5 -6
  26. data/lib/stormpath-sdk/oauth/access_token_authentication_result.rb +5 -9
  27. data/lib/stormpath-sdk/oauth/authenticator.rb +2 -2
  28. data/lib/stormpath-sdk/oauth/error.rb +4 -4
  29. data/lib/stormpath-sdk/oauth/id_site_grant_request.rb +1 -1
  30. data/lib/stormpath-sdk/oauth/password_grant_request.rb +1 -1
  31. data/lib/stormpath-sdk/oauth/refresh_grant_request.rb +2 -2
  32. data/lib/stormpath-sdk/oauth/stormpath_grant_request.rb +2 -2
  33. data/lib/stormpath-sdk/provider/account_access.rb +0 -2
  34. data/lib/stormpath-sdk/provider/account_result.rb +1 -2
  35. data/lib/stormpath-sdk/provider/facebook/facebook_provider.rb +6 -2
  36. data/lib/stormpath-sdk/provider/facebook/facebook_provider_data.rb +7 -3
  37. data/lib/stormpath-sdk/provider/github/github_provider.rb +6 -2
  38. data/lib/stormpath-sdk/provider/github/github_provider_data.rb +6 -2
  39. data/lib/stormpath-sdk/provider/google/google_provider.rb +7 -3
  40. data/lib/stormpath-sdk/provider/google/google_provider_data.rb +6 -2
  41. data/lib/stormpath-sdk/provider/linkedin/linkedin_provider.rb +6 -2
  42. data/lib/stormpath-sdk/provider/linkedin/linkedin_provider_data.rb +6 -2
  43. data/lib/stormpath-sdk/provider/provider.rb +8 -4
  44. data/lib/stormpath-sdk/provider/provider_data.rb +6 -2
  45. data/lib/stormpath-sdk/provider/saml/saml_provider.rb +10 -4
  46. data/lib/stormpath-sdk/provider/saml/saml_provider_data.rb +6 -3
  47. data/lib/stormpath-sdk/provider/stormpath/stormpath_provider.rb +6 -2
  48. data/lib/stormpath-sdk/provider/stormpath/stormpath_provider_data.rb +6 -2
  49. data/lib/stormpath-sdk/provider/twitter/twitter_provider.rb +6 -2
  50. data/lib/stormpath-sdk/provider/twitter/twitter_provider_data.rb +6 -2
  51. data/lib/stormpath-sdk/resource/account.rb +46 -40
  52. data/lib/stormpath-sdk/resource/account_link.rb +9 -5
  53. data/lib/stormpath-sdk/resource/account_linking_policy.rb +8 -4
  54. data/lib/stormpath-sdk/resource/account_membership.rb +1 -1
  55. data/lib/stormpath-sdk/resource/account_overrides.rb +20 -16
  56. data/lib/stormpath-sdk/resource/account_store.rb +15 -11
  57. data/lib/stormpath-sdk/resource/account_store_mapping.rb +14 -13
  58. data/lib/stormpath-sdk/resource/application.rb +147 -136
  59. data/lib/stormpath-sdk/resource/application_web_config.rb +11 -7
  60. data/lib/stormpath-sdk/resource/associations.rb +36 -43
  61. data/lib/stormpath-sdk/resource/attribute_statement_mapping_rules.rb +8 -0
  62. data/lib/stormpath-sdk/resource/base.rb +201 -200
  63. data/lib/stormpath-sdk/resource/challenge.rb +12 -8
  64. data/lib/stormpath-sdk/resource/collection.rb +77 -76
  65. data/lib/stormpath-sdk/resource/custom_data.rb +60 -61
  66. data/lib/stormpath-sdk/resource/custom_data_hash_methods.rb +28 -25
  67. data/lib/stormpath-sdk/resource/custom_data_storage.rb +18 -16
  68. data/lib/stormpath-sdk/resource/directory.rb +37 -60
  69. data/lib/stormpath-sdk/resource/email_verification_token.rb +7 -3
  70. data/lib/stormpath-sdk/resource/error.rb +8 -4
  71. data/lib/stormpath-sdk/resource/expansion.rb +22 -20
  72. data/lib/stormpath-sdk/resource/factor.rb +12 -8
  73. data/lib/stormpath-sdk/resource/field.rb +8 -4
  74. data/lib/stormpath-sdk/resource/group.rb +21 -16
  75. data/lib/stormpath-sdk/resource/group_membership.rb +7 -5
  76. data/lib/stormpath-sdk/resource/instance.rb +10 -6
  77. data/lib/stormpath-sdk/resource/linked_account.rb +7 -3
  78. data/lib/stormpath-sdk/resource/oauth_policy.rb +7 -3
  79. data/lib/stormpath-sdk/resource/organization.rb +14 -10
  80. data/lib/stormpath-sdk/resource/organization_account_store_mapping.rb +8 -4
  81. data/lib/stormpath-sdk/resource/password_reset_token.rb +9 -5
  82. data/lib/stormpath-sdk/resource/phone.rb +8 -4
  83. data/lib/stormpath-sdk/resource/registered_saml_service_provider.rb +8 -0
  84. data/lib/stormpath-sdk/resource/saml_identity_provider.rb +14 -0
  85. data/lib/stormpath-sdk/resource/saml_identity_provider_metadata.rb +9 -0
  86. data/lib/stormpath-sdk/resource/saml_policy.rb +10 -0
  87. data/lib/stormpath-sdk/resource/saml_service_provider.rb +7 -0
  88. data/lib/stormpath-sdk/{provider/saml/saml_mapping_rules.rb → resource/saml_service_provider_metadata.rb} +6 -5
  89. data/lib/stormpath-sdk/resource/saml_service_provider_registration.rb +11 -0
  90. data/lib/stormpath-sdk/resource/schema.rb +8 -4
  91. data/lib/stormpath-sdk/resource/tenant.rb +11 -8
  92. data/lib/stormpath-sdk/resource/user_info_mapping_rules.rb +7 -3
  93. data/lib/stormpath-sdk/resource/utils.rb +7 -10
  94. data/lib/stormpath-sdk/resource/verification_email.rb +7 -3
  95. data/lib/stormpath-sdk/resource/x_509_certificate.rb +7 -0
  96. data/lib/stormpath-sdk/util/assert.rb +1 -3
  97. data/lib/stormpath-sdk/version.rb +2 -2
  98. data/spec/auth/basic_authenticator_spec.rb +28 -24
  99. data/spec/auth/register_service_provider_spec.rb +68 -0
  100. data/spec/auth/sauthc1_signer_spec.rb +8 -4
  101. data/spec/cache/cache_entry_spec.rb +28 -29
  102. data/spec/cache/cache_spec.rb +9 -9
  103. data/spec/cache/cache_stats_spec.rb +1 -1
  104. data/spec/client_spec.rb +63 -63
  105. data/spec/data_store_spec.rb +23 -14
  106. data/spec/oauth/access_token_authentication_result_spec.rb +8 -2
  107. data/spec/provider/account_resolver_spec.rb +6 -4
  108. data/spec/provider/provider_spec.rb +6 -6
  109. data/spec/resource/account_creation_policy_spec.rb +1 -1
  110. data/spec/resource/account_link_spec.rb +7 -15
  111. data/spec/resource/account_spec.rb +17 -17
  112. data/spec/resource/account_store_mapping_spec.rb +16 -22
  113. data/spec/resource/account_store_spec.rb +3 -3
  114. data/spec/resource/application_spec.rb +324 -330
  115. data/spec/resource/base_spec.rb +7 -31
  116. data/spec/resource/collection_spec.rb +63 -114
  117. data/spec/resource/custom_data_spec.rb +1 -1
  118. data/spec/resource/directory_spec.rb +91 -87
  119. data/spec/resource/expansion_spec.rb +10 -10
  120. data/spec/resource/factor_spec.rb +1 -1
  121. data/spec/resource/group_spec.rb +1 -1
  122. data/spec/resource/linked_account_spec.rb +7 -7
  123. data/spec/resource/organization_spec.rb +12 -11
  124. data/spec/resource/phone_spec.rb +1 -1
  125. data/spec/resource/registered_saml_service_provider_spec.rb +35 -0
  126. data/spec/resource/saml_identity_provider_metadata_spec.rb +27 -0
  127. data/spec/resource/saml_identity_provider_spec.rb +94 -0
  128. data/spec/resource/saml_policy_spec.rb +27 -0
  129. data/spec/resource/saml_service_provider_registration_spec.rb +58 -0
  130. data/spec/resource/saml_service_provider_spec.rb +19 -0
  131. data/spec/resource/status_spec.rb +4 -3
  132. data/spec/resource/tenant_spec.rb +4 -6
  133. data/spec/spec_helper.rb +1 -1
  134. data/spec/support/custom_data_save_period.rb +4 -0
  135. data/spec/support/custom_data_storage_behavior.rb +7 -8
  136. data/spec/support/mocked_provider_accounts.rb +101 -101
  137. data/spec/support/mocked_saml_responses.rb +130 -0
  138. data/spec/support/resource_factory.rb +4 -4
  139. data/spec/support/resource_helpers.rb +10 -4
  140. data/spec/support/resource_matchers.rb +4 -4
  141. data/spec/support/test_request_executor.rb +2 -2
  142. metadata +21 -8
  143. data/lib/stormpath-sdk/provider/saml/saml_provider_metadata.rb +0 -19
  144. data/spec/fixtures/response/create_saml_directory.json +0 -26
  145. data/spec/fixtures/response/create_saml_directory_mapping_rules.json +0 -12
  146. data/spec/fixtures/response/get_saml_directory_provider.json +0 -16
  147. data/spec/fixtures/response/get_saml_directory_provider_metadata.json +0 -12
@@ -1,63 +1,40 @@
1
- #
2
- # Copyright 2012 Stormpath, Inc.
3
- #
4
- # Licensed under the Apache License, Version 2.0 (the "License");
5
- # you may not use this file except in compliance with the License.
6
- # You may obtain a copy of the License at
7
- #
8
- # http://www.apache.org/licenses/LICENSE-2.0
9
- #
10
- # Unless required by applicable law or agreed to in writing, software
11
- # distributed under the License is distributed on an "AS IS" BASIS,
12
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- # See the License for the specific language governing permissions and
14
- # limitations under the License.
15
- #
16
- class Stormpath::Resource::Directory < Stormpath::Resource::Instance
17
- include Stormpath::Resource::CustomDataStorage
18
- include Stormpath::Resource::AccountOverrides
19
-
20
- prop_accessor :name, :description, :status
21
- prop_reader :created_at, :modified_at
22
-
23
- belongs_to :tenant
24
-
25
- has_many :accounts, can: [:get, :create]
26
- has_many :groups, can: [:get, :create]
27
- has_many :organizations, can: :get
28
- has_one :custom_data
29
- has_one :password_policy
30
- has_one :account_creation_policy
31
- has_one :account_schema, class_name: :schema
32
- delegate :user_info_mapping_rules, to: :provider
33
-
34
- def provider
35
- internal_instance = instance_variable_get "@_provider"
36
- return internal_instance if internal_instance
37
-
38
- provider_href = self.href + '/provider'
39
-
40
- clazz_proc = Proc.new do |data|
41
- provider_id = data['providerId']
42
- "Stormpath::Provider::#{provider_id.capitalize}Provider".constantize
1
+ module Stormpath
2
+ module Resource
3
+ class Directory < Stormpath::Resource::Instance
4
+ include Stormpath::Resource::CustomDataStorage
5
+ include Stormpath::Resource::AccountOverrides
6
+
7
+ prop_accessor :name, :description, :status
8
+ prop_reader :created_at, :modified_at
9
+
10
+ belongs_to :tenant
11
+
12
+ has_many :accounts, can: [:get, :create]
13
+ has_many :groups, can: [:get, :create]
14
+ has_many :organizations, can: :get
15
+ has_one :custom_data
16
+ has_one :password_policy
17
+ has_one :account_creation_policy
18
+ has_one :account_schema, class_name: :schema
19
+
20
+ delegate :attribute_statement_mapping_rules, to: :provider
21
+ delegate :service_provider_metadata, to: :provider
22
+ delegate :user_info_mapping_rules, to: :provider
23
+
24
+ def provider
25
+ internal_instance = instance_variable_get '@_provider'
26
+ return internal_instance if internal_instance
27
+
28
+ provider_href = href + '/provider'
29
+
30
+ clazz_proc = proc do |data|
31
+ provider_id = data['providerId']
32
+ "Stormpath::Provider::#{provider_id.capitalize}Provider".constantize
33
+ end
34
+
35
+ provider = data_store.get_resource provider_href, clazz_proc
36
+ instance_variable_set '@_provider', provider
37
+ end
43
38
  end
44
-
45
- provider = data_store.get_resource provider_href, clazz_proc
46
- instance_variable_set "@_provider", provider
47
- end
48
-
49
- def provider_metadata
50
- metadata_href = provider.service_provider_metadata['href']
51
- data_store.get_resource metadata_href, Stormpath::Provider::SamlProviderMetadata
52
- end
53
-
54
- def statement_mapping_rules
55
- metadata_href = provider.attribute_statement_mapping_rules['href']
56
- data_store.get_resource metadata_href, Stormpath::Provider::SamlMappingRules
57
- end
58
-
59
- def create_attribute_mappings(mappings)
60
- mappings.set_options(href: provider.attribute_statement_mapping_rules['href'])
61
- data_store.create mappings.href, mappings, Stormpath::Provider::SamlMappingRules
62
39
  end
63
40
  end
@@ -13,8 +13,12 @@
13
13
  # See the License for the specific language governing permissions and
14
14
  # limitations under the License.
15
15
  #
16
- class Stormpath::Resource::EmailVerificationToken < Stormpath::Resource::Instance
17
- def token
18
- href.split('/').last
16
+ module Stormpath
17
+ module Resource
18
+ class EmailVerificationToken < Stormpath::Resource::Instance
19
+ def token
20
+ href.split('/').last
21
+ end
22
+ end
19
23
  end
20
24
  end
@@ -13,10 +13,14 @@
13
13
  # See the License for the specific language governing permissions and
14
14
  # limitations under the License.
15
15
  #
16
- class Stormpath::Resource::Error < Stormpath::Resource::Base
17
- prop_reader :status, :code, :message, :developer_message, :more_info, :request_id
16
+ module Stormpath
17
+ module Resource
18
+ class Error < Stormpath::Resource::Base
19
+ prop_reader :status, :code, :message, :developer_message, :more_info, :request_id
18
20
 
19
- def initialize(body)
20
- super body, nil
21
+ def initialize(body)
22
+ super(body, nil)
23
+ end
24
+ end
21
25
  end
22
26
  end
@@ -13,31 +13,33 @@
13
13
  # See the License for the specific language governing permissions and
14
14
  # limitations under the License.
15
15
  #
16
- class Stormpath::Resource::Expansion
17
- attr_reader :query
16
+ module Stormpath
17
+ module Resource
18
+ class Expansion
19
+ attr_reader :query
18
20
 
19
- def initialize *names
20
- @query = {}
21
- @properties = {}
21
+ def initialize(*names)
22
+ @query = {}
23
+ @properties = {}
22
24
 
23
- names.each { |name| add_property name }
24
- end
25
+ names.each { |name| add_property name }
26
+ end
25
27
 
26
- def add_property name, options = {}
27
- @properties[name] = if options[:offset] || options[:limit]
28
- pagination = []
29
- pagination.push("offset:#{options[:offset]}") if options[:offset]
30
- pagination.push("limit:#{options[:limit]}") if options[:limit]
28
+ def add_property(name, options = {})
29
+ @properties[name] = if options[:offset] || options[:limit]
30
+ pagination = []
31
+ pagination.push("offset:#{options[:offset]}") if options[:offset]
32
+ pagination.push("limit:#{options[:limit]}") if options[:limit]
31
33
 
32
- "#{name}(#{pagination.join(',')})"
33
- else
34
- name
35
- end
36
- end
34
+ "#{name}(#{pagination.join(',')})"
35
+ else
36
+ name
37
+ end
38
+ end
37
39
 
38
- def to_query
39
- if @properties.any?
40
- { expand: @properties.values.join(',') }
40
+ def to_query
41
+ { expand: @properties.values.join(',') } if @properties.any?
42
+ end
41
43
  end
42
44
  end
43
45
  end
@@ -13,14 +13,18 @@
13
13
  # See the License for the specific language governing permissions and
14
14
  # limitations under the License.
15
15
  #
16
- class Stormpath::Resource::Factor < Stormpath::Resource::Instance
17
- prop_accessor :type, :account_name, :issuer, :status
18
- prop_reader :verification_status, :secret, :key_uri, :base64_q_r_image
19
- alias_method :qr_code, :base64_q_r_image
16
+ module Stormpath
17
+ module Resource
18
+ class Factor < Stormpath::Resource::Instance
19
+ prop_accessor :type, :account_name, :issuer, :status
20
+ prop_reader :verification_status, :secret, :key_uri, :base64_q_r_image
21
+ alias qr_code base64_q_r_image
20
22
 
21
- has_many :challenges, can: [:get, :create]
22
- has_one :most_recent_challenge, class_name: :challenge
23
- has_one :phone
23
+ has_many :challenges, can: [:get, :create]
24
+ has_one :most_recent_challenge, class_name: :challenge
25
+ has_one :phone
24
26
 
25
- belongs_to :account
27
+ belongs_to :account
28
+ end
29
+ end
26
30
  end
@@ -13,9 +13,13 @@
13
13
  # See the License for the specific language governing permissions and
14
14
  # limitations under the License.
15
15
  #
16
- class Stormpath::Resource::Field < Stormpath::Resource::Instance
17
- prop_accessor :required
18
- prop_reader :name, :created_at, :modified_at
16
+ module Stormpath
17
+ module Resource
18
+ class Field < Stormpath::Resource::Instance
19
+ prop_accessor :required
20
+ prop_reader :name, :created_at, :modified_at
19
21
 
20
- belongs_to :schema
22
+ belongs_to :schema
23
+ end
24
+ end
21
25
  end
@@ -13,27 +13,32 @@
13
13
  # See the License for the specific language governing permissions and
14
14
  # limitations under the License.
15
15
  #
16
- class Stormpath::Resource::Group < Stormpath::Resource::Instance
17
- include Stormpath::Resource::CustomDataStorage
16
+ module Stormpath
17
+ module Resource
18
+ class Group < Stormpath::Resource::Instance
19
+ include Stormpath::Resource::CustomDataStorage
18
20
 
19
- prop_accessor :name, :description, :status
20
- prop_reader :created_at, :modified_at
21
+ prop_accessor :name, :description, :status
22
+ prop_reader :created_at, :modified_at
21
23
 
22
- belongs_to :tenant
23
- belongs_to :directory
24
+ belongs_to :tenant
25
+ belongs_to :directory
24
26
 
25
- has_many :accounts
26
- has_many :account_memberships
27
+ has_many :accounts
28
+ has_many :account_memberships
27
29
 
28
- has_one :custom_data
30
+ has_one :custom_data
29
31
 
30
- def add_account account
31
- client.group_memberships.create group: self, account: account
32
- end
32
+ def add_account(account)
33
+ client.group_memberships.create(group: self, account: account)
34
+ end
33
35
 
34
- def remove_account account
35
- account_membership = account_memberships.find {|account_membership| account_membership.account.href == account.href }
36
- account_membership.delete if account_membership
36
+ def remove_account(account)
37
+ account_membership = account_memberships.find do |membership|
38
+ membership.account.href == account.href
39
+ end
40
+ account_membership.delete if account_membership
41
+ end
42
+ end
37
43
  end
38
-
39
44
  end
@@ -13,9 +13,11 @@
13
13
  # See the License for the specific language governing permissions and
14
14
  # limitations under the License.
15
15
  #
16
- class Stormpath::Resource::GroupMembership < Stormpath::Resource::Instance
17
-
18
- has_one :account
19
- has_one :group
20
-
16
+ module Stormpath
17
+ module Resource
18
+ class GroupMembership < Stormpath::Resource::Instance
19
+ has_one :account
20
+ has_one :group
21
+ end
22
+ end
21
23
  end
@@ -13,12 +13,16 @@
13
13
  # See the License for the specific language governing permissions and
14
14
  # limitations under the License.
15
15
  #
16
- class Stormpath::Resource::Instance < Stormpath::Resource::Base
17
- def save
18
- data_store.save(self)
19
- end
16
+ module Stormpath
17
+ module Resource
18
+ class Instance < Stormpath::Resource::Base
19
+ def save
20
+ data_store.save(self)
21
+ end
20
22
 
21
- def delete
22
- data_store.delete(self) unless new?
23
+ def delete
24
+ data_store.delete(self) unless new?
25
+ end
26
+ end
23
27
  end
24
28
  end
@@ -13,8 +13,12 @@
13
13
  # See the License for the specific language governing permissions and
14
14
  # limitations under the License.
15
15
  #
16
- class Stormpath::Resource::LinkedAccount < Stormpath::Resource::Instance
17
- include Stormpath::Resource::CustomDataStorage
16
+ module Stormpath
17
+ module Resource
18
+ class LinkedAccount < Stormpath::Resource::Instance
19
+ include Stormpath::Resource::CustomDataStorage
18
20
 
19
- belongs_to :account
21
+ belongs_to :account
22
+ end
23
+ end
20
24
  end
@@ -1,5 +1,9 @@
1
- class Stormpath::Resource::OauthPolicy < Stormpath::Resource::Instance
2
- prop_accessor :access_token_ttl, :refresh_token_ttl
1
+ module Stormpath
2
+ module Resource
3
+ class OauthPolicy < Stormpath::Resource::Instance
4
+ prop_accessor :access_token_ttl, :refresh_token_ttl
3
5
 
4
- belongs_to :application
6
+ belongs_to :application
7
+ end
8
+ end
5
9
  end
@@ -1,15 +1,19 @@
1
- class Stormpath::Resource::Organization < Stormpath::Resource::Instance
2
- include Stormpath::Resource::CustomDataStorage
1
+ module Stormpath
2
+ module Resource
3
+ class Organization < Stormpath::Resource::Instance
4
+ include Stormpath::Resource::CustomDataStorage
3
5
 
4
- prop_accessor :name, :description, :name_key, :status, :account_store_mappings,
5
- :default_account_store_mapping, :default_group_store_mapping
6
+ prop_accessor :name, :description, :name_key, :status, :account_store_mappings,
7
+ :default_account_store_mapping, :default_group_store_mapping
6
8
 
7
- prop_reader :created_at, :modified_at
9
+ prop_reader :created_at, :modified_at
8
10
 
9
- has_many :groups
10
- has_many :accounts, can: [:get, :create]
11
- belongs_to :tenant
11
+ has_many :groups
12
+ has_many :accounts, can: [:get, :create]
13
+ belongs_to :tenant
12
14
 
13
- has_one :custom_data
14
- has_one :account_linking_policy
15
+ has_one :custom_data
16
+ has_one :account_linking_policy
17
+ end
18
+ end
15
19
  end
@@ -1,6 +1,10 @@
1
- class Stormpath::Resource::OrganizationAccountStoreMapping < Stormpath::Resource::Instance
2
- prop_accessor :is_default_account_store, :is_default_group_store, :list_index
1
+ module Stormpath
2
+ module Resource
3
+ class OrganizationAccountStoreMapping < Stormpath::Resource::Instance
4
+ prop_accessor :is_default_account_store, :is_default_group_store, :list_index
3
5
 
4
- belongs_to :organization
5
- belongs_to :account_store
6
+ belongs_to :organization
7
+ belongs_to :account_store
8
+ end
9
+ end
6
10
  end
@@ -13,12 +13,16 @@
13
13
  # See the License for the specific language governing permissions and
14
14
  # limitations under the License.
15
15
  #
16
- class Stormpath::Resource::PasswordResetToken < Stormpath::Resource::Base
17
- prop_reader :email, :account
16
+ module Stormpath
17
+ module Resource
18
+ class PasswordResetToken < Stormpath::Resource::Base
19
+ prop_reader :email, :account
18
20
 
19
- belongs_to :account
21
+ belongs_to :account
20
22
 
21
- def token
22
- href.split('/').last
23
+ def token
24
+ href.split('/').last
25
+ end
26
+ end
23
27
  end
24
28
  end
@@ -13,9 +13,13 @@
13
13
  # See the License for the specific language governing permissions and
14
14
  # limitations under the License.
15
15
  #
16
- class Stormpath::Resource::Phone < Stormpath::Resource::Instance
17
- prop_accessor :number, :name, :description
18
- prop_reader :verification_status, :status, :created_at, :modified_at
16
+ module Stormpath
17
+ module Resource
18
+ class Phone < Stormpath::Resource::Instance
19
+ prop_accessor :number, :name, :description
20
+ prop_reader :verification_status, :status, :created_at, :modified_at
19
21
 
20
- belongs_to :account
22
+ belongs_to :account
23
+ end
24
+ end
21
25
  end
@@ -0,0 +1,8 @@
1
+ module Stormpath
2
+ module Resource
3
+ class RegisteredSamlServiceProvider < Stormpath::Resource::Instance
4
+ prop_accessor :name, :description, :assertion_consumer_service_url, :entity_id, :name_id_format
5
+ prop_reader :encoded_x509_certificate, :created_at, :modified_at
6
+ end
7
+ end
8
+ end