aws_db_esdk/deps/aws_cryptography_materialProviders/
client.rs

1// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.
2// SPDX-License-Identifier: Apache-2.0
3// Do not modify this file. This file is machine generated, and any changes to it will be overwritten.
4use aws_smithy_types::error::operation::BuildError;
5
6#[derive(::std::clone::Clone, ::std::fmt::Debug, ::std::cmp::PartialEq)]
7#[allow(missing_docs)]
8pub struct Client {
9    pub(crate) dafny_client: ::dafny_runtime::Object<dyn crate::r#software::amazon::cryptography::materialproviders::internaldafny::types::IAwsCryptographicMaterialProvidersClient>
10}
11
12impl Client {
13    /// Creates a new client from the service [`Config`](crate::Config).
14    #[track_caller]
15    pub fn from_conf(
16        input: crate::deps::aws_cryptography_materialProviders::types::material_providers_config::MaterialProvidersConfig,
17    ) -> Result<Self, crate::deps::aws_cryptography_materialProviders::types::error::Error> {
18        crate::deps::aws_cryptography_materialProviders::validation::validate_aws_Pcryptography_PmaterialProviders_HMaterialProvidersConfig(&input)
19            .map_err(crate::deps::aws_cryptography_materialProviders::types::error::Error::wrap_validation_err)?;
20        let inner =
21            crate::software::amazon::cryptography::materialproviders::internaldafny::_default::MaterialProviders(
22                &crate::deps::aws_cryptography_materialProviders::conversions::material_providers_config::_material_providers_config::to_dafny(input),
23            );
24        if matches!(
25            inner.as_ref(),
26            crate::_Wrappers_Compile::Result::Failure { .. }
27        ) {
28            return Err(
29                crate::deps::aws_cryptography_materialProviders::conversions::error::from_dafny(
30                    inner.as_ref().error().clone(),
31                ),
32            );
33        }
34        Ok(Self {
35            dafny_client: ::dafny_runtime::upcast_object()(inner.Extract()),
36        })
37    }
38}
39
40mod create_aws_kms_keyring;
41
42mod create_aws_kms_discovery_keyring;
43
44mod create_aws_kms_multi_keyring;
45
46mod create_aws_kms_discovery_multi_keyring;
47
48mod create_aws_kms_mrk_keyring;
49
50mod create_aws_kms_mrk_multi_keyring;
51
52mod create_aws_kms_mrk_discovery_keyring;
53
54mod create_aws_kms_mrk_discovery_multi_keyring;
55
56mod create_aws_kms_hierarchical_keyring;
57
58mod create_aws_kms_rsa_keyring;
59
60mod create_aws_kms_ecdh_keyring;
61
62mod create_multi_keyring;
63
64mod create_raw_aes_keyring;
65
66mod create_raw_rsa_keyring;
67
68mod create_raw_ecdh_keyring;
69
70mod create_default_cryptographic_materials_manager;
71
72mod create_required_encryption_context_cmm;
73
74mod create_cryptographic_materials_cache;
75
76mod create_default_client_supplier;
77
78mod initialize_encryption_materials;
79
80mod initialize_decryption_materials;
81
82mod valid_encryption_materials_transition;
83
84mod valid_decryption_materials_transition;
85
86mod encryption_materials_has_plaintext_data_key;
87
88mod decryption_materials_with_plaintext_data_key;
89
90mod get_algorithm_suite_info;
91
92mod valid_algorithm_suite_info;
93
94mod validate_commitment_policy_on_encrypt;
95
96mod validate_commitment_policy_on_decrypt;