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

Specifies the data storage option chosen for requesting Places.

*

When using Amazon Location Places:

  • If using HERE * Technologies as a data provider, you can't store results for locations in Japan * by setting IntendedUse to Storage. parameter.

    *
  • Under the MobileAssetTracking or * MobilAssetManagement pricing plan, you can't store results from * your place index resources by setting IntendedUse to * Storage. This returns a validation exception error.

*

For more information, see the AWS Service Terms for Amazon * Location Service.

See Also:

AWS * API Reference

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

Specifies how the results of an operation will be stored by the caller.

*

Valid values include:

  • SingleUse specifies that * the results won't be stored.

  • Storage specifies * that the result can be cached or stored in a database.

*

Default value: SingleUse

*/ inline const IntendedUse& GetIntendedUse() const{ return m_intendedUse; } /** *

Specifies how the results of an operation will be stored by the caller.

*

Valid values include:

  • SingleUse specifies that * the results won't be stored.

  • Storage specifies * that the result can be cached or stored in a database.

*

Default value: SingleUse

*/ inline bool IntendedUseHasBeenSet() const { return m_intendedUseHasBeenSet; } /** *

Specifies how the results of an operation will be stored by the caller.

*

Valid values include:

  • SingleUse specifies that * the results won't be stored.

  • Storage specifies * that the result can be cached or stored in a database.

*

Default value: SingleUse

*/ inline void SetIntendedUse(const IntendedUse& value) { m_intendedUseHasBeenSet = true; m_intendedUse = value; } /** *

Specifies how the results of an operation will be stored by the caller.

*

Valid values include:

  • SingleUse specifies that * the results won't be stored.

  • Storage specifies * that the result can be cached or stored in a database.

*

Default value: SingleUse

*/ inline void SetIntendedUse(IntendedUse&& value) { m_intendedUseHasBeenSet = true; m_intendedUse = std::move(value); } /** *

Specifies how the results of an operation will be stored by the caller.

*

Valid values include:

  • SingleUse specifies that * the results won't be stored.

  • Storage specifies * that the result can be cached or stored in a database.

*

Default value: SingleUse

*/ inline DataSourceConfiguration& WithIntendedUse(const IntendedUse& value) { SetIntendedUse(value); return *this;} /** *

Specifies how the results of an operation will be stored by the caller.

*

Valid values include:

  • SingleUse specifies that * the results won't be stored.

  • Storage specifies * that the result can be cached or stored in a database.

*

Default value: SingleUse

*/ inline DataSourceConfiguration& WithIntendedUse(IntendedUse&& value) { SetIntendedUse(std::move(value)); return *this;} private: IntendedUse m_intendedUse; bool m_intendedUseHasBeenSet = false; }; } // namespace Model } // namespace LocationService } // namespace Aws