azure_mgmt_event_grid 0.17.8 → 0.17.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (87) hide show
  1. checksums.yaml +5 -5
  2. data/lib/2017-06-15-preview/generated/azure_mgmt_event_grid/event_grid_management_client.rb +1 -1
  3. data/lib/2017-09-15-preview/generated/azure_mgmt_event_grid/event_grid_management_client.rb +1 -1
  4. data/lib/2018-01-01/generated/azure_mgmt_event_grid/event_grid_management_client.rb +1 -1
  5. data/lib/2018-05-01-preview/generated/azure_mgmt_event_grid/event_grid_management_client.rb +1 -1
  6. data/lib/2018-09-15-preview/generated/azure_mgmt_event_grid/event_grid_management_client.rb +1 -1
  7. data/lib/2019-01-01/generated/azure_mgmt_event_grid/event_grid_management_client.rb +1 -1
  8. data/lib/2019-02-01-preview/generated/azure_mgmt_event_grid/event_grid_management_client.rb +1 -1
  9. data/lib/2019-06-01/generated/azure_mgmt_event_grid/event_grid_management_client.rb +1 -1
  10. data/lib/2020-01-01-preview/generated/azure_mgmt_event_grid/event_grid_management_client.rb +1 -1
  11. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid.rb +97 -0
  12. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/domain_topics.rb +699 -0
  13. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/domains.rb +1328 -0
  14. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/event_grid_management_client.rb +153 -0
  15. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/event_subscriptions.rb +3648 -0
  16. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/advanced_filter.rb +74 -0
  17. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/azure_function_event_subscription_destination.rb +86 -0
  18. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/bool_equals_advanced_filter.rb +69 -0
  19. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/dead_letter_destination.rb +50 -0
  20. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/domain.rb +187 -0
  21. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/domain_provisioning_state.rb +20 -0
  22. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/domain_regenerate_key_request.rb +46 -0
  23. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/domain_shared_access_keys.rb +57 -0
  24. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/domain_topic.rb +75 -0
  25. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/domain_topic_provisioning_state.rb +20 -0
  26. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/domain_topics_list_result.rb +98 -0
  27. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/domain_update_parameters.rb +54 -0
  28. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/domains_list_result.rb +98 -0
  29. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/event_delivery_schema.rb +17 -0
  30. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/event_hub_event_subscription_destination.rb +62 -0
  31. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/event_subscription.rb +189 -0
  32. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/event_subscription_destination.rb +52 -0
  33. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/event_subscription_filter.rb +120 -0
  34. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/event_subscription_full_url.rb +47 -0
  35. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/event_subscription_provisioning_state.rb +21 -0
  36. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/event_subscription_update_parameters.rb +137 -0
  37. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/event_subscriptions_list_result.rb +98 -0
  38. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/event_type.rb +106 -0
  39. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/event_types_list_result.rb +55 -0
  40. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/hybrid_connection_event_subscription_destination.rb +64 -0
  41. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/inbound_ip_rule.rb +59 -0
  42. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/input_schema.rb +17 -0
  43. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/input_schema_mapping.rb +49 -0
  44. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/ip_action_type.rb +15 -0
  45. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/json_field.rb +50 -0
  46. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/json_field_with_default.rb +67 -0
  47. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/json_input_schema_mapping.rb +130 -0
  48. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/number_greater_than_advanced_filter.rb +69 -0
  49. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/number_greater_than_or_equals_advanced_filter.rb +69 -0
  50. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/number_in_advanced_filter.rb +77 -0
  51. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/number_less_than_advanced_filter.rb +69 -0
  52. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/number_less_than_or_equals_advanced_filter.rb +69 -0
  53. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/number_not_in_advanced_filter.rb +77 -0
  54. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/operation.rb +80 -0
  55. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/operation_info.rb +79 -0
  56. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/operations_list_result.rb +55 -0
  57. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/resource.rb +80 -0
  58. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/resource_region_type.rb +16 -0
  59. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/retry_policy.rb +57 -0
  60. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/service_bus_queue_event_subscription_destination.rb +63 -0
  61. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/service_bus_topic_event_subscription_destination.rb +64 -0
  62. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/storage_blob_dead_letter_destination.rb +74 -0
  63. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/storage_queue_event_subscription_destination.rb +75 -0
  64. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/string_begins_with_advanced_filter.rb +77 -0
  65. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/string_contains_advanced_filter.rb +77 -0
  66. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/string_ends_with_advanced_filter.rb +77 -0
  67. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/string_in_advanced_filter.rb +77 -0
  68. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/string_not_in_advanced_filter.rb +77 -0
  69. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/topic.rb +189 -0
  70. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/topic_provisioning_state.rb +20 -0
  71. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/topic_regenerate_key_request.rb +46 -0
  72. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/topic_shared_access_keys.rb +57 -0
  73. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/topic_type_info.rb +150 -0
  74. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/topic_type_provisioning_state.rb +20 -0
  75. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/topic_types_list_result.rb +55 -0
  76. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/topic_update_parameters.rb +54 -0
  77. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/topics_list_result.rb +98 -0
  78. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/tracked_resource.rb +92 -0
  79. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/models/web_hook_event_subscription_destination.rb +122 -0
  80. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/module_definition.rb +9 -0
  81. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/operations.rb +118 -0
  82. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/topic_types.rb +305 -0
  83. data/lib/2020-04-01-preview/generated/azure_mgmt_event_grid/topics.rb +1439 -0
  84. data/lib/azure_mgmt_event_grid.rb +15 -14
  85. data/lib/profiles/latest/modules/eventgrid_profile_module.rb +327 -319
  86. data/lib/version.rb +7 -7
  87. metadata +76 -4
@@ -0,0 +1,92 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::EventGrid::Mgmt::V2020_04_01_preview
7
+ module Models
8
+ #
9
+ # Definition of a Tracked Resource.
10
+ #
11
+ class TrackedResource < Resource
12
+
13
+ include MsRestAzure
14
+
15
+ # @return [String] Location of the resource.
16
+ attr_accessor :location
17
+
18
+ # @return [Hash{String => String}] Tags of the resource.
19
+ attr_accessor :tags
20
+
21
+
22
+ #
23
+ # Mapper for TrackedResource class as Ruby Hash.
24
+ # This will be used for serialization/deserialization.
25
+ #
26
+ def self.mapper()
27
+ {
28
+ client_side_validation: true,
29
+ required: false,
30
+ serialized_name: 'TrackedResource',
31
+ type: {
32
+ name: 'Composite',
33
+ class_name: 'TrackedResource',
34
+ model_properties: {
35
+ id: {
36
+ client_side_validation: true,
37
+ required: false,
38
+ read_only: true,
39
+ serialized_name: 'id',
40
+ type: {
41
+ name: 'String'
42
+ }
43
+ },
44
+ name: {
45
+ client_side_validation: true,
46
+ required: false,
47
+ read_only: true,
48
+ serialized_name: 'name',
49
+ type: {
50
+ name: 'String'
51
+ }
52
+ },
53
+ type: {
54
+ client_side_validation: true,
55
+ required: false,
56
+ read_only: true,
57
+ serialized_name: 'type',
58
+ type: {
59
+ name: 'String'
60
+ }
61
+ },
62
+ location: {
63
+ client_side_validation: true,
64
+ required: true,
65
+ serialized_name: 'location',
66
+ type: {
67
+ name: 'String'
68
+ }
69
+ },
70
+ tags: {
71
+ client_side_validation: true,
72
+ required: false,
73
+ serialized_name: 'tags',
74
+ type: {
75
+ name: 'Dictionary',
76
+ value: {
77
+ client_side_validation: true,
78
+ required: false,
79
+ serialized_name: 'StringElementType',
80
+ type: {
81
+ name: 'String'
82
+ }
83
+ }
84
+ }
85
+ }
86
+ }
87
+ }
88
+ }
89
+ end
90
+ end
91
+ end
92
+ end
@@ -0,0 +1,122 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::EventGrid::Mgmt::V2020_04_01_preview
7
+ module Models
8
+ #
9
+ # Information about the webhook destination for an event subscription.
10
+ #
11
+ class WebHookEventSubscriptionDestination < EventSubscriptionDestination
12
+
13
+ include MsRestAzure
14
+
15
+
16
+ def initialize
17
+ @endpointType = "WebHook"
18
+ end
19
+
20
+ attr_accessor :endpointType
21
+
22
+ # @return [String] The URL that represents the endpoint of the
23
+ # destination of an event subscription.
24
+ attr_accessor :endpoint_url
25
+
26
+ # @return [String] The base URL that represents the endpoint of the
27
+ # destination of an event subscription.
28
+ attr_accessor :endpoint_base_url
29
+
30
+ # @return [Integer] Maximum number of events per batch.
31
+ attr_accessor :max_events_per_batch
32
+
33
+ # @return [Integer] Preferred batch size in Kilobytes.
34
+ attr_accessor :preferred_batch_size_in_kilobytes
35
+
36
+ # @return [String] The Azure Active Directory Tenant ID to get the access
37
+ # token that will be included as the bearer token in delivery requests.
38
+ attr_accessor :azure_active_directory_tenant_id
39
+
40
+ # @return [String] The Azure Active Directory Application ID or URI to
41
+ # get the access token that will be included as the bearer token in
42
+ # delivery requests.
43
+ attr_accessor :azure_active_directory_application_id_or_uri
44
+
45
+
46
+ #
47
+ # Mapper for WebHookEventSubscriptionDestination class as Ruby Hash.
48
+ # This will be used for serialization/deserialization.
49
+ #
50
+ def self.mapper()
51
+ {
52
+ client_side_validation: true,
53
+ required: false,
54
+ serialized_name: 'WebHook',
55
+ type: {
56
+ name: 'Composite',
57
+ class_name: 'WebHookEventSubscriptionDestination',
58
+ model_properties: {
59
+ endpointType: {
60
+ client_side_validation: true,
61
+ required: true,
62
+ serialized_name: 'endpointType',
63
+ type: {
64
+ name: 'String'
65
+ }
66
+ },
67
+ endpoint_url: {
68
+ client_side_validation: true,
69
+ required: false,
70
+ serialized_name: 'properties.endpointUrl',
71
+ type: {
72
+ name: 'String'
73
+ }
74
+ },
75
+ endpoint_base_url: {
76
+ client_side_validation: true,
77
+ required: false,
78
+ read_only: true,
79
+ serialized_name: 'properties.endpointBaseUrl',
80
+ type: {
81
+ name: 'String'
82
+ }
83
+ },
84
+ max_events_per_batch: {
85
+ client_side_validation: true,
86
+ required: false,
87
+ serialized_name: 'properties.maxEventsPerBatch',
88
+ type: {
89
+ name: 'Number'
90
+ }
91
+ },
92
+ preferred_batch_size_in_kilobytes: {
93
+ client_side_validation: true,
94
+ required: false,
95
+ serialized_name: 'properties.preferredBatchSizeInKilobytes',
96
+ type: {
97
+ name: 'Number'
98
+ }
99
+ },
100
+ azure_active_directory_tenant_id: {
101
+ client_side_validation: true,
102
+ required: false,
103
+ serialized_name: 'properties.azureActiveDirectoryTenantId',
104
+ type: {
105
+ name: 'String'
106
+ }
107
+ },
108
+ azure_active_directory_application_id_or_uri: {
109
+ client_side_validation: true,
110
+ required: false,
111
+ serialized_name: 'properties.azureActiveDirectoryApplicationIdOrUri',
112
+ type: {
113
+ name: 'String'
114
+ }
115
+ }
116
+ }
117
+ }
118
+ }
119
+ end
120
+ end
121
+ end
122
+ end
@@ -0,0 +1,9 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure end
7
+ module Azure::EventGrid end
8
+ module Azure::EventGrid::Mgmt end
9
+ module Azure::EventGrid::Mgmt::V2020_04_01_preview end
@@ -0,0 +1,118 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::EventGrid::Mgmt::V2020_04_01_preview
7
+ #
8
+ # Azure EventGrid Management Client
9
+ #
10
+ class Operations
11
+ include MsRestAzure
12
+
13
+ #
14
+ # Creates and initializes a new instance of the Operations class.
15
+ # @param client service class for accessing basic functionality.
16
+ #
17
+ def initialize(client)
18
+ @client = client
19
+ end
20
+
21
+ # @return [EventGridManagementClient] reference to the EventGridManagementClient
22
+ attr_reader :client
23
+
24
+ #
25
+ # List available operations.
26
+ #
27
+ # List the available operations supported by the Microsoft.EventGrid resource
28
+ # provider.
29
+ #
30
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
31
+ # will be added to the HTTP request.
32
+ #
33
+ # @return [OperationsListResult] operation results.
34
+ #
35
+ def list(custom_headers:nil)
36
+ response = list_async(custom_headers:custom_headers).value!
37
+ response.body unless response.nil?
38
+ end
39
+
40
+ #
41
+ # List available operations.
42
+ #
43
+ # List the available operations supported by the Microsoft.EventGrid resource
44
+ # provider.
45
+ #
46
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
47
+ # will be added to the HTTP request.
48
+ #
49
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
50
+ #
51
+ def list_with_http_info(custom_headers:nil)
52
+ list_async(custom_headers:custom_headers).value!
53
+ end
54
+
55
+ #
56
+ # List available operations.
57
+ #
58
+ # List the available operations supported by the Microsoft.EventGrid resource
59
+ # provider.
60
+ #
61
+ # @param [Hash{String => String}] A hash of custom headers that will be added
62
+ # to the HTTP request.
63
+ #
64
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
65
+ #
66
+ def list_async(custom_headers:nil)
67
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
68
+
69
+
70
+ request_headers = {}
71
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
72
+
73
+ # Set Headers
74
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
75
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
76
+ path_template = 'providers/Microsoft.EventGrid/operations'
77
+
78
+ request_url = @base_url || @client.base_url
79
+
80
+ options = {
81
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
82
+ query_params: {'api-version' => @client.api_version},
83
+ headers: request_headers.merge(custom_headers || {}),
84
+ base_url: request_url
85
+ }
86
+ promise = @client.make_request_async(:get, path_template, options)
87
+
88
+ promise = promise.then do |result|
89
+ http_response = result.response
90
+ status_code = http_response.status
91
+ response_content = http_response.body
92
+ unless status_code == 200
93
+ error_model = JSON.load(response_content)
94
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
95
+ end
96
+
97
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
98
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
99
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
100
+ # Deserialize Response
101
+ if status_code == 200
102
+ begin
103
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
104
+ result_mapper = Azure::EventGrid::Mgmt::V2020_04_01_preview::Models::OperationsListResult.mapper()
105
+ result.body = @client.deserialize(result_mapper, parsed_response)
106
+ rescue Exception => e
107
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
108
+ end
109
+ end
110
+
111
+ result
112
+ end
113
+
114
+ promise.execute
115
+ end
116
+
117
+ end
118
+ end
@@ -0,0 +1,305 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::EventGrid::Mgmt::V2020_04_01_preview
7
+ #
8
+ # Azure EventGrid Management Client
9
+ #
10
+ class TopicTypes
11
+ include MsRestAzure
12
+
13
+ #
14
+ # Creates and initializes a new instance of the TopicTypes class.
15
+ # @param client service class for accessing basic functionality.
16
+ #
17
+ def initialize(client)
18
+ @client = client
19
+ end
20
+
21
+ # @return [EventGridManagementClient] reference to the EventGridManagementClient
22
+ attr_reader :client
23
+
24
+ #
25
+ # List topic types.
26
+ #
27
+ # List all registered topic types.
28
+ #
29
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
30
+ # will be added to the HTTP request.
31
+ #
32
+ # @return [TopicTypesListResult] operation results.
33
+ #
34
+ def list(custom_headers:nil)
35
+ response = list_async(custom_headers:custom_headers).value!
36
+ response.body unless response.nil?
37
+ end
38
+
39
+ #
40
+ # List topic types.
41
+ #
42
+ # List all registered topic types.
43
+ #
44
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
45
+ # will be added to the HTTP request.
46
+ #
47
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
48
+ #
49
+ def list_with_http_info(custom_headers:nil)
50
+ list_async(custom_headers:custom_headers).value!
51
+ end
52
+
53
+ #
54
+ # List topic types.
55
+ #
56
+ # List all registered topic types.
57
+ #
58
+ # @param [Hash{String => String}] A hash of custom headers that will be added
59
+ # to the HTTP request.
60
+ #
61
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
62
+ #
63
+ def list_async(custom_headers:nil)
64
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
65
+
66
+
67
+ request_headers = {}
68
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
69
+
70
+ # Set Headers
71
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
72
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
73
+ path_template = 'providers/Microsoft.EventGrid/topicTypes'
74
+
75
+ request_url = @base_url || @client.base_url
76
+
77
+ options = {
78
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
79
+ query_params: {'api-version' => @client.api_version},
80
+ headers: request_headers.merge(custom_headers || {}),
81
+ base_url: request_url
82
+ }
83
+ promise = @client.make_request_async(:get, path_template, options)
84
+
85
+ promise = promise.then do |result|
86
+ http_response = result.response
87
+ status_code = http_response.status
88
+ response_content = http_response.body
89
+ unless status_code == 200
90
+ error_model = JSON.load(response_content)
91
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
92
+ end
93
+
94
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
95
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
96
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
97
+ # Deserialize Response
98
+ if status_code == 200
99
+ begin
100
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
101
+ result_mapper = Azure::EventGrid::Mgmt::V2020_04_01_preview::Models::TopicTypesListResult.mapper()
102
+ result.body = @client.deserialize(result_mapper, parsed_response)
103
+ rescue Exception => e
104
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
105
+ end
106
+ end
107
+
108
+ result
109
+ end
110
+
111
+ promise.execute
112
+ end
113
+
114
+ #
115
+ # Get a topic type.
116
+ #
117
+ # Get information about a topic type.
118
+ #
119
+ # @param topic_type_name [String] Name of the topic type.
120
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
121
+ # will be added to the HTTP request.
122
+ #
123
+ # @return [TopicTypeInfo] operation results.
124
+ #
125
+ def get(topic_type_name, custom_headers:nil)
126
+ response = get_async(topic_type_name, custom_headers:custom_headers).value!
127
+ response.body unless response.nil?
128
+ end
129
+
130
+ #
131
+ # Get a topic type.
132
+ #
133
+ # Get information about a topic type.
134
+ #
135
+ # @param topic_type_name [String] Name of the topic type.
136
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
137
+ # will be added to the HTTP request.
138
+ #
139
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
140
+ #
141
+ def get_with_http_info(topic_type_name, custom_headers:nil)
142
+ get_async(topic_type_name, custom_headers:custom_headers).value!
143
+ end
144
+
145
+ #
146
+ # Get a topic type.
147
+ #
148
+ # Get information about a topic type.
149
+ #
150
+ # @param topic_type_name [String] Name of the topic type.
151
+ # @param [Hash{String => String}] A hash of custom headers that will be added
152
+ # to the HTTP request.
153
+ #
154
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
155
+ #
156
+ def get_async(topic_type_name, custom_headers:nil)
157
+ fail ArgumentError, 'topic_type_name is nil' if topic_type_name.nil?
158
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
159
+
160
+
161
+ request_headers = {}
162
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
163
+
164
+ # Set Headers
165
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
166
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
167
+ path_template = 'providers/Microsoft.EventGrid/topicTypes/{topicTypeName}'
168
+
169
+ request_url = @base_url || @client.base_url
170
+
171
+ options = {
172
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
173
+ path_params: {'topicTypeName' => topic_type_name},
174
+ query_params: {'api-version' => @client.api_version},
175
+ headers: request_headers.merge(custom_headers || {}),
176
+ base_url: request_url
177
+ }
178
+ promise = @client.make_request_async(:get, path_template, options)
179
+
180
+ promise = promise.then do |result|
181
+ http_response = result.response
182
+ status_code = http_response.status
183
+ response_content = http_response.body
184
+ unless status_code == 200
185
+ error_model = JSON.load(response_content)
186
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
187
+ end
188
+
189
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
190
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
191
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
192
+ # Deserialize Response
193
+ if status_code == 200
194
+ begin
195
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
196
+ result_mapper = Azure::EventGrid::Mgmt::V2020_04_01_preview::Models::TopicTypeInfo.mapper()
197
+ result.body = @client.deserialize(result_mapper, parsed_response)
198
+ rescue Exception => e
199
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
200
+ end
201
+ end
202
+
203
+ result
204
+ end
205
+
206
+ promise.execute
207
+ end
208
+
209
+ #
210
+ # List event types
211
+ #
212
+ # List event types for a topic type
213
+ #
214
+ # @param topic_type_name [String] Name of the topic type
215
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
216
+ # will be added to the HTTP request.
217
+ #
218
+ # @return [EventTypesListResult] operation results.
219
+ #
220
+ def list_event_types(topic_type_name, custom_headers:nil)
221
+ response = list_event_types_async(topic_type_name, custom_headers:custom_headers).value!
222
+ response.body unless response.nil?
223
+ end
224
+
225
+ #
226
+ # List event types
227
+ #
228
+ # List event types for a topic type
229
+ #
230
+ # @param topic_type_name [String] Name of the topic type
231
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
232
+ # will be added to the HTTP request.
233
+ #
234
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
235
+ #
236
+ def list_event_types_with_http_info(topic_type_name, custom_headers:nil)
237
+ list_event_types_async(topic_type_name, custom_headers:custom_headers).value!
238
+ end
239
+
240
+ #
241
+ # List event types
242
+ #
243
+ # List event types for a topic type
244
+ #
245
+ # @param topic_type_name [String] Name of the topic type
246
+ # @param [Hash{String => String}] A hash of custom headers that will be added
247
+ # to the HTTP request.
248
+ #
249
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
250
+ #
251
+ def list_event_types_async(topic_type_name, custom_headers:nil)
252
+ fail ArgumentError, 'topic_type_name is nil' if topic_type_name.nil?
253
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
254
+
255
+
256
+ request_headers = {}
257
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
258
+
259
+ # Set Headers
260
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
261
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
262
+ path_template = 'providers/Microsoft.EventGrid/topicTypes/{topicTypeName}/eventTypes'
263
+
264
+ request_url = @base_url || @client.base_url
265
+
266
+ options = {
267
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
268
+ path_params: {'topicTypeName' => topic_type_name},
269
+ query_params: {'api-version' => @client.api_version},
270
+ headers: request_headers.merge(custom_headers || {}),
271
+ base_url: request_url
272
+ }
273
+ promise = @client.make_request_async(:get, path_template, options)
274
+
275
+ promise = promise.then do |result|
276
+ http_response = result.response
277
+ status_code = http_response.status
278
+ response_content = http_response.body
279
+ unless status_code == 200
280
+ error_model = JSON.load(response_content)
281
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
282
+ end
283
+
284
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
285
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
286
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
287
+ # Deserialize Response
288
+ if status_code == 200
289
+ begin
290
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
291
+ result_mapper = Azure::EventGrid::Mgmt::V2020_04_01_preview::Models::EventTypesListResult.mapper()
292
+ result.body = @client.deserialize(result_mapper, parsed_response)
293
+ rescue Exception => e
294
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
295
+ end
296
+ end
297
+
298
+ result
299
+ end
300
+
301
+ promise.execute
302
+ end
303
+
304
+ end
305
+ end