messagemedia_signingkeys_sdk 1.0.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 (38) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +201 -0
  3. data/README.md +198 -0
  4. data/lib/message_media_signing_keys.rb +70 -0
  5. data/lib/message_media_signing_keys/api_helper.rb +273 -0
  6. data/lib/message_media_signing_keys/configuration.rb +29 -0
  7. data/lib/message_media_signing_keys/controllers/base_controller.rb +59 -0
  8. data/lib/message_media_signing_keys/controllers/signature_key_management_controller.rb +507 -0
  9. data/lib/message_media_signing_keys/exceptions/api_exception.rb +18 -0
  10. data/lib/message_media_signing_keys/exceptions/create_signature_key400_response_exception.rb +32 -0
  11. data/lib/message_media_signing_keys/exceptions/create_signature_key403_response_exception.rb +27 -0
  12. data/lib/message_media_signing_keys/exceptions/delete_signature_key403_response_exception.rb +27 -0
  13. data/lib/message_media_signing_keys/exceptions/disable_the_current_enabled_signature_key403_response_exception.rb +27 -0
  14. data/lib/message_media_signing_keys/exceptions/enable_signature_key400_response_exception.rb +32 -0
  15. data/lib/message_media_signing_keys/exceptions/enable_signature_key403_response_exception.rb +27 -0
  16. data/lib/message_media_signing_keys/exceptions/get_enabled_signature_key403_response_exception.rb +27 -0
  17. data/lib/message_media_signing_keys/exceptions/get_signature_key_detail400_response_exception.rb +32 -0
  18. data/lib/message_media_signing_keys/exceptions/get_signature_key_detail403_response_exception.rb +27 -0
  19. data/lib/message_media_signing_keys/exceptions/get_signature_key_list400_response_exception.rb +32 -0
  20. data/lib/message_media_signing_keys/exceptions/get_signature_key_list403_response_exception.rb +27 -0
  21. data/lib/message_media_signing_keys/http/auth/basic_auth.rb +20 -0
  22. data/lib/message_media_signing_keys/http/faraday_client.rb +55 -0
  23. data/lib/message_media_signing_keys/http/http_call_back.rb +22 -0
  24. data/lib/message_media_signing_keys/http/http_client.rb +102 -0
  25. data/lib/message_media_signing_keys/http/http_context.rb +18 -0
  26. data/lib/message_media_signing_keys/http/http_method_enum.rb +11 -0
  27. data/lib/message_media_signing_keys/http/http_request.rb +48 -0
  28. data/lib/message_media_signing_keys/http/http_response.rb +21 -0
  29. data/lib/message_media_signing_keys/message_media_signing_keys_client.rb +27 -0
  30. data/lib/message_media_signing_keys/models/base_model.rb +34 -0
  31. data/lib/message_media_signing_keys/models/create_signature_key_request.rb +42 -0
  32. data/lib/message_media_signing_keys/models/create_signature_key_response.rb +78 -0
  33. data/lib/message_media_signing_keys/models/enable_signature_key_request.rb +33 -0
  34. data/lib/message_media_signing_keys/models/enable_signature_key_response.rb +69 -0
  35. data/lib/message_media_signing_keys/models/get_enabled_signature_key_response.rb +69 -0
  36. data/lib/message_media_signing_keys/models/get_signature_key_detail_response.rb +69 -0
  37. data/lib/message_media_signing_keys/models/get_signature_key_list_response.rb +69 -0
  38. metadata +164 -0
@@ -0,0 +1,102 @@
1
+ # This file was automatically generated for MessageMedia by APIMATIC v2.0
2
+ # ( https://apimatic.io ).
3
+
4
+ module MessageMediaSigningKeys
5
+ # An interface for the methods that an HTTP Client must implement.
6
+ #
7
+ # This class should not be instantiated but should be used as a base class
8
+ # for HTTP Client classes.
9
+ class HttpClient
10
+ # Execute an HttpRequest when the response is expected to be a string.
11
+ # @param [HttpRequest] The HttpRequest to be executed.
12
+ def execute_as_string(_http_request)
13
+ raise NotImplementedError, 'This method needs
14
+ to be implemented in a child class.'
15
+ end
16
+
17
+ # Execute an HttpRequest when the response is expected to be binary.
18
+ # @param [HttpRequest] The HttpRequest to be executed.
19
+ def execute_as_binary(_http_request)
20
+ raise NotImplementedError, 'This method needs
21
+ to be implemented in a child class.'
22
+ end
23
+
24
+ # Converts the HTTP Response from the client to an HttpResponse object.
25
+ # @param [Dynamic] The response object received from the client.
26
+ def convert_response(_response)
27
+ raise NotImplementedError, 'This method needs
28
+ to be implemented in a child class.'
29
+ end
30
+
31
+ # Get a GET HttpRequest object.
32
+ # @param [String] The URL to send the request to.
33
+ # @param [Hash, Optional] The headers for the HTTP Request.
34
+ def get(query_url,
35
+ headers: {})
36
+ HttpRequest.new(HttpMethodEnum::GET,
37
+ query_url,
38
+ headers: headers)
39
+ end
40
+
41
+ # Get a HEAD HttpRequest object.
42
+ # @param [String] The URL to send the request to.
43
+ # @param [Hash, Optional] The headers for the HTTP Request.
44
+ def head(query_url,
45
+ headers: {})
46
+ HttpRequest.new(HttpMethodEnum::HEAD,
47
+ query_url,
48
+ headers: headers)
49
+ end
50
+
51
+ # Get a POST HttpRequest object.
52
+ # @param [String] The URL to send the request to.
53
+ # @param [Hash, Optional] The headers for the HTTP Request.
54
+ # @param [Hash, Optional] The parameters for the HTTP Request.
55
+ def post(query_url,
56
+ headers: {},
57
+ parameters: {})
58
+ HttpRequest.new(HttpMethodEnum::POST,
59
+ query_url,
60
+ headers: headers,
61
+ parameters: parameters)
62
+ end
63
+
64
+ # Get a PUT HttpRequest object.
65
+ # @param [String] The URL to send the request to.
66
+ # @param [Hash, Optional] The headers for the HTTP Request.
67
+ # @param [Hash, Optional] The parameters for the HTTP Request.
68
+ def put(query_url,
69
+ headers: {},
70
+ parameters: {})
71
+ HttpRequest.new(HttpMethodEnum::PUT,
72
+ query_url,
73
+ headers: headers,
74
+ parameters: parameters)
75
+ end
76
+
77
+ # Get a PATCH HttpRequest object.
78
+ # @param [String] The URL to send the request to.
79
+ # @param [Hash, Optional] The headers for the HTTP Request.
80
+ # @param [Hash, Optional] The parameters for the HTTP Request.
81
+ def patch(query_url,
82
+ headers: {},
83
+ parameters: {})
84
+ HttpRequest.new(HttpMethodEnum::PATCH,
85
+ query_url,
86
+ headers: headers,
87
+ parameters: parameters)
88
+ end
89
+
90
+ # Get a DELETE HttpRequest object.
91
+ # @param [String] The URL to send the request to.
92
+ # @param [Hash, Optional] The headers for the HTTP Request.
93
+ def delete(query_url,
94
+ headers: {},
95
+ parameters: {})
96
+ HttpRequest.new(HttpMethodEnum::DELETE,
97
+ query_url,
98
+ headers: headers,
99
+ parameters: parameters)
100
+ end
101
+ end
102
+ end
@@ -0,0 +1,18 @@
1
+ # This file was automatically generated for MessageMedia by APIMATIC v2.0
2
+ # ( https://apimatic.io ).
3
+
4
+ module MessageMediaSigningKeys
5
+ # Represents an Http call in context.
6
+ class HttpContext
7
+ attr_accessor :request, :response
8
+
9
+ # The constructor.
10
+ # @param [HttpRequest] An HttpRequest object representing the HTTP request.
11
+ # @param [HttpResponse] An HttpResponse object representing the HTTP
12
+ # response.
13
+ def initialize(request, response)
14
+ @request = request
15
+ @response = response
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,11 @@
1
+ # This file was automatically generated for MessageMedia by APIMATIC v2.0
2
+ # ( https://apimatic.io ).
3
+
4
+ module MessageMediaSigningKeys
5
+ # HTTP Methods Enumeration.
6
+ class HttpMethodEnum
7
+ HTTPMETHODENUM = [GET = 'GET'.freeze, POST = 'POST'.freeze,
8
+ PUT = 'PUT'.freeze, PATCH = 'PATCH'.freeze,
9
+ DELETE = 'DELETE'.freeze, HEAD = 'HEAD'.freeze].freeze
10
+ end
11
+ end
@@ -0,0 +1,48 @@
1
+ # This file was automatically generated for MessageMedia by APIMATIC v2.0
2
+ # ( https://apimatic.io ).
3
+
4
+ module MessageMediaSigningKeys
5
+ # Represents a single Http Request.
6
+ class HttpRequest
7
+ attr_accessor :http_method, :query_url, :headers,
8
+ :parameters, :username, :password
9
+
10
+ # The constructor.
11
+ # @param [HttpMethodEnum] The HTTP method.
12
+ # @param [String] The URL to send the request to.
13
+ # @param [Hash, Optional] The headers for the HTTP Request.
14
+ # @param [Hash, Optional] The parameters for the HTTP Request.
15
+ def initialize(http_method,
16
+ query_url,
17
+ headers: {},
18
+ parameters: {})
19
+ @http_method = http_method
20
+ @query_url = query_url
21
+ @headers = headers
22
+ @parameters = parameters
23
+ end
24
+
25
+ # Add a header to the HttpRequest.
26
+ # @param [String] The name of the header.
27
+ # @param [String] The value of the header.
28
+ def add_header(name, value)
29
+ @headers[name] = value
30
+ end
31
+
32
+ # Add a parameter to the HttpRequest.
33
+ # @param [String] The name of the parameter.
34
+ # @param [String] The value of the parameter.
35
+ def add_parameter(name, value)
36
+ @parameters[name] = value
37
+ end
38
+
39
+ # Add a query parameter to the HttpRequest.
40
+ # @param [String] The name of the query parameter.
41
+ # @param [String] The value of the query parameter.
42
+ def add_query_parameter(name, value)
43
+ @query_url = APIHelper.append_url_with_query_parameters(@query_url,
44
+ name => value)
45
+ @query_url = APIHelper.clean_url(@query_url)
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,21 @@
1
+ # This file was automatically generated for MessageMedia by APIMATIC v2.0
2
+ # ( https://apimatic.io ).
3
+
4
+ module MessageMediaSigningKeys
5
+ # Http response received.
6
+ class HttpResponse
7
+ attr_accessor :status_code, :headers, :raw_body
8
+
9
+ # The constructor
10
+ # @param [Integer] The status code returned by the server.
11
+ # @param [Hash] The headers sent by the server in the response.
12
+ # @param [String] The raw body of the response.
13
+ def initialize(status_code,
14
+ headers,
15
+ raw_body)
16
+ @status_code = status_code
17
+ @headers = headers
18
+ @raw_body = raw_body
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,27 @@
1
+ # This file was automatically generated for MessageMedia by APIMATIC v2.0
2
+ # ( https://apimatic.io ).
3
+
4
+ module MessageMediaSigningKeys
5
+ # message_media_signing_keys client class.
6
+ class MessageMediaSigningKeysClient
7
+ # Singleton access to signature_key_management controller.
8
+ # @return [SignatureKeyManagementController] Returns the controller instance.
9
+ def signature_key_management
10
+ SignatureKeyManagementController.instance
11
+ end
12
+
13
+ # Returns the configuration class for easy access.
14
+ # @return [Configuration] Returns the actual configuration class.
15
+ def config
16
+ Configuration
17
+ end
18
+
19
+ # Initializer with authentication and configuration parameters.
20
+ def initialize(basic_auth_user_name: nil, basic_auth_password: nil)
21
+ Configuration.basic_auth_user_name = basic_auth_user_name if
22
+ basic_auth_user_name
23
+ Configuration.basic_auth_password = basic_auth_password if
24
+ basic_auth_password
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,34 @@
1
+ # This file was automatically generated for MessageMedia by APIMATIC v2.0
2
+ # ( https://apimatic.io ).
3
+
4
+ module MessageMediaSigningKeys
5
+ # Base model.
6
+ class BaseModel
7
+ # Returns a Hash representation of the current object.
8
+ def to_hash
9
+ hash = {}
10
+ instance_variables.each do |name|
11
+ value = instance_variable_get(name)
12
+ name = name[1..-1]
13
+ key = self.class.names.key?(name) ? self.class.names[name] : name
14
+ if value.instance_of? Array
15
+ hash[key] = value.map { |v| v.is_a?(BaseModel) ? v.to_hash : v }
16
+ elsif value.instance_of? Hash
17
+ hash[key] = {}
18
+ value.each do |k, v|
19
+ hash[key][k] = v.is_a?(BaseModel) ? v.to_hash : v
20
+ end
21
+ else
22
+ hash[key] = value.is_a?(BaseModel) ? value.to_hash : value
23
+ end
24
+ end
25
+ hash
26
+ end
27
+
28
+ # Returns a JSON representation of the curent object.
29
+ def to_json(options = {})
30
+ hash = to_hash
31
+ hash.to_json(options)
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,42 @@
1
+ # This file was automatically generated for MessageMedia by APIMATIC v2.0
2
+ # ( https://apimatic.io ).
3
+
4
+ module MessageMediaSigningKeys
5
+ # CreateSignatureKeyRequest Model.
6
+ class CreateSignatureKeyRequest < BaseModel
7
+ # TODO: Write general description for this method
8
+ # @return [String]
9
+ attr_accessor :digest
10
+
11
+ # TODO: Write general description for this method
12
+ # @return [String]
13
+ attr_accessor :cipher
14
+
15
+ # A mapping from model property names to API property names.
16
+ def self.names
17
+ @_hash = {} if @_hash.nil?
18
+ @_hash['digest'] = 'digest'
19
+ @_hash['cipher'] = 'cipher'
20
+ @_hash
21
+ end
22
+
23
+ def initialize(digest = nil,
24
+ cipher = nil)
25
+ @digest = digest
26
+ @cipher = cipher
27
+ end
28
+
29
+ # Creates an instance of the object from a hash.
30
+ def self.from_hash(hash)
31
+ return nil unless hash
32
+
33
+ # Extract variables from the hash.
34
+ digest = hash['digest']
35
+ cipher = hash['cipher']
36
+
37
+ # Create object from extracted values.
38
+ CreateSignatureKeyRequest.new(digest,
39
+ cipher)
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,78 @@
1
+ # This file was automatically generated for MessageMedia by APIMATIC v2.0
2
+ # ( https://apimatic.io ).
3
+
4
+ module MessageMediaSigningKeys
5
+ # CreateSignatureKeyResponse Model.
6
+ class CreateSignatureKeyResponse < BaseModel
7
+ # TODO: Write general description for this method
8
+ # @return [String]
9
+ attr_accessor :key_id
10
+
11
+ # TODO: Write general description for this method
12
+ # @return [String]
13
+ attr_accessor :public_key
14
+
15
+ # TODO: Write general description for this method
16
+ # @return [String]
17
+ attr_accessor :cipher
18
+
19
+ # TODO: Write general description for this method
20
+ # @return [String]
21
+ attr_accessor :digest
22
+
23
+ # TODO: Write general description for this method
24
+ # @return [String]
25
+ attr_accessor :created
26
+
27
+ # TODO: Write general description for this method
28
+ # @return [Boolean]
29
+ attr_accessor :enabled
30
+
31
+ # A mapping from model property names to API property names.
32
+ def self.names
33
+ @_hash = {} if @_hash.nil?
34
+ @_hash['key_id'] = 'key_id'
35
+ @_hash['public_key'] = 'public_key'
36
+ @_hash['cipher'] = 'cipher'
37
+ @_hash['digest'] = 'digest'
38
+ @_hash['created'] = 'created'
39
+ @_hash['enabled'] = 'enabled'
40
+ @_hash
41
+ end
42
+
43
+ def initialize(key_id = nil,
44
+ public_key = nil,
45
+ cipher = nil,
46
+ digest = nil,
47
+ created = nil,
48
+ enabled = nil)
49
+ @key_id = key_id
50
+ @public_key = public_key
51
+ @cipher = cipher
52
+ @digest = digest
53
+ @created = created
54
+ @enabled = enabled
55
+ end
56
+
57
+ # Creates an instance of the object from a hash.
58
+ def self.from_hash(hash)
59
+ return nil unless hash
60
+
61
+ # Extract variables from the hash.
62
+ key_id = hash['key_id']
63
+ public_key = hash['public_key']
64
+ cipher = hash['cipher']
65
+ digest = hash['digest']
66
+ created = hash['created']
67
+ enabled = hash['enabled']
68
+
69
+ # Create object from extracted values.
70
+ CreateSignatureKeyResponse.new(key_id,
71
+ public_key,
72
+ cipher,
73
+ digest,
74
+ created,
75
+ enabled)
76
+ end
77
+ end
78
+ end
@@ -0,0 +1,33 @@
1
+ # This file was automatically generated for MessageMedia by APIMATIC v2.0
2
+ # ( https://apimatic.io ).
3
+
4
+ module MessageMediaSigningKeys
5
+ # EnableSignatureKeyRequest Model.
6
+ class EnableSignatureKeyRequest < BaseModel
7
+ # TODO: Write general description for this method
8
+ # @return [String]
9
+ attr_accessor :key_id
10
+
11
+ # A mapping from model property names to API property names.
12
+ def self.names
13
+ @_hash = {} if @_hash.nil?
14
+ @_hash['key_id'] = 'key_id'
15
+ @_hash
16
+ end
17
+
18
+ def initialize(key_id = nil)
19
+ @key_id = key_id
20
+ end
21
+
22
+ # Creates an instance of the object from a hash.
23
+ def self.from_hash(hash)
24
+ return nil unless hash
25
+
26
+ # Extract variables from the hash.
27
+ key_id = hash['key_id']
28
+
29
+ # Create object from extracted values.
30
+ EnableSignatureKeyRequest.new(key_id)
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,69 @@
1
+ # This file was automatically generated for MessageMedia by APIMATIC v2.0
2
+ # ( https://apimatic.io ).
3
+
4
+ module MessageMediaSigningKeys
5
+ # EnableSignatureKeyResponse Model.
6
+ class EnableSignatureKeyResponse < BaseModel
7
+ # TODO: Write general description for this method
8
+ # @return [String]
9
+ attr_accessor :key_id
10
+
11
+ # TODO: Write general description for this method
12
+ # @return [String]
13
+ attr_accessor :cipher
14
+
15
+ # TODO: Write general description for this method
16
+ # @return [String]
17
+ attr_accessor :digest
18
+
19
+ # TODO: Write general description for this method
20
+ # @return [String]
21
+ attr_accessor :created
22
+
23
+ # TODO: Write general description for this method
24
+ # @return [Boolean]
25
+ attr_accessor :enabled
26
+
27
+ # A mapping from model property names to API property names.
28
+ def self.names
29
+ @_hash = {} if @_hash.nil?
30
+ @_hash['key_id'] = 'key_id'
31
+ @_hash['cipher'] = 'cipher'
32
+ @_hash['digest'] = 'digest'
33
+ @_hash['created'] = 'created'
34
+ @_hash['enabled'] = 'enabled'
35
+ @_hash
36
+ end
37
+
38
+ def initialize(key_id = nil,
39
+ cipher = nil,
40
+ digest = nil,
41
+ created = nil,
42
+ enabled = nil)
43
+ @key_id = key_id
44
+ @cipher = cipher
45
+ @digest = digest
46
+ @created = created
47
+ @enabled = enabled
48
+ end
49
+
50
+ # Creates an instance of the object from a hash.
51
+ def self.from_hash(hash)
52
+ return nil unless hash
53
+
54
+ # Extract variables from the hash.
55
+ key_id = hash['key_id']
56
+ cipher = hash['cipher']
57
+ digest = hash['digest']
58
+ created = hash['created']
59
+ enabled = hash['enabled']
60
+
61
+ # Create object from extracted values.
62
+ EnableSignatureKeyResponse.new(key_id,
63
+ cipher,
64
+ digest,
65
+ created,
66
+ enabled)
67
+ end
68
+ end
69
+ end