ssoready 0.1.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 (41) hide show
  1. checksums.yaml +7 -0
  2. data/lib/environment.rb +7 -0
  3. data/lib/gemconfig.rb +14 -0
  4. data/lib/requests.rb +159 -0
  5. data/lib/ssoready/management/client.rb +51 -0
  6. data/lib/ssoready/management/organizations/client.rb +247 -0
  7. data/lib/ssoready/management/saml_connections/client.rb +269 -0
  8. data/lib/ssoready/management/scim_directories/client.rb +330 -0
  9. data/lib/ssoready/management/setup_urls/client.rb +97 -0
  10. data/lib/ssoready/saml/client.rb +170 -0
  11. data/lib/ssoready/scim/client.rb +296 -0
  12. data/lib/ssoready/types/create_organization_response.rb +63 -0
  13. data/lib/ssoready/types/create_saml_connection_response.rb +63 -0
  14. data/lib/ssoready/types/create_scim_directory_response.rb +63 -0
  15. data/lib/ssoready/types/create_setup_url_response.rb +62 -0
  16. data/lib/ssoready/types/get_organization_response.rb +63 -0
  17. data/lib/ssoready/types/get_saml_connection_response.rb +63 -0
  18. data/lib/ssoready/types/get_saml_redirect_url_response.rb +56 -0
  19. data/lib/ssoready/types/get_scim_directory_response.rb +63 -0
  20. data/lib/ssoready/types/get_scim_group_response.rb +63 -0
  21. data/lib/ssoready/types/get_scim_user_response.rb +63 -0
  22. data/lib/ssoready/types/google_protobuf_any.rb +58 -0
  23. data/lib/ssoready/types/list_organizations_response.rb +73 -0
  24. data/lib/ssoready/types/list_saml_connections_response.rb +73 -0
  25. data/lib/ssoready/types/list_scim_directories_response.rb +73 -0
  26. data/lib/ssoready/types/list_scim_groups_response.rb +73 -0
  27. data/lib/ssoready/types/list_scim_users_response.rb +73 -0
  28. data/lib/ssoready/types/organization.rb +112 -0
  29. data/lib/ssoready/types/redeem_saml_access_code_response.rb +126 -0
  30. data/lib/ssoready/types/rotate_scim_directory_bearer_token_response.rb +63 -0
  31. data/lib/ssoready/types/saml_connection.rb +144 -0
  32. data/lib/ssoready/types/scim_directory.rb +104 -0
  33. data/lib/ssoready/types/scim_group.rb +114 -0
  34. data/lib/ssoready/types/scim_user.rb +102 -0
  35. data/lib/ssoready/types/status.rb +94 -0
  36. data/lib/ssoready/types/update_organization_response.rb +63 -0
  37. data/lib/ssoready/types/update_saml_connection_response.rb +63 -0
  38. data/lib/ssoready/types/update_scim_directory_response.rb +63 -0
  39. data/lib/ssoready.rb +68 -0
  40. data/lib/types_export.rb +29 -0
  41. metadata +163 -0
@@ -0,0 +1,63 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "scim_directory"
4
+ require "ostruct"
5
+ require "json"
6
+
7
+ module SSOReady
8
+ class UpdateSCIMDirectoryResponse
9
+ # @return [SSOReady::SCIMDirectory] The updated SCIM directory.
10
+ attr_reader :scim_directory
11
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
12
+ attr_reader :additional_properties
13
+ # @return [Object]
14
+ attr_reader :_field_set
15
+ protected :_field_set
16
+
17
+ OMIT = Object.new
18
+
19
+ # @param scim_directory [SSOReady::SCIMDirectory] The updated SCIM directory.
20
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
21
+ # @return [SSOReady::UpdateSCIMDirectoryResponse]
22
+ def initialize(scim_directory: OMIT, additional_properties: nil)
23
+ @scim_directory = scim_directory if scim_directory != OMIT
24
+ @additional_properties = additional_properties
25
+ @_field_set = { "scimDirectory": scim_directory }.reject do |_k, v|
26
+ v == OMIT
27
+ end
28
+ end
29
+
30
+ # Deserialize a JSON object to an instance of UpdateSCIMDirectoryResponse
31
+ #
32
+ # @param json_object [String]
33
+ # @return [SSOReady::UpdateSCIMDirectoryResponse]
34
+ def self.from_json(json_object:)
35
+ struct = JSON.parse(json_object, object_class: OpenStruct)
36
+ parsed_json = JSON.parse(json_object)
37
+ if parsed_json["scimDirectory"].nil?
38
+ scim_directory = nil
39
+ else
40
+ scim_directory = parsed_json["scimDirectory"].to_json
41
+ scim_directory = SSOReady::SCIMDirectory.from_json(json_object: scim_directory)
42
+ end
43
+ new(scim_directory: scim_directory, additional_properties: struct)
44
+ end
45
+
46
+ # Serialize an instance of UpdateSCIMDirectoryResponse to a JSON object
47
+ #
48
+ # @return [String]
49
+ def to_json(*_args)
50
+ @_field_set&.to_json
51
+ end
52
+
53
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
54
+ # hash and check each fields type against the current object's property
55
+ # definitions.
56
+ #
57
+ # @param obj [Object]
58
+ # @return [Void]
59
+ def self.validate_raw(obj:)
60
+ obj.scim_directory.nil? || SSOReady::SCIMDirectory.validate_raw(obj: obj.scim_directory)
61
+ end
62
+ end
63
+ end
data/lib/ssoready.rb ADDED
@@ -0,0 +1,68 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "environment"
4
+ require_relative "types_export"
5
+ require_relative "requests"
6
+ require_relative "ssoready/saml/client"
7
+ require_relative "ssoready/scim/client"
8
+ require_relative "ssoready/management/client"
9
+
10
+ module SSOReady
11
+ class Client
12
+ # @return [SSOReady::SAMLClient]
13
+ attr_reader :saml
14
+ # @return [SSOReady::SCIMClient]
15
+ attr_reader :scim
16
+ # @return [SSOReady::Management::Client]
17
+ attr_reader :management
18
+
19
+ # @param environment [SSOReady::Environment]
20
+ # @param base_url [String]
21
+ # @param max_retries [Long] The number of times to retry a failed request, defaults to 2.
22
+ # @param timeout_in_seconds [Long]
23
+ # @param api_key [String]
24
+ # @return [SSOReady::Client]
25
+ def initialize(environment: SSOReady::Environment::DEFAULT, base_url: nil, max_retries: nil,
26
+ timeout_in_seconds: nil, api_key: nil)
27
+ @request_client = SSOReady::RequestClient.new(
28
+ environment: environment,
29
+ base_url: base_url,
30
+ max_retries: max_retries,
31
+ timeout_in_seconds: timeout_in_seconds,
32
+ api_key: api_key
33
+ )
34
+ @saml = SSOReady::SAMLClient.new(request_client: @request_client)
35
+ @scim = SSOReady::SCIMClient.new(request_client: @request_client)
36
+ @management = SSOReady::Management::Client.new(request_client: @request_client)
37
+ end
38
+ end
39
+
40
+ class AsyncClient
41
+ # @return [SSOReady::AsyncSAMLClient]
42
+ attr_reader :saml
43
+ # @return [SSOReady::AsyncSCIMClient]
44
+ attr_reader :scim
45
+ # @return [SSOReady::Management::AsyncClient]
46
+ attr_reader :management
47
+
48
+ # @param environment [SSOReady::Environment]
49
+ # @param base_url [String]
50
+ # @param max_retries [Long] The number of times to retry a failed request, defaults to 2.
51
+ # @param timeout_in_seconds [Long]
52
+ # @param api_key [String]
53
+ # @return [SSOReady::AsyncClient]
54
+ def initialize(environment: SSOReady::Environment::DEFAULT, base_url: nil, max_retries: nil,
55
+ timeout_in_seconds: nil, api_key: nil)
56
+ @async_request_client = SSOReady::AsyncRequestClient.new(
57
+ environment: environment,
58
+ base_url: base_url,
59
+ max_retries: max_retries,
60
+ timeout_in_seconds: timeout_in_seconds,
61
+ api_key: api_key
62
+ )
63
+ @saml = SSOReady::AsyncSAMLClient.new(request_client: @async_request_client)
64
+ @scim = SSOReady::AsyncSCIMClient.new(request_client: @async_request_client)
65
+ @management = SSOReady::Management::AsyncClient.new(request_client: @async_request_client)
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "ssoready/types/create_organization_response"
4
+ require_relative "ssoready/types/create_saml_connection_response"
5
+ require_relative "ssoready/types/create_scim_directory_response"
6
+ require_relative "ssoready/types/create_setup_url_response"
7
+ require_relative "ssoready/types/get_organization_response"
8
+ require_relative "ssoready/types/get_saml_connection_response"
9
+ require_relative "ssoready/types/get_saml_redirect_url_response"
10
+ require_relative "ssoready/types/get_scim_directory_response"
11
+ require_relative "ssoready/types/get_scim_group_response"
12
+ require_relative "ssoready/types/get_scim_user_response"
13
+ require_relative "ssoready/types/google_protobuf_any"
14
+ require_relative "ssoready/types/list_organizations_response"
15
+ require_relative "ssoready/types/list_saml_connections_response"
16
+ require_relative "ssoready/types/list_scim_directories_response"
17
+ require_relative "ssoready/types/list_scim_groups_response"
18
+ require_relative "ssoready/types/list_scim_users_response"
19
+ require_relative "ssoready/types/organization"
20
+ require_relative "ssoready/types/redeem_saml_access_code_response"
21
+ require_relative "ssoready/types/rotate_scim_directory_bearer_token_response"
22
+ require_relative "ssoready/types/saml_connection"
23
+ require_relative "ssoready/types/scim_directory"
24
+ require_relative "ssoready/types/scim_group"
25
+ require_relative "ssoready/types/scim_user"
26
+ require_relative "ssoready/types/status"
27
+ require_relative "ssoready/types/update_organization_response"
28
+ require_relative "ssoready/types/update_saml_connection_response"
29
+ require_relative "ssoready/types/update_scim_directory_response"
metadata ADDED
@@ -0,0 +1,163 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: ssoready
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - ''
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2024-11-01 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: async-http-faraday
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0.0'
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '1.0'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: '0.0'
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '1.0'
33
+ - !ruby/object:Gem::Dependency
34
+ name: faraday
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: '1.10'
40
+ - - "<"
41
+ - !ruby/object:Gem::Version
42
+ version: '3.0'
43
+ type: :runtime
44
+ prerelease: false
45
+ version_requirements: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ version: '1.10'
50
+ - - "<"
51
+ - !ruby/object:Gem::Version
52
+ version: '3.0'
53
+ - !ruby/object:Gem::Dependency
54
+ name: faraday-net_http
55
+ requirement: !ruby/object:Gem::Requirement
56
+ requirements:
57
+ - - ">="
58
+ - !ruby/object:Gem::Version
59
+ version: '1.0'
60
+ - - "<"
61
+ - !ruby/object:Gem::Version
62
+ version: '4.0'
63
+ type: :runtime
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: '1.0'
70
+ - - "<"
71
+ - !ruby/object:Gem::Version
72
+ version: '4.0'
73
+ - !ruby/object:Gem::Dependency
74
+ name: faraday-retry
75
+ requirement: !ruby/object:Gem::Requirement
76
+ requirements:
77
+ - - ">="
78
+ - !ruby/object:Gem::Version
79
+ version: '1.0'
80
+ - - "<"
81
+ - !ruby/object:Gem::Version
82
+ version: '3.0'
83
+ type: :runtime
84
+ prerelease: false
85
+ version_requirements: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '1.0'
90
+ - - "<"
91
+ - !ruby/object:Gem::Version
92
+ version: '3.0'
93
+ description: ''
94
+ email: ''
95
+ executables: []
96
+ extensions: []
97
+ extra_rdoc_files: []
98
+ files:
99
+ - lib/environment.rb
100
+ - lib/gemconfig.rb
101
+ - lib/requests.rb
102
+ - lib/ssoready.rb
103
+ - lib/ssoready/management/client.rb
104
+ - lib/ssoready/management/organizations/client.rb
105
+ - lib/ssoready/management/saml_connections/client.rb
106
+ - lib/ssoready/management/scim_directories/client.rb
107
+ - lib/ssoready/management/setup_urls/client.rb
108
+ - lib/ssoready/saml/client.rb
109
+ - lib/ssoready/scim/client.rb
110
+ - lib/ssoready/types/create_organization_response.rb
111
+ - lib/ssoready/types/create_saml_connection_response.rb
112
+ - lib/ssoready/types/create_scim_directory_response.rb
113
+ - lib/ssoready/types/create_setup_url_response.rb
114
+ - lib/ssoready/types/get_organization_response.rb
115
+ - lib/ssoready/types/get_saml_connection_response.rb
116
+ - lib/ssoready/types/get_saml_redirect_url_response.rb
117
+ - lib/ssoready/types/get_scim_directory_response.rb
118
+ - lib/ssoready/types/get_scim_group_response.rb
119
+ - lib/ssoready/types/get_scim_user_response.rb
120
+ - lib/ssoready/types/google_protobuf_any.rb
121
+ - lib/ssoready/types/list_organizations_response.rb
122
+ - lib/ssoready/types/list_saml_connections_response.rb
123
+ - lib/ssoready/types/list_scim_directories_response.rb
124
+ - lib/ssoready/types/list_scim_groups_response.rb
125
+ - lib/ssoready/types/list_scim_users_response.rb
126
+ - lib/ssoready/types/organization.rb
127
+ - lib/ssoready/types/redeem_saml_access_code_response.rb
128
+ - lib/ssoready/types/rotate_scim_directory_bearer_token_response.rb
129
+ - lib/ssoready/types/saml_connection.rb
130
+ - lib/ssoready/types/scim_directory.rb
131
+ - lib/ssoready/types/scim_group.rb
132
+ - lib/ssoready/types/scim_user.rb
133
+ - lib/ssoready/types/status.rb
134
+ - lib/ssoready/types/update_organization_response.rb
135
+ - lib/ssoready/types/update_saml_connection_response.rb
136
+ - lib/ssoready/types/update_scim_directory_response.rb
137
+ - lib/types_export.rb
138
+ homepage: https://github.com/ssoready/ssoready-ruby
139
+ licenses: []
140
+ metadata:
141
+ homepage_uri: https://github.com/ssoready/ssoready-ruby
142
+ source_code_uri: https://github.com/ssoready/ssoready-ruby
143
+ changelog_uri: https://github.com/ssoready/ssoready-ruby/blob/master/CHANGELOG.md
144
+ post_install_message:
145
+ rdoc_options: []
146
+ require_paths:
147
+ - lib
148
+ required_ruby_version: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: 2.7.0
153
+ required_rubygems_version: !ruby/object:Gem::Requirement
154
+ requirements:
155
+ - - ">="
156
+ - !ruby/object:Gem::Version
157
+ version: '0'
158
+ requirements: []
159
+ rubygems_version: 3.1.6
160
+ signing_key:
161
+ specification_version: 4
162
+ summary: ''
163
+ test_files: []