/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace HealthLake { namespace Model { /** *

Displays the properties of the data store, including the ID, ARN, name, and * the status of the data store.

See Also:

AWS * API Reference

*/ class DatastoreProperties { public: AWS_HEALTHLAKE_API DatastoreProperties(); AWS_HEALTHLAKE_API DatastoreProperties(Aws::Utils::Json::JsonView jsonValue); AWS_HEALTHLAKE_API DatastoreProperties& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_HEALTHLAKE_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The AWS-generated ID number for the data store.

*/ inline const Aws::String& GetDatastoreId() const{ return m_datastoreId; } /** *

The AWS-generated ID number for the data store.

*/ inline bool DatastoreIdHasBeenSet() const { return m_datastoreIdHasBeenSet; } /** *

The AWS-generated ID number for the data store.

*/ inline void SetDatastoreId(const Aws::String& value) { m_datastoreIdHasBeenSet = true; m_datastoreId = value; } /** *

The AWS-generated ID number for the data store.

*/ inline void SetDatastoreId(Aws::String&& value) { m_datastoreIdHasBeenSet = true; m_datastoreId = std::move(value); } /** *

The AWS-generated ID number for the data store.

*/ inline void SetDatastoreId(const char* value) { m_datastoreIdHasBeenSet = true; m_datastoreId.assign(value); } /** *

The AWS-generated ID number for the data store.

*/ inline DatastoreProperties& WithDatastoreId(const Aws::String& value) { SetDatastoreId(value); return *this;} /** *

The AWS-generated ID number for the data store.

*/ inline DatastoreProperties& WithDatastoreId(Aws::String&& value) { SetDatastoreId(std::move(value)); return *this;} /** *

The AWS-generated ID number for the data store.

*/ inline DatastoreProperties& WithDatastoreId(const char* value) { SetDatastoreId(value); return *this;} /** *

The Amazon Resource Name used in the creation of the data store.

*/ inline const Aws::String& GetDatastoreArn() const{ return m_datastoreArn; } /** *

The Amazon Resource Name used in the creation of the data store.

*/ inline bool DatastoreArnHasBeenSet() const { return m_datastoreArnHasBeenSet; } /** *

The Amazon Resource Name used in the creation of the data store.

*/ inline void SetDatastoreArn(const Aws::String& value) { m_datastoreArnHasBeenSet = true; m_datastoreArn = value; } /** *

The Amazon Resource Name used in the creation of the data store.

*/ inline void SetDatastoreArn(Aws::String&& value) { m_datastoreArnHasBeenSet = true; m_datastoreArn = std::move(value); } /** *

The Amazon Resource Name used in the creation of the data store.

*/ inline void SetDatastoreArn(const char* value) { m_datastoreArnHasBeenSet = true; m_datastoreArn.assign(value); } /** *

The Amazon Resource Name used in the creation of the data store.

*/ inline DatastoreProperties& WithDatastoreArn(const Aws::String& value) { SetDatastoreArn(value); return *this;} /** *

The Amazon Resource Name used in the creation of the data store.

*/ inline DatastoreProperties& WithDatastoreArn(Aws::String&& value) { SetDatastoreArn(std::move(value)); return *this;} /** *

The Amazon Resource Name used in the creation of the data store.

*/ inline DatastoreProperties& WithDatastoreArn(const char* value) { SetDatastoreArn(value); return *this;} /** *

The user-generated name for the data store.

*/ inline const Aws::String& GetDatastoreName() const{ return m_datastoreName; } /** *

The user-generated name for the data store.

*/ inline bool DatastoreNameHasBeenSet() const { return m_datastoreNameHasBeenSet; } /** *

The user-generated name for the data store.

*/ inline void SetDatastoreName(const Aws::String& value) { m_datastoreNameHasBeenSet = true; m_datastoreName = value; } /** *

The user-generated name for the data store.

*/ inline void SetDatastoreName(Aws::String&& value) { m_datastoreNameHasBeenSet = true; m_datastoreName = std::move(value); } /** *

The user-generated name for the data store.

*/ inline void SetDatastoreName(const char* value) { m_datastoreNameHasBeenSet = true; m_datastoreName.assign(value); } /** *

The user-generated name for the data store.

*/ inline DatastoreProperties& WithDatastoreName(const Aws::String& value) { SetDatastoreName(value); return *this;} /** *

The user-generated name for the data store.

*/ inline DatastoreProperties& WithDatastoreName(Aws::String&& value) { SetDatastoreName(std::move(value)); return *this;} /** *

The user-generated name for the data store.

*/ inline DatastoreProperties& WithDatastoreName(const char* value) { SetDatastoreName(value); return *this;} /** *

The status of the data store.

*/ inline const DatastoreStatus& GetDatastoreStatus() const{ return m_datastoreStatus; } /** *

The status of the data store.

*/ inline bool DatastoreStatusHasBeenSet() const { return m_datastoreStatusHasBeenSet; } /** *

The status of the data store.

*/ inline void SetDatastoreStatus(const DatastoreStatus& value) { m_datastoreStatusHasBeenSet = true; m_datastoreStatus = value; } /** *

The status of the data store.

*/ inline void SetDatastoreStatus(DatastoreStatus&& value) { m_datastoreStatusHasBeenSet = true; m_datastoreStatus = std::move(value); } /** *

The status of the data store.

*/ inline DatastoreProperties& WithDatastoreStatus(const DatastoreStatus& value) { SetDatastoreStatus(value); return *this;} /** *

The status of the data store.

*/ inline DatastoreProperties& WithDatastoreStatus(DatastoreStatus&& value) { SetDatastoreStatus(std::move(value)); return *this;} /** *

The time that a data store was created.

*/ inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } /** *

The time that a data store was created.

*/ inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; } /** *

The time that a data store was created.

*/ inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAtHasBeenSet = true; m_createdAt = value; } /** *

The time that a data store was created.

*/ inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::move(value); } /** *

The time that a data store was created.

*/ inline DatastoreProperties& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} /** *

The time that a data store was created.

*/ inline DatastoreProperties& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} /** *

The FHIR version. Only R4 version data is supported.

*/ inline const FHIRVersion& GetDatastoreTypeVersion() const{ return m_datastoreTypeVersion; } /** *

The FHIR version. Only R4 version data is supported.

*/ inline bool DatastoreTypeVersionHasBeenSet() const { return m_datastoreTypeVersionHasBeenSet; } /** *

The FHIR version. Only R4 version data is supported.

*/ inline void SetDatastoreTypeVersion(const FHIRVersion& value) { m_datastoreTypeVersionHasBeenSet = true; m_datastoreTypeVersion = value; } /** *

The FHIR version. Only R4 version data is supported.

*/ inline void SetDatastoreTypeVersion(FHIRVersion&& value) { m_datastoreTypeVersionHasBeenSet = true; m_datastoreTypeVersion = std::move(value); } /** *

The FHIR version. Only R4 version data is supported.

*/ inline DatastoreProperties& WithDatastoreTypeVersion(const FHIRVersion& value) { SetDatastoreTypeVersion(value); return *this;} /** *

The FHIR version. Only R4 version data is supported.

*/ inline DatastoreProperties& WithDatastoreTypeVersion(FHIRVersion&& value) { SetDatastoreTypeVersion(std::move(value)); return *this;} /** *

The AWS endpoint for the data store. Each data store will have it's own * endpoint with data store ID in the endpoint URL.

*/ inline const Aws::String& GetDatastoreEndpoint() const{ return m_datastoreEndpoint; } /** *

The AWS endpoint for the data store. Each data store will have it's own * endpoint with data store ID in the endpoint URL.

*/ inline bool DatastoreEndpointHasBeenSet() const { return m_datastoreEndpointHasBeenSet; } /** *

The AWS endpoint for the data store. Each data store will have it's own * endpoint with data store ID in the endpoint URL.

*/ inline void SetDatastoreEndpoint(const Aws::String& value) { m_datastoreEndpointHasBeenSet = true; m_datastoreEndpoint = value; } /** *

The AWS endpoint for the data store. Each data store will have it's own * endpoint with data store ID in the endpoint URL.

*/ inline void SetDatastoreEndpoint(Aws::String&& value) { m_datastoreEndpointHasBeenSet = true; m_datastoreEndpoint = std::move(value); } /** *

The AWS endpoint for the data store. Each data store will have it's own * endpoint with data store ID in the endpoint URL.

*/ inline void SetDatastoreEndpoint(const char* value) { m_datastoreEndpointHasBeenSet = true; m_datastoreEndpoint.assign(value); } /** *

The AWS endpoint for the data store. Each data store will have it's own * endpoint with data store ID in the endpoint URL.

*/ inline DatastoreProperties& WithDatastoreEndpoint(const Aws::String& value) { SetDatastoreEndpoint(value); return *this;} /** *

The AWS endpoint for the data store. Each data store will have it's own * endpoint with data store ID in the endpoint URL.

*/ inline DatastoreProperties& WithDatastoreEndpoint(Aws::String&& value) { SetDatastoreEndpoint(std::move(value)); return *this;} /** *

The AWS endpoint for the data store. Each data store will have it's own * endpoint with data store ID in the endpoint URL.

*/ inline DatastoreProperties& WithDatastoreEndpoint(const char* value) { SetDatastoreEndpoint(value); return *this;} /** *

The server-side encryption key configuration for a customer provided * encryption key (CMK).

*/ inline const SseConfiguration& GetSseConfiguration() const{ return m_sseConfiguration; } /** *

The server-side encryption key configuration for a customer provided * encryption key (CMK).

*/ inline bool SseConfigurationHasBeenSet() const { return m_sseConfigurationHasBeenSet; } /** *

The server-side encryption key configuration for a customer provided * encryption key (CMK).

*/ inline void SetSseConfiguration(const SseConfiguration& value) { m_sseConfigurationHasBeenSet = true; m_sseConfiguration = value; } /** *

The server-side encryption key configuration for a customer provided * encryption key (CMK).

*/ inline void SetSseConfiguration(SseConfiguration&& value) { m_sseConfigurationHasBeenSet = true; m_sseConfiguration = std::move(value); } /** *

The server-side encryption key configuration for a customer provided * encryption key (CMK).

*/ inline DatastoreProperties& WithSseConfiguration(const SseConfiguration& value) { SetSseConfiguration(value); return *this;} /** *

The server-side encryption key configuration for a customer provided * encryption key (CMK).

*/ inline DatastoreProperties& WithSseConfiguration(SseConfiguration&& value) { SetSseConfiguration(std::move(value)); return *this;} /** *

The preloaded data configuration for the data store. Only data preloaded from * Synthea is supported.

*/ inline const PreloadDataConfig& GetPreloadDataConfig() const{ return m_preloadDataConfig; } /** *

The preloaded data configuration for the data store. Only data preloaded from * Synthea is supported.

*/ inline bool PreloadDataConfigHasBeenSet() const { return m_preloadDataConfigHasBeenSet; } /** *

The preloaded data configuration for the data store. Only data preloaded from * Synthea is supported.

*/ inline void SetPreloadDataConfig(const PreloadDataConfig& value) { m_preloadDataConfigHasBeenSet = true; m_preloadDataConfig = value; } /** *

The preloaded data configuration for the data store. Only data preloaded from * Synthea is supported.

*/ inline void SetPreloadDataConfig(PreloadDataConfig&& value) { m_preloadDataConfigHasBeenSet = true; m_preloadDataConfig = std::move(value); } /** *

The preloaded data configuration for the data store. Only data preloaded from * Synthea is supported.

*/ inline DatastoreProperties& WithPreloadDataConfig(const PreloadDataConfig& value) { SetPreloadDataConfig(value); return *this;} /** *

The preloaded data configuration for the data store. Only data preloaded from * Synthea is supported.

*/ inline DatastoreProperties& WithPreloadDataConfig(PreloadDataConfig&& value) { SetPreloadDataConfig(std::move(value)); return *this;} /** *

The identity provider that you selected when you created the data store.

*/ inline const IdentityProviderConfiguration& GetIdentityProviderConfiguration() const{ return m_identityProviderConfiguration; } /** *

The identity provider that you selected when you created the data store.

*/ inline bool IdentityProviderConfigurationHasBeenSet() const { return m_identityProviderConfigurationHasBeenSet; } /** *

The identity provider that you selected when you created the data store.

*/ inline void SetIdentityProviderConfiguration(const IdentityProviderConfiguration& value) { m_identityProviderConfigurationHasBeenSet = true; m_identityProviderConfiguration = value; } /** *

The identity provider that you selected when you created the data store.

*/ inline void SetIdentityProviderConfiguration(IdentityProviderConfiguration&& value) { m_identityProviderConfigurationHasBeenSet = true; m_identityProviderConfiguration = std::move(value); } /** *

The identity provider that you selected when you created the data store.

*/ inline DatastoreProperties& WithIdentityProviderConfiguration(const IdentityProviderConfiguration& value) { SetIdentityProviderConfiguration(value); return *this;} /** *

The identity provider that you selected when you created the data store.

*/ inline DatastoreProperties& WithIdentityProviderConfiguration(IdentityProviderConfiguration&& value) { SetIdentityProviderConfiguration(std::move(value)); return *this;} private: Aws::String m_datastoreId; bool m_datastoreIdHasBeenSet = false; Aws::String m_datastoreArn; bool m_datastoreArnHasBeenSet = false; Aws::String m_datastoreName; bool m_datastoreNameHasBeenSet = false; DatastoreStatus m_datastoreStatus; bool m_datastoreStatusHasBeenSet = false; Aws::Utils::DateTime m_createdAt; bool m_createdAtHasBeenSet = false; FHIRVersion m_datastoreTypeVersion; bool m_datastoreTypeVersionHasBeenSet = false; Aws::String m_datastoreEndpoint; bool m_datastoreEndpointHasBeenSet = false; SseConfiguration m_sseConfiguration; bool m_sseConfigurationHasBeenSet = false; PreloadDataConfig m_preloadDataConfig; bool m_preloadDataConfigHasBeenSet = false; IdentityProviderConfiguration m_identityProviderConfiguration; bool m_identityProviderConfigurationHasBeenSet = false; }; } // namespace Model } // namespace HealthLake } // namespace Aws