aws-sdk-medicalimaging 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.
@@ -0,0 +1,1262 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ require 'seahorse/client/plugins/content_length.rb'
11
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
12
+ require 'aws-sdk-core/plugins/logging.rb'
13
+ require 'aws-sdk-core/plugins/param_converter.rb'
14
+ require 'aws-sdk-core/plugins/param_validator.rb'
15
+ require 'aws-sdk-core/plugins/user_agent.rb'
16
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
17
+ require 'aws-sdk-core/plugins/retry_errors.rb'
18
+ require 'aws-sdk-core/plugins/global_configuration.rb'
19
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
20
+ require 'aws-sdk-core/plugins/endpoint_discovery.rb'
21
+ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
22
+ require 'aws-sdk-core/plugins/response_paging.rb'
23
+ require 'aws-sdk-core/plugins/stub_responses.rb'
24
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
25
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
26
+ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
+ require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
+ require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
+ require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
+ require 'aws-sdk-core/plugins/request_compression.rb'
32
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
33
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
34
+ require 'aws-sdk-core/plugins/sign.rb'
35
+ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
36
+
37
+ Aws::Plugins::GlobalConfiguration.add_identifier(:medicalimaging)
38
+
39
+ module Aws::MedicalImaging
40
+ # An API client for MedicalImaging. To construct a client, you need to configure a `:region` and `:credentials`.
41
+ #
42
+ # client = Aws::MedicalImaging::Client.new(
43
+ # region: region_name,
44
+ # credentials: credentials,
45
+ # # ...
46
+ # )
47
+ #
48
+ # For details on configuring region and credentials see
49
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
50
+ #
51
+ # See {#initialize} for a full list of supported configuration options.
52
+ class Client < Seahorse::Client::Base
53
+
54
+ include Aws::ClientStubs
55
+
56
+ @identifier = :medicalimaging
57
+
58
+ set_api(ClientApi::API)
59
+
60
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
61
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
62
+ add_plugin(Aws::Plugins::Logging)
63
+ add_plugin(Aws::Plugins::ParamConverter)
64
+ add_plugin(Aws::Plugins::ParamValidator)
65
+ add_plugin(Aws::Plugins::UserAgent)
66
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
67
+ add_plugin(Aws::Plugins::RetryErrors)
68
+ add_plugin(Aws::Plugins::GlobalConfiguration)
69
+ add_plugin(Aws::Plugins::RegionalEndpoint)
70
+ add_plugin(Aws::Plugins::EndpointDiscovery)
71
+ add_plugin(Aws::Plugins::EndpointPattern)
72
+ add_plugin(Aws::Plugins::ResponsePaging)
73
+ add_plugin(Aws::Plugins::StubResponses)
74
+ add_plugin(Aws::Plugins::IdempotencyToken)
75
+ add_plugin(Aws::Plugins::JsonvalueConverter)
76
+ add_plugin(Aws::Plugins::ClientMetricsPlugin)
77
+ add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
78
+ add_plugin(Aws::Plugins::TransferEncoding)
79
+ add_plugin(Aws::Plugins::HttpChecksum)
80
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
81
+ add_plugin(Aws::Plugins::RequestCompression)
82
+ add_plugin(Aws::Plugins::DefaultsMode)
83
+ add_plugin(Aws::Plugins::RecursionDetection)
84
+ add_plugin(Aws::Plugins::Sign)
85
+ add_plugin(Aws::Plugins::Protocols::RestJson)
86
+ add_plugin(Aws::MedicalImaging::Plugins::Endpoints)
87
+
88
+ # @overload initialize(options)
89
+ # @param [Hash] options
90
+ # @option options [required, Aws::CredentialProvider] :credentials
91
+ # Your AWS credentials. This can be an instance of any one of the
92
+ # following classes:
93
+ #
94
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
95
+ # credentials.
96
+ #
97
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
98
+ # shared file, such as `~/.aws/config`.
99
+ #
100
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
101
+ #
102
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
103
+ # assume a role after providing credentials via the web.
104
+ #
105
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
106
+ # access token generated from `aws login`.
107
+ #
108
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
109
+ # process that outputs to stdout.
110
+ #
111
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
112
+ # from an EC2 IMDS on an EC2 instance.
113
+ #
114
+ # * `Aws::ECSCredentials` - Used for loading credentials from
115
+ # instances running in ECS.
116
+ #
117
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
118
+ # from the Cognito Identity service.
119
+ #
120
+ # When `:credentials` are not configured directly, the following
121
+ # locations will be searched for credentials:
122
+ #
123
+ # * `Aws.config[:credentials]`
124
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
125
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
126
+ # * `~/.aws/credentials`
127
+ # * `~/.aws/config`
128
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
129
+ # are very aggressive. Construct and pass an instance of
130
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
131
+ # enable retries and extended timeouts. Instance profile credential
132
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
133
+ # to true.
134
+ #
135
+ # @option options [required, String] :region
136
+ # The AWS region to connect to. The configured `:region` is
137
+ # used to determine the service `:endpoint`. When not passed,
138
+ # a default `:region` is searched for in the following locations:
139
+ #
140
+ # * `Aws.config[:region]`
141
+ # * `ENV['AWS_REGION']`
142
+ # * `ENV['AMAZON_REGION']`
143
+ # * `ENV['AWS_DEFAULT_REGION']`
144
+ # * `~/.aws/credentials`
145
+ # * `~/.aws/config`
146
+ #
147
+ # @option options [String] :access_key_id
148
+ #
149
+ # @option options [Boolean] :active_endpoint_cache (false)
150
+ # When set to `true`, a thread polling for endpoints will be running in
151
+ # the background every 60 secs (default). Defaults to `false`.
152
+ #
153
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
154
+ # Used only in `adaptive` retry mode. When true, the request will sleep
155
+ # until there is sufficent client side capacity to retry the request.
156
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
157
+ # not retry instead of sleeping.
158
+ #
159
+ # @option options [Boolean] :client_side_monitoring (false)
160
+ # When `true`, client-side metrics will be collected for all API requests from
161
+ # this client.
162
+ #
163
+ # @option options [String] :client_side_monitoring_client_id ("")
164
+ # Allows you to provide an identifier for this client which will be attached to
165
+ # all generated client side metrics. Defaults to an empty string.
166
+ #
167
+ # @option options [String] :client_side_monitoring_host ("127.0.0.1")
168
+ # Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client
169
+ # side monitoring agent is running on, where client metrics will be published via UDP.
170
+ #
171
+ # @option options [Integer] :client_side_monitoring_port (31000)
172
+ # Required for publishing client metrics. The port that the client side monitoring
173
+ # agent is running on, where client metrics will be published via UDP.
174
+ #
175
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
176
+ # Allows you to provide a custom client-side monitoring publisher class. By default,
177
+ # will use the Client Side Monitoring Agent Publisher.
178
+ #
179
+ # @option options [Boolean] :convert_params (true)
180
+ # When `true`, an attempt is made to coerce request parameters into
181
+ # the required types.
182
+ #
183
+ # @option options [Boolean] :correct_clock_skew (true)
184
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
185
+ # a clock skew correction and retry requests with skewed client clocks.
186
+ #
187
+ # @option options [String] :defaults_mode ("legacy")
188
+ # See {Aws::DefaultsModeConfiguration} for a list of the
189
+ # accepted modes and the configuration defaults that are included.
190
+ #
191
+ # @option options [Boolean] :disable_host_prefix_injection (false)
192
+ # Set to true to disable SDK automatically adding host prefix
193
+ # to default service endpoint when available.
194
+ #
195
+ # @option options [Boolean] :disable_request_compression (false)
196
+ # When set to 'true' the request body will not be compressed
197
+ # for supported operations.
198
+ #
199
+ # @option options [String] :endpoint
200
+ # The client endpoint is normally constructed from the `:region`
201
+ # option. You should only configure an `:endpoint` when connecting
202
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
203
+ #
204
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
205
+ # Used for the maximum size limit of the LRU cache storing endpoints data
206
+ # for endpoint discovery enabled operations. Defaults to 1000.
207
+ #
208
+ # @option options [Integer] :endpoint_cache_max_threads (10)
209
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
210
+ #
211
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
212
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
213
+ # Use this option to config the time interval in seconds for making
214
+ # requests fetching endpoints information. Defaults to 60 sec.
215
+ #
216
+ # @option options [Boolean] :endpoint_discovery (false)
217
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
218
+ #
219
+ # @option options [Boolean] :ignore_configured_endpoint_urls
220
+ # Setting to true disables use of endpoint URLs provided via environment
221
+ # variables and the shared configuration file.
222
+ #
223
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
224
+ # The log formatter.
225
+ #
226
+ # @option options [Symbol] :log_level (:info)
227
+ # The log level to send messages to the `:logger` at.
228
+ #
229
+ # @option options [Logger] :logger
230
+ # The Logger instance to send log messages to. If this option
231
+ # is not set, logging will be disabled.
232
+ #
233
+ # @option options [Integer] :max_attempts (3)
234
+ # An integer representing the maximum number attempts that will be made for
235
+ # a single request, including the initial attempt. For example,
236
+ # setting this value to 5 will result in a request being retried up to
237
+ # 4 times. Used in `standard` and `adaptive` retry modes.
238
+ #
239
+ # @option options [String] :profile ("default")
240
+ # Used when loading credentials from the shared credentials file
241
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
242
+ #
243
+ # @option options [Integer] :request_min_compression_size_bytes (10240)
244
+ # The minimum size in bytes that triggers compression for request
245
+ # bodies. The value must be non-negative integer value between 0
246
+ # and 10485780 bytes inclusive.
247
+ #
248
+ # @option options [Proc] :retry_backoff
249
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
250
+ # This option is only used in the `legacy` retry mode.
251
+ #
252
+ # @option options [Float] :retry_base_delay (0.3)
253
+ # The base delay in seconds used by the default backoff function. This option
254
+ # is only used in the `legacy` retry mode.
255
+ #
256
+ # @option options [Symbol] :retry_jitter (:none)
257
+ # A delay randomiser function used by the default backoff function.
258
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
259
+ # otherwise a Proc that takes and returns a number. This option is only used
260
+ # in the `legacy` retry mode.
261
+ #
262
+ # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
263
+ #
264
+ # @option options [Integer] :retry_limit (3)
265
+ # The maximum number of times to retry failed requests. Only
266
+ # ~ 500 level server errors and certain ~ 400 level client errors
267
+ # are retried. Generally, these are throttling errors, data
268
+ # checksum errors, networking errors, timeout errors, auth errors,
269
+ # endpoint discovery, and errors from expired credentials.
270
+ # This option is only used in the `legacy` retry mode.
271
+ #
272
+ # @option options [Integer] :retry_max_delay (0)
273
+ # The maximum number of seconds to delay between retries (0 for no limit)
274
+ # used by the default backoff function. This option is only used in the
275
+ # `legacy` retry mode.
276
+ #
277
+ # @option options [String] :retry_mode ("legacy")
278
+ # Specifies which retry algorithm to use. Values are:
279
+ #
280
+ # * `legacy` - The pre-existing retry behavior. This is default value if
281
+ # no retry mode is provided.
282
+ #
283
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
284
+ # This includes support for retry quotas, which limit the number of
285
+ # unsuccessful retries a client can make.
286
+ #
287
+ # * `adaptive` - An experimental retry mode that includes all the
288
+ # functionality of `standard` mode along with automatic client side
289
+ # throttling. This is a provisional mode that may change behavior
290
+ # in the future.
291
+ #
292
+ #
293
+ # @option options [String] :sdk_ua_app_id
294
+ # A unique and opaque application ID that is appended to the
295
+ # User-Agent header as app/<sdk_ua_app_id>. It should have a
296
+ # maximum length of 50.
297
+ #
298
+ # @option options [String] :secret_access_key
299
+ #
300
+ # @option options [String] :session_token
301
+ #
302
+ # @option options [Boolean] :stub_responses (false)
303
+ # Causes the client to return stubbed responses. By default
304
+ # fake responses are generated and returned. You can specify
305
+ # the response data to return or errors to raise by calling
306
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
307
+ #
308
+ # ** Please note ** When response stubbing is enabled, no HTTP
309
+ # requests are made, and retries are disabled.
310
+ #
311
+ # @option options [Aws::TokenProvider] :token_provider
312
+ # A Bearer Token Provider. This can be an instance of any one of the
313
+ # following classes:
314
+ #
315
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
316
+ # tokens.
317
+ #
318
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
319
+ # access token generated from `aws login`.
320
+ #
321
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
322
+ # will be used to search for tokens configured for your profile in shared configuration files.
323
+ #
324
+ # @option options [Boolean] :use_dualstack_endpoint
325
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
326
+ # will be used if available.
327
+ #
328
+ # @option options [Boolean] :use_fips_endpoint
329
+ # When set to `true`, fips compatible endpoints will be used if available.
330
+ # When a `fips` region is used, the region is normalized and this config
331
+ # is set to `true`.
332
+ #
333
+ # @option options [Boolean] :validate_params (true)
334
+ # When `true`, request parameters are validated before
335
+ # sending the request.
336
+ #
337
+ # @option options [Aws::MedicalImaging::EndpointProvider] :endpoint_provider
338
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::MedicalImaging::EndpointParameters`
339
+ #
340
+ # @option options [URI::HTTP,String] :http_proxy A proxy to send
341
+ # requests through. Formatted like 'http://proxy.com:123'.
342
+ #
343
+ # @option options [Float] :http_open_timeout (15) The number of
344
+ # seconds to wait when opening a HTTP session before raising a
345
+ # `Timeout::Error`.
346
+ #
347
+ # @option options [Float] :http_read_timeout (60) The default
348
+ # number of seconds to wait for response data. This value can
349
+ # safely be set per-request on the session.
350
+ #
351
+ # @option options [Float] :http_idle_timeout (5) The number of
352
+ # seconds a connection is allowed to sit idle before it is
353
+ # considered stale. Stale connections are closed and removed
354
+ # from the pool before making a request.
355
+ #
356
+ # @option options [Float] :http_continue_timeout (1) The number of
357
+ # seconds to wait for a 100-continue response before sending the
358
+ # request body. This option has no effect unless the request has
359
+ # "Expect" header set to "100-continue". Defaults to `nil` which
360
+ # disables this behaviour. This value can safely be set per
361
+ # request on the session.
362
+ #
363
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
364
+ # in seconds.
365
+ #
366
+ # @option options [Boolean] :http_wire_trace (false) When `true`,
367
+ # HTTP debug output will be sent to the `:logger`.
368
+ #
369
+ # @option options [Boolean] :ssl_verify_peer (true) When `true`,
370
+ # SSL peer certificates are verified when establishing a
371
+ # connection.
372
+ #
373
+ # @option options [String] :ssl_ca_bundle Full path to the SSL
374
+ # certificate authority bundle file that should be used when
375
+ # verifying peer certificates. If you do not pass
376
+ # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
377
+ # will be used if available.
378
+ #
379
+ # @option options [String] :ssl_ca_directory Full path of the
380
+ # directory that contains the unbundled SSL certificate
381
+ # authority files for verifying peer certificates. If you do
382
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
383
+ # system default will be used if available.
384
+ #
385
+ def initialize(*args)
386
+ super
387
+ end
388
+
389
+ # @!group API Operations
390
+
391
+ # Copy an image set.
392
+ #
393
+ # @option params [required, String] :datastore_id
394
+ # The data store identifier.
395
+ #
396
+ # @option params [required, String] :source_image_set_id
397
+ # The source image set identifier.
398
+ #
399
+ # @option params [required, Types::CopyImageSetInformation] :copy_image_set_information
400
+ # Copy image set information.
401
+ #
402
+ # @return [Types::CopyImageSetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
403
+ #
404
+ # * {Types::CopyImageSetResponse#datastore_id #datastore_id} => String
405
+ # * {Types::CopyImageSetResponse#source_image_set_properties #source_image_set_properties} => Types::CopySourceImageSetProperties
406
+ # * {Types::CopyImageSetResponse#destination_image_set_properties #destination_image_set_properties} => Types::CopyDestinationImageSetProperties
407
+ #
408
+ # @example Request syntax with placeholder values
409
+ #
410
+ # resp = client.copy_image_set({
411
+ # datastore_id: "DatastoreId", # required
412
+ # source_image_set_id: "ImageSetId", # required
413
+ # copy_image_set_information: { # required
414
+ # source_image_set: { # required
415
+ # latest_version_id: "ImageSetExternalVersionId", # required
416
+ # },
417
+ # destination_image_set: {
418
+ # image_set_id: "ImageSetId", # required
419
+ # latest_version_id: "ImageSetExternalVersionId", # required
420
+ # },
421
+ # },
422
+ # })
423
+ #
424
+ # @example Response structure
425
+ #
426
+ # resp.datastore_id #=> String
427
+ # resp.source_image_set_properties.image_set_id #=> String
428
+ # resp.source_image_set_properties.latest_version_id #=> String
429
+ # resp.source_image_set_properties.image_set_state #=> String, one of "ACTIVE", "LOCKED", "DELETED"
430
+ # resp.source_image_set_properties.image_set_workflow_status #=> String, one of "CREATED", "COPIED", "COPYING", "COPYING_WITH_READ_ONLY_ACCESS", "COPY_FAILED", "UPDATING", "UPDATED", "UPDATE_FAILED", "DELETING", "DELETED"
431
+ # resp.source_image_set_properties.created_at #=> Time
432
+ # resp.source_image_set_properties.updated_at #=> Time
433
+ # resp.source_image_set_properties.image_set_arn #=> String
434
+ # resp.destination_image_set_properties.image_set_id #=> String
435
+ # resp.destination_image_set_properties.latest_version_id #=> String
436
+ # resp.destination_image_set_properties.image_set_state #=> String, one of "ACTIVE", "LOCKED", "DELETED"
437
+ # resp.destination_image_set_properties.image_set_workflow_status #=> String, one of "CREATED", "COPIED", "COPYING", "COPYING_WITH_READ_ONLY_ACCESS", "COPY_FAILED", "UPDATING", "UPDATED", "UPDATE_FAILED", "DELETING", "DELETED"
438
+ # resp.destination_image_set_properties.created_at #=> Time
439
+ # resp.destination_image_set_properties.updated_at #=> Time
440
+ # resp.destination_image_set_properties.image_set_arn #=> String
441
+ #
442
+ # @see http://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/CopyImageSet AWS API Documentation
443
+ #
444
+ # @overload copy_image_set(params = {})
445
+ # @param [Hash] params ({})
446
+ def copy_image_set(params = {}, options = {})
447
+ req = build_request(:copy_image_set, params)
448
+ req.send_request(options)
449
+ end
450
+
451
+ # Create a data store.
452
+ #
453
+ # @option params [String] :datastore_name
454
+ # The data store name.
455
+ #
456
+ # @option params [required, String] :client_token
457
+ # A unique identifier for API idempotency.
458
+ #
459
+ # **A suitable default value is auto-generated.** You should normally
460
+ # not need to pass this option.**
461
+ #
462
+ # @option params [Hash<String,String>] :tags
463
+ # The tags provided when creating a data store.
464
+ #
465
+ # @option params [String] :kms_key_arn
466
+ # The Amazon Resource Name (ARN) assigned to the AWS Key Management
467
+ # Service (AWS KMS) key for accessing encrypted data.
468
+ #
469
+ # @return [Types::CreateDatastoreResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
470
+ #
471
+ # * {Types::CreateDatastoreResponse#datastore_id #datastore_id} => String
472
+ # * {Types::CreateDatastoreResponse#datastore_status #datastore_status} => String
473
+ #
474
+ # @example Request syntax with placeholder values
475
+ #
476
+ # resp = client.create_datastore({
477
+ # datastore_name: "DatastoreName",
478
+ # client_token: "ClientToken", # required
479
+ # tags: {
480
+ # "TagKey" => "TagValue",
481
+ # },
482
+ # kms_key_arn: "KmsKeyArn",
483
+ # })
484
+ #
485
+ # @example Response structure
486
+ #
487
+ # resp.datastore_id #=> String
488
+ # resp.datastore_status #=> String, one of "CREATING", "CREATE_FAILED", "ACTIVE", "DELETING", "DELETED"
489
+ #
490
+ # @see http://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/CreateDatastore AWS API Documentation
491
+ #
492
+ # @overload create_datastore(params = {})
493
+ # @param [Hash] params ({})
494
+ def create_datastore(params = {}, options = {})
495
+ req = build_request(:create_datastore, params)
496
+ req.send_request(options)
497
+ end
498
+
499
+ # Delete a data store.
500
+ #
501
+ # <note markdown="1"> Before a data store can be deleted, you must first delete all image
502
+ # sets within it.
503
+ #
504
+ # </note>
505
+ #
506
+ # @option params [required, String] :datastore_id
507
+ # The data store identifier.
508
+ #
509
+ # @return [Types::DeleteDatastoreResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
510
+ #
511
+ # * {Types::DeleteDatastoreResponse#datastore_id #datastore_id} => String
512
+ # * {Types::DeleteDatastoreResponse#datastore_status #datastore_status} => String
513
+ #
514
+ # @example Request syntax with placeholder values
515
+ #
516
+ # resp = client.delete_datastore({
517
+ # datastore_id: "DatastoreId", # required
518
+ # })
519
+ #
520
+ # @example Response structure
521
+ #
522
+ # resp.datastore_id #=> String
523
+ # resp.datastore_status #=> String, one of "CREATING", "CREATE_FAILED", "ACTIVE", "DELETING", "DELETED"
524
+ #
525
+ # @see http://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/DeleteDatastore AWS API Documentation
526
+ #
527
+ # @overload delete_datastore(params = {})
528
+ # @param [Hash] params ({})
529
+ def delete_datastore(params = {}, options = {})
530
+ req = build_request(:delete_datastore, params)
531
+ req.send_request(options)
532
+ end
533
+
534
+ # Delete an image set.
535
+ #
536
+ # @option params [required, String] :datastore_id
537
+ # The data store identifier.
538
+ #
539
+ # @option params [required, String] :image_set_id
540
+ # The image set identifier.
541
+ #
542
+ # @return [Types::DeleteImageSetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
543
+ #
544
+ # * {Types::DeleteImageSetResponse#datastore_id #datastore_id} => String
545
+ # * {Types::DeleteImageSetResponse#image_set_id #image_set_id} => String
546
+ # * {Types::DeleteImageSetResponse#image_set_state #image_set_state} => String
547
+ # * {Types::DeleteImageSetResponse#image_set_workflow_status #image_set_workflow_status} => String
548
+ #
549
+ # @example Request syntax with placeholder values
550
+ #
551
+ # resp = client.delete_image_set({
552
+ # datastore_id: "DatastoreId", # required
553
+ # image_set_id: "ImageSetId", # required
554
+ # })
555
+ #
556
+ # @example Response structure
557
+ #
558
+ # resp.datastore_id #=> String
559
+ # resp.image_set_id #=> String
560
+ # resp.image_set_state #=> String, one of "ACTIVE", "LOCKED", "DELETED"
561
+ # resp.image_set_workflow_status #=> String, one of "CREATED", "COPIED", "COPYING", "COPYING_WITH_READ_ONLY_ACCESS", "COPY_FAILED", "UPDATING", "UPDATED", "UPDATE_FAILED", "DELETING", "DELETED"
562
+ #
563
+ # @see http://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/DeleteImageSet AWS API Documentation
564
+ #
565
+ # @overload delete_image_set(params = {})
566
+ # @param [Hash] params ({})
567
+ def delete_image_set(params = {}, options = {})
568
+ req = build_request(:delete_image_set, params)
569
+ req.send_request(options)
570
+ end
571
+
572
+ # Get the import job properties to learn more about the job or job
573
+ # progress.
574
+ #
575
+ # @option params [required, String] :datastore_id
576
+ # The data store identifier.
577
+ #
578
+ # @option params [required, String] :job_id
579
+ # The import job identifier.
580
+ #
581
+ # @return [Types::GetDICOMImportJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
582
+ #
583
+ # * {Types::GetDICOMImportJobResponse#job_properties #job_properties} => Types::DICOMImportJobProperties
584
+ #
585
+ # @example Request syntax with placeholder values
586
+ #
587
+ # resp = client.get_dicom_import_job({
588
+ # datastore_id: "DatastoreId", # required
589
+ # job_id: "JobId", # required
590
+ # })
591
+ #
592
+ # @example Response structure
593
+ #
594
+ # resp.job_properties.job_id #=> String
595
+ # resp.job_properties.job_name #=> String
596
+ # resp.job_properties.job_status #=> String, one of "SUBMITTED", "IN_PROGRESS", "COMPLETED", "FAILED"
597
+ # resp.job_properties.datastore_id #=> String
598
+ # resp.job_properties.data_access_role_arn #=> String
599
+ # resp.job_properties.ended_at #=> Time
600
+ # resp.job_properties.submitted_at #=> Time
601
+ # resp.job_properties.input_s3_uri #=> String
602
+ # resp.job_properties.output_s3_uri #=> String
603
+ # resp.job_properties.message #=> String
604
+ #
605
+ # @see http://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/GetDICOMImportJob AWS API Documentation
606
+ #
607
+ # @overload get_dicom_import_job(params = {})
608
+ # @param [Hash] params ({})
609
+ def get_dicom_import_job(params = {}, options = {})
610
+ req = build_request(:get_dicom_import_job, params)
611
+ req.send_request(options)
612
+ end
613
+
614
+ # Get data store properties.
615
+ #
616
+ # @option params [required, String] :datastore_id
617
+ # The data store identifier.
618
+ #
619
+ # @return [Types::GetDatastoreResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
620
+ #
621
+ # * {Types::GetDatastoreResponse#datastore_properties #datastore_properties} => Types::DatastoreProperties
622
+ #
623
+ # @example Request syntax with placeholder values
624
+ #
625
+ # resp = client.get_datastore({
626
+ # datastore_id: "DatastoreId", # required
627
+ # })
628
+ #
629
+ # @example Response structure
630
+ #
631
+ # resp.datastore_properties.datastore_id #=> String
632
+ # resp.datastore_properties.datastore_name #=> String
633
+ # resp.datastore_properties.datastore_status #=> String, one of "CREATING", "CREATE_FAILED", "ACTIVE", "DELETING", "DELETED"
634
+ # resp.datastore_properties.kms_key_arn #=> String
635
+ # resp.datastore_properties.datastore_arn #=> String
636
+ # resp.datastore_properties.created_at #=> Time
637
+ # resp.datastore_properties.updated_at #=> Time
638
+ #
639
+ # @see http://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/GetDatastore AWS API Documentation
640
+ #
641
+ # @overload get_datastore(params = {})
642
+ # @param [Hash] params ({})
643
+ def get_datastore(params = {}, options = {})
644
+ req = build_request(:get_datastore, params)
645
+ req.send_request(options)
646
+ end
647
+
648
+ # Get an image frame (pixel data) for an image set.
649
+ #
650
+ # @option params [required, String] :datastore_id
651
+ # The data store identifier.
652
+ #
653
+ # @option params [required, String] :image_set_id
654
+ # The image set identifier.
655
+ #
656
+ # @option params [required, Types::ImageFrameInformation] :image_frame_information
657
+ # Information about the image frame (pixel data) identifier.
658
+ #
659
+ # @return [Types::GetImageFrameResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
660
+ #
661
+ # * {Types::GetImageFrameResponse#image_frame_blob #image_frame_blob} => IO
662
+ # * {Types::GetImageFrameResponse#content_type #content_type} => String
663
+ #
664
+ # @example Request syntax with placeholder values
665
+ #
666
+ # resp = client.get_image_frame({
667
+ # datastore_id: "DatastoreId", # required
668
+ # image_set_id: "ImageSetId", # required
669
+ # image_frame_information: { # required
670
+ # image_frame_id: "ImageFrameId", # required
671
+ # },
672
+ # })
673
+ #
674
+ # @example Response structure
675
+ #
676
+ # resp.image_frame_blob #=> IO
677
+ # resp.content_type #=> String
678
+ #
679
+ # @see http://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/GetImageFrame AWS API Documentation
680
+ #
681
+ # @overload get_image_frame(params = {})
682
+ # @param [Hash] params ({})
683
+ def get_image_frame(params = {}, options = {}, &block)
684
+ req = build_request(:get_image_frame, params)
685
+ req.send_request(options, &block)
686
+ end
687
+
688
+ # Get image set properties.
689
+ #
690
+ # @option params [required, String] :datastore_id
691
+ # The data store identifier.
692
+ #
693
+ # @option params [required, String] :image_set_id
694
+ # The image set identifier.
695
+ #
696
+ # @option params [String] :version_id
697
+ # The image set version identifier.
698
+ #
699
+ # @return [Types::GetImageSetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
700
+ #
701
+ # * {Types::GetImageSetResponse#datastore_id #datastore_id} => String
702
+ # * {Types::GetImageSetResponse#image_set_id #image_set_id} => String
703
+ # * {Types::GetImageSetResponse#version_id #version_id} => String
704
+ # * {Types::GetImageSetResponse#image_set_state #image_set_state} => String
705
+ # * {Types::GetImageSetResponse#image_set_workflow_status #image_set_workflow_status} => String
706
+ # * {Types::GetImageSetResponse#created_at #created_at} => Time
707
+ # * {Types::GetImageSetResponse#updated_at #updated_at} => Time
708
+ # * {Types::GetImageSetResponse#deleted_at #deleted_at} => Time
709
+ # * {Types::GetImageSetResponse#message #message} => String
710
+ # * {Types::GetImageSetResponse#image_set_arn #image_set_arn} => String
711
+ #
712
+ # @example Request syntax with placeholder values
713
+ #
714
+ # resp = client.get_image_set({
715
+ # datastore_id: "DatastoreId", # required
716
+ # image_set_id: "ImageSetId", # required
717
+ # version_id: "ImageSetExternalVersionId",
718
+ # })
719
+ #
720
+ # @example Response structure
721
+ #
722
+ # resp.datastore_id #=> String
723
+ # resp.image_set_id #=> String
724
+ # resp.version_id #=> String
725
+ # resp.image_set_state #=> String, one of "ACTIVE", "LOCKED", "DELETED"
726
+ # resp.image_set_workflow_status #=> String, one of "CREATED", "COPIED", "COPYING", "COPYING_WITH_READ_ONLY_ACCESS", "COPY_FAILED", "UPDATING", "UPDATED", "UPDATE_FAILED", "DELETING", "DELETED"
727
+ # resp.created_at #=> Time
728
+ # resp.updated_at #=> Time
729
+ # resp.deleted_at #=> Time
730
+ # resp.message #=> String
731
+ # resp.image_set_arn #=> String
732
+ #
733
+ # @see http://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/GetImageSet AWS API Documentation
734
+ #
735
+ # @overload get_image_set(params = {})
736
+ # @param [Hash] params ({})
737
+ def get_image_set(params = {}, options = {})
738
+ req = build_request(:get_image_set, params)
739
+ req.send_request(options)
740
+ end
741
+
742
+ # Get metadata attributes for an image set.
743
+ #
744
+ # @option params [required, String] :datastore_id
745
+ # The data store identifier.
746
+ #
747
+ # @option params [required, String] :image_set_id
748
+ # The image set identifier.
749
+ #
750
+ # @option params [String] :version_id
751
+ # The image set version identifier.
752
+ #
753
+ # @return [Types::GetImageSetMetadataResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
754
+ #
755
+ # * {Types::GetImageSetMetadataResponse#image_set_metadata_blob #image_set_metadata_blob} => IO
756
+ # * {Types::GetImageSetMetadataResponse#content_type #content_type} => String
757
+ # * {Types::GetImageSetMetadataResponse#content_encoding #content_encoding} => String
758
+ #
759
+ # @example Request syntax with placeholder values
760
+ #
761
+ # resp = client.get_image_set_metadata({
762
+ # datastore_id: "DatastoreId", # required
763
+ # image_set_id: "ImageSetId", # required
764
+ # version_id: "ImageSetExternalVersionId",
765
+ # })
766
+ #
767
+ # @example Response structure
768
+ #
769
+ # resp.image_set_metadata_blob #=> IO
770
+ # resp.content_type #=> String
771
+ # resp.content_encoding #=> String
772
+ #
773
+ # @see http://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/GetImageSetMetadata AWS API Documentation
774
+ #
775
+ # @overload get_image_set_metadata(params = {})
776
+ # @param [Hash] params ({})
777
+ def get_image_set_metadata(params = {}, options = {}, &block)
778
+ req = build_request(:get_image_set_metadata, params)
779
+ req.send_request(options, &block)
780
+ end
781
+
782
+ # List import jobs created by this AWS account for a specific data
783
+ # store.
784
+ #
785
+ # @option params [required, String] :datastore_id
786
+ # The data store identifier.
787
+ #
788
+ # @option params [String] :job_status
789
+ # The filters for listing import jobs based on status.
790
+ #
791
+ # @option params [String] :next_token
792
+ # The pagination token used to request the list of import jobs on the
793
+ # next page.
794
+ #
795
+ # @option params [Integer] :max_results
796
+ # The max results count. The upper bound is determined by load testing.
797
+ #
798
+ # @return [Types::ListDICOMImportJobsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
799
+ #
800
+ # * {Types::ListDICOMImportJobsResponse#job_summaries #job_summaries} => Array&lt;Types::DICOMImportJobSummary&gt;
801
+ # * {Types::ListDICOMImportJobsResponse#next_token #next_token} => String
802
+ #
803
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
804
+ #
805
+ # @example Request syntax with placeholder values
806
+ #
807
+ # resp = client.list_dicom_import_jobs({
808
+ # datastore_id: "DatastoreId", # required
809
+ # job_status: "SUBMITTED", # accepts SUBMITTED, IN_PROGRESS, COMPLETED, FAILED
810
+ # next_token: "NextToken",
811
+ # max_results: 1,
812
+ # })
813
+ #
814
+ # @example Response structure
815
+ #
816
+ # resp.job_summaries #=> Array
817
+ # resp.job_summaries[0].job_id #=> String
818
+ # resp.job_summaries[0].job_name #=> String
819
+ # resp.job_summaries[0].job_status #=> String, one of "SUBMITTED", "IN_PROGRESS", "COMPLETED", "FAILED"
820
+ # resp.job_summaries[0].datastore_id #=> String
821
+ # resp.job_summaries[0].data_access_role_arn #=> String
822
+ # resp.job_summaries[0].ended_at #=> Time
823
+ # resp.job_summaries[0].submitted_at #=> Time
824
+ # resp.job_summaries[0].message #=> String
825
+ # resp.next_token #=> String
826
+ #
827
+ # @see http://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/ListDICOMImportJobs AWS API Documentation
828
+ #
829
+ # @overload list_dicom_import_jobs(params = {})
830
+ # @param [Hash] params ({})
831
+ def list_dicom_import_jobs(params = {}, options = {})
832
+ req = build_request(:list_dicom_import_jobs, params)
833
+ req.send_request(options)
834
+ end
835
+
836
+ # List data stores created by this AWS account.
837
+ #
838
+ # @option params [String] :datastore_status
839
+ # The data store status.
840
+ #
841
+ # @option params [String] :next_token
842
+ # The pagination token used to request the list of data stores on the
843
+ # next page.
844
+ #
845
+ # @option params [Integer] :max_results
846
+ # Valid Range: Minimum value of 1. Maximum value of 50.
847
+ #
848
+ # @return [Types::ListDatastoresResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
849
+ #
850
+ # * {Types::ListDatastoresResponse#datastore_summaries #datastore_summaries} => Array&lt;Types::DatastoreSummary&gt;
851
+ # * {Types::ListDatastoresResponse#next_token #next_token} => String
852
+ #
853
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
854
+ #
855
+ # @example Request syntax with placeholder values
856
+ #
857
+ # resp = client.list_datastores({
858
+ # datastore_status: "CREATING", # accepts CREATING, CREATE_FAILED, ACTIVE, DELETING, DELETED
859
+ # next_token: "NextToken",
860
+ # max_results: 1,
861
+ # })
862
+ #
863
+ # @example Response structure
864
+ #
865
+ # resp.datastore_summaries #=> Array
866
+ # resp.datastore_summaries[0].datastore_id #=> String
867
+ # resp.datastore_summaries[0].datastore_name #=> String
868
+ # resp.datastore_summaries[0].datastore_status #=> String, one of "CREATING", "CREATE_FAILED", "ACTIVE", "DELETING", "DELETED"
869
+ # resp.datastore_summaries[0].datastore_arn #=> String
870
+ # resp.datastore_summaries[0].created_at #=> Time
871
+ # resp.datastore_summaries[0].updated_at #=> Time
872
+ # resp.next_token #=> String
873
+ #
874
+ # @see http://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/ListDatastores AWS API Documentation
875
+ #
876
+ # @overload list_datastores(params = {})
877
+ # @param [Hash] params ({})
878
+ def list_datastores(params = {}, options = {})
879
+ req = build_request(:list_datastores, params)
880
+ req.send_request(options)
881
+ end
882
+
883
+ # List image set versions.
884
+ #
885
+ # @option params [required, String] :datastore_id
886
+ # The data store identifier.
887
+ #
888
+ # @option params [required, String] :image_set_id
889
+ # The image set identifier.
890
+ #
891
+ # @option params [String] :next_token
892
+ # The pagination token used to request the list of image set versions on
893
+ # the next page.
894
+ #
895
+ # @option params [Integer] :max_results
896
+ # The max results count.
897
+ #
898
+ # @return [Types::ListImageSetVersionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
899
+ #
900
+ # * {Types::ListImageSetVersionsResponse#image_set_properties_list #image_set_properties_list} => Array&lt;Types::ImageSetProperties&gt;
901
+ # * {Types::ListImageSetVersionsResponse#next_token #next_token} => String
902
+ #
903
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
904
+ #
905
+ # @example Request syntax with placeholder values
906
+ #
907
+ # resp = client.list_image_set_versions({
908
+ # datastore_id: "DatastoreId", # required
909
+ # image_set_id: "ImageSetId", # required
910
+ # next_token: "NextToken",
911
+ # max_results: 1,
912
+ # })
913
+ #
914
+ # @example Response structure
915
+ #
916
+ # resp.image_set_properties_list #=> Array
917
+ # resp.image_set_properties_list[0].image_set_id #=> String
918
+ # resp.image_set_properties_list[0].version_id #=> String
919
+ # resp.image_set_properties_list[0].image_set_state #=> String, one of "ACTIVE", "LOCKED", "DELETED"
920
+ # resp.image_set_properties_list[0].image_set_workflow_status #=> String, one of "CREATED", "COPIED", "COPYING", "COPYING_WITH_READ_ONLY_ACCESS", "COPY_FAILED", "UPDATING", "UPDATED", "UPDATE_FAILED", "DELETING", "DELETED"
921
+ # resp.image_set_properties_list[0].created_at #=> Time
922
+ # resp.image_set_properties_list[0].updated_at #=> Time
923
+ # resp.image_set_properties_list[0].deleted_at #=> Time
924
+ # resp.image_set_properties_list[0].message #=> String
925
+ # resp.next_token #=> String
926
+ #
927
+ # @see http://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/ListImageSetVersions AWS API Documentation
928
+ #
929
+ # @overload list_image_set_versions(params = {})
930
+ # @param [Hash] params ({})
931
+ def list_image_set_versions(params = {}, options = {})
932
+ req = build_request(:list_image_set_versions, params)
933
+ req.send_request(options)
934
+ end
935
+
936
+ # Lists all tags associated with a medical imaging resource.
937
+ #
938
+ # @option params [required, String] :resource_arn
939
+ # The Amazon Resource Name (ARN) of the medical imaging resource to list
940
+ # tags for.
941
+ #
942
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
943
+ #
944
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Hash&lt;String,String&gt;
945
+ #
946
+ # @example Request syntax with placeholder values
947
+ #
948
+ # resp = client.list_tags_for_resource({
949
+ # resource_arn: "Arn", # required
950
+ # })
951
+ #
952
+ # @example Response structure
953
+ #
954
+ # resp.tags #=> Hash
955
+ # resp.tags["TagKey"] #=> String
956
+ #
957
+ # @see http://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/ListTagsForResource AWS API Documentation
958
+ #
959
+ # @overload list_tags_for_resource(params = {})
960
+ # @param [Hash] params ({})
961
+ def list_tags_for_resource(params = {}, options = {})
962
+ req = build_request(:list_tags_for_resource, params)
963
+ req.send_request(options)
964
+ end
965
+
966
+ # Search image sets based on defined input attributes.
967
+ #
968
+ # @option params [required, String] :datastore_id
969
+ # The identifier of the data store where the image sets reside.
970
+ #
971
+ # @option params [Types::SearchCriteria] :search_criteria
972
+ # The search criteria that filters by applying a maximum of 1 item to
973
+ # `SearchByAttribute`.
974
+ #
975
+ # @option params [Integer] :max_results
976
+ # The maximum number of results that can be returned in a search.
977
+ #
978
+ # @option params [String] :next_token
979
+ # The token used for pagination of results returned in the response. Use
980
+ # the token returned from the previous request to continue results where
981
+ # the previous request ended.
982
+ #
983
+ # @return [Types::SearchImageSetsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
984
+ #
985
+ # * {Types::SearchImageSetsResponse#image_sets_metadata_summaries #image_sets_metadata_summaries} => Array&lt;Types::ImageSetsMetadataSummary&gt;
986
+ # * {Types::SearchImageSetsResponse#next_token #next_token} => String
987
+ #
988
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
989
+ #
990
+ # @example Request syntax with placeholder values
991
+ #
992
+ # resp = client.search_image_sets({
993
+ # datastore_id: "DatastoreId", # required
994
+ # search_criteria: {
995
+ # filters: [
996
+ # {
997
+ # values: [ # required
998
+ # {
999
+ # dicom_patient_id: "DICOMPatientId",
1000
+ # dicom_accession_number: "DICOMAccessionNumber",
1001
+ # dicom_study_id: "DICOMStudyId",
1002
+ # dicom_study_instance_uid: "DICOMStudyInstanceUID",
1003
+ # created_at: Time.now,
1004
+ # dicom_study_date_and_time: {
1005
+ # dicom_study_date: "DICOMStudyDate", # required
1006
+ # dicom_study_time: "DICOMStudyTime",
1007
+ # },
1008
+ # },
1009
+ # ],
1010
+ # operator: "EQUAL", # required, accepts EQUAL, BETWEEN
1011
+ # },
1012
+ # ],
1013
+ # },
1014
+ # max_results: 1,
1015
+ # next_token: "NextToken",
1016
+ # })
1017
+ #
1018
+ # @example Response structure
1019
+ #
1020
+ # resp.image_sets_metadata_summaries #=> Array
1021
+ # resp.image_sets_metadata_summaries[0].image_set_id #=> String
1022
+ # resp.image_sets_metadata_summaries[0].version #=> Integer
1023
+ # resp.image_sets_metadata_summaries[0].created_at #=> Time
1024
+ # resp.image_sets_metadata_summaries[0].updated_at #=> Time
1025
+ # resp.image_sets_metadata_summaries[0].dicom_tags.dicom_patient_id #=> String
1026
+ # resp.image_sets_metadata_summaries[0].dicom_tags.dicom_patient_name #=> String
1027
+ # resp.image_sets_metadata_summaries[0].dicom_tags.dicom_patient_birth_date #=> String
1028
+ # resp.image_sets_metadata_summaries[0].dicom_tags.dicom_patient_sex #=> String
1029
+ # resp.image_sets_metadata_summaries[0].dicom_tags.dicom_study_instance_uid #=> String
1030
+ # resp.image_sets_metadata_summaries[0].dicom_tags.dicom_study_id #=> String
1031
+ # resp.image_sets_metadata_summaries[0].dicom_tags.dicom_study_description #=> String
1032
+ # resp.image_sets_metadata_summaries[0].dicom_tags.dicom_number_of_study_related_series #=> Integer
1033
+ # resp.image_sets_metadata_summaries[0].dicom_tags.dicom_number_of_study_related_instances #=> Integer
1034
+ # resp.image_sets_metadata_summaries[0].dicom_tags.dicom_accession_number #=> String
1035
+ # resp.image_sets_metadata_summaries[0].dicom_tags.dicom_study_date #=> String
1036
+ # resp.image_sets_metadata_summaries[0].dicom_tags.dicom_study_time #=> String
1037
+ # resp.next_token #=> String
1038
+ #
1039
+ # @see http://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/SearchImageSets AWS API Documentation
1040
+ #
1041
+ # @overload search_image_sets(params = {})
1042
+ # @param [Hash] params ({})
1043
+ def search_image_sets(params = {}, options = {})
1044
+ req = build_request(:search_image_sets, params)
1045
+ req.send_request(options)
1046
+ end
1047
+
1048
+ # Start importing bulk data into an `ACTIVE` data store. The import job
1049
+ # imports DICOM P10 files found in the S3 prefix specified by the
1050
+ # `inputS3Uri` parameter. The import job stores processing results in
1051
+ # the file specified by the `outputS3Uri` parameter.
1052
+ #
1053
+ # @option params [String] :job_name
1054
+ # The import job name.
1055
+ #
1056
+ # @option params [required, String] :data_access_role_arn
1057
+ # The Amazon Resource Name (ARN) of the IAM role that grants permission
1058
+ # to access medical imaging resources.
1059
+ #
1060
+ # @option params [required, String] :client_token
1061
+ # A unique identifier for API idempotency.
1062
+ #
1063
+ # **A suitable default value is auto-generated.** You should normally
1064
+ # not need to pass this option.**
1065
+ #
1066
+ # @option params [required, String] :datastore_id
1067
+ # The data store identifier.
1068
+ #
1069
+ # @option params [required, String] :input_s3_uri
1070
+ # The input prefix path for the S3 bucket that contains the DICOM files
1071
+ # to be imported.
1072
+ #
1073
+ # @option params [required, String] :output_s3_uri
1074
+ # The output prefix of the S3 bucket to upload the results of the DICOM
1075
+ # import job.
1076
+ #
1077
+ # @return [Types::StartDICOMImportJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1078
+ #
1079
+ # * {Types::StartDICOMImportJobResponse#datastore_id #datastore_id} => String
1080
+ # * {Types::StartDICOMImportJobResponse#job_id #job_id} => String
1081
+ # * {Types::StartDICOMImportJobResponse#job_status #job_status} => String
1082
+ # * {Types::StartDICOMImportJobResponse#submitted_at #submitted_at} => Time
1083
+ #
1084
+ # @example Request syntax with placeholder values
1085
+ #
1086
+ # resp = client.start_dicom_import_job({
1087
+ # job_name: "JobName",
1088
+ # data_access_role_arn: "RoleArn", # required
1089
+ # client_token: "ClientToken", # required
1090
+ # datastore_id: "DatastoreId", # required
1091
+ # input_s3_uri: "S3Uri", # required
1092
+ # output_s3_uri: "S3Uri", # required
1093
+ # })
1094
+ #
1095
+ # @example Response structure
1096
+ #
1097
+ # resp.datastore_id #=> String
1098
+ # resp.job_id #=> String
1099
+ # resp.job_status #=> String, one of "SUBMITTED", "IN_PROGRESS", "COMPLETED", "FAILED"
1100
+ # resp.submitted_at #=> Time
1101
+ #
1102
+ # @see http://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/StartDICOMImportJob AWS API Documentation
1103
+ #
1104
+ # @overload start_dicom_import_job(params = {})
1105
+ # @param [Hash] params ({})
1106
+ def start_dicom_import_job(params = {}, options = {})
1107
+ req = build_request(:start_dicom_import_job, params)
1108
+ req.send_request(options)
1109
+ end
1110
+
1111
+ # Adds a user-specifed key and value tag to a medical imaging resource.
1112
+ #
1113
+ # @option params [required, String] :resource_arn
1114
+ # The Amazon Resource Name (ARN) of the medical imaging resource that
1115
+ # tags are being added to.
1116
+ #
1117
+ # @option params [required, Hash<String,String>] :tags
1118
+ # The user-specified key and value tag pairs added to a medical imaging
1119
+ # resource.
1120
+ #
1121
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1122
+ #
1123
+ # @example Request syntax with placeholder values
1124
+ #
1125
+ # resp = client.tag_resource({
1126
+ # resource_arn: "Arn", # required
1127
+ # tags: { # required
1128
+ # "TagKey" => "TagValue",
1129
+ # },
1130
+ # })
1131
+ #
1132
+ # @see http://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/TagResource AWS API Documentation
1133
+ #
1134
+ # @overload tag_resource(params = {})
1135
+ # @param [Hash] params ({})
1136
+ def tag_resource(params = {}, options = {})
1137
+ req = build_request(:tag_resource, params)
1138
+ req.send_request(options)
1139
+ end
1140
+
1141
+ # Removes tags from a medical imaging resource.
1142
+ #
1143
+ # @option params [required, String] :resource_arn
1144
+ # The Amazon Resource Name (ARN) of the medical imaging resource that
1145
+ # tags are being removed from.
1146
+ #
1147
+ # @option params [required, Array<String>] :tag_keys
1148
+ # The keys for the tags to be removed from the medical imaging resource.
1149
+ #
1150
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1151
+ #
1152
+ # @example Request syntax with placeholder values
1153
+ #
1154
+ # resp = client.untag_resource({
1155
+ # resource_arn: "Arn", # required
1156
+ # tag_keys: ["TagKey"], # required
1157
+ # })
1158
+ #
1159
+ # @see http://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/UntagResource AWS API Documentation
1160
+ #
1161
+ # @overload untag_resource(params = {})
1162
+ # @param [Hash] params ({})
1163
+ def untag_resource(params = {}, options = {})
1164
+ req = build_request(:untag_resource, params)
1165
+ req.send_request(options)
1166
+ end
1167
+
1168
+ # Update image set metadata attributes.
1169
+ #
1170
+ # @option params [required, String] :datastore_id
1171
+ # The data store identifier.
1172
+ #
1173
+ # @option params [required, String] :image_set_id
1174
+ # The image set identifier.
1175
+ #
1176
+ # @option params [required, String] :latest_version_id
1177
+ # The latest image set version identifier.
1178
+ #
1179
+ # @option params [required, Types::MetadataUpdates] :update_image_set_metadata_updates
1180
+ # Update image set metadata updates.
1181
+ #
1182
+ # @return [Types::UpdateImageSetMetadataResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1183
+ #
1184
+ # * {Types::UpdateImageSetMetadataResponse#datastore_id #datastore_id} => String
1185
+ # * {Types::UpdateImageSetMetadataResponse#image_set_id #image_set_id} => String
1186
+ # * {Types::UpdateImageSetMetadataResponse#latest_version_id #latest_version_id} => String
1187
+ # * {Types::UpdateImageSetMetadataResponse#image_set_state #image_set_state} => String
1188
+ # * {Types::UpdateImageSetMetadataResponse#image_set_workflow_status #image_set_workflow_status} => String
1189
+ # * {Types::UpdateImageSetMetadataResponse#created_at #created_at} => Time
1190
+ # * {Types::UpdateImageSetMetadataResponse#updated_at #updated_at} => Time
1191
+ # * {Types::UpdateImageSetMetadataResponse#message #message} => String
1192
+ #
1193
+ # @example Request syntax with placeholder values
1194
+ #
1195
+ # resp = client.update_image_set_metadata({
1196
+ # datastore_id: "DatastoreId", # required
1197
+ # image_set_id: "ImageSetId", # required
1198
+ # latest_version_id: "ImageSetExternalVersionId", # required
1199
+ # update_image_set_metadata_updates: { # required
1200
+ # dicom_updates: {
1201
+ # removable_attributes: "data",
1202
+ # updatable_attributes: "data",
1203
+ # },
1204
+ # },
1205
+ # })
1206
+ #
1207
+ # @example Response structure
1208
+ #
1209
+ # resp.datastore_id #=> String
1210
+ # resp.image_set_id #=> String
1211
+ # resp.latest_version_id #=> String
1212
+ # resp.image_set_state #=> String, one of "ACTIVE", "LOCKED", "DELETED"
1213
+ # resp.image_set_workflow_status #=> String, one of "CREATED", "COPIED", "COPYING", "COPYING_WITH_READ_ONLY_ACCESS", "COPY_FAILED", "UPDATING", "UPDATED", "UPDATE_FAILED", "DELETING", "DELETED"
1214
+ # resp.created_at #=> Time
1215
+ # resp.updated_at #=> Time
1216
+ # resp.message #=> String
1217
+ #
1218
+ # @see http://docs.aws.amazon.com/goto/WebAPI/medical-imaging-2023-07-19/UpdateImageSetMetadata AWS API Documentation
1219
+ #
1220
+ # @overload update_image_set_metadata(params = {})
1221
+ # @param [Hash] params ({})
1222
+ def update_image_set_metadata(params = {}, options = {})
1223
+ req = build_request(:update_image_set_metadata, params)
1224
+ req.send_request(options)
1225
+ end
1226
+
1227
+ # @!endgroup
1228
+
1229
+ # @param params ({})
1230
+ # @api private
1231
+ def build_request(operation_name, params = {})
1232
+ handlers = @handlers.for(operation_name)
1233
+ context = Seahorse::Client::RequestContext.new(
1234
+ operation_name: operation_name,
1235
+ operation: config.api.operation(operation_name),
1236
+ client: self,
1237
+ params: params,
1238
+ config: config)
1239
+ context[:gem_name] = 'aws-sdk-medicalimaging'
1240
+ context[:gem_version] = '1.0.0'
1241
+ Seahorse::Client::Request.new(handlers, context)
1242
+ end
1243
+
1244
+ # @api private
1245
+ # @deprecated
1246
+ def waiter_names
1247
+ []
1248
+ end
1249
+
1250
+ class << self
1251
+
1252
+ # @api private
1253
+ attr_reader :identifier
1254
+
1255
+ # @api private
1256
+ def errors_module
1257
+ Errors
1258
+ end
1259
+
1260
+ end
1261
+ end
1262
+ end