/** * 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 namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SageMakerGeospatial { namespace Model { /** *

The structure representing the items in the response for * SearchRasterDataCollection.

See Also:

AWS * API Reference

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

This is a dictionary of Asset Objects data associated with the Item that can * be downloaded or streamed, each with a unique key.

*/ inline const Aws::Map& GetAssets() const{ return m_assets; } /** *

This is a dictionary of Asset Objects data associated with the Item that can * be downloaded or streamed, each with a unique key.

*/ inline bool AssetsHasBeenSet() const { return m_assetsHasBeenSet; } /** *

This is a dictionary of Asset Objects data associated with the Item that can * be downloaded or streamed, each with a unique key.

*/ inline void SetAssets(const Aws::Map& value) { m_assetsHasBeenSet = true; m_assets = value; } /** *

This is a dictionary of Asset Objects data associated with the Item that can * be downloaded or streamed, each with a unique key.

*/ inline void SetAssets(Aws::Map&& value) { m_assetsHasBeenSet = true; m_assets = std::move(value); } /** *

This is a dictionary of Asset Objects data associated with the Item that can * be downloaded or streamed, each with a unique key.

*/ inline ItemSource& WithAssets(const Aws::Map& value) { SetAssets(value); return *this;} /** *

This is a dictionary of Asset Objects data associated with the Item that can * be downloaded or streamed, each with a unique key.

*/ inline ItemSource& WithAssets(Aws::Map&& value) { SetAssets(std::move(value)); return *this;} /** *

This is a dictionary of Asset Objects data associated with the Item that can * be downloaded or streamed, each with a unique key.

*/ inline ItemSource& AddAssets(const Aws::String& key, const AssetValue& value) { m_assetsHasBeenSet = true; m_assets.emplace(key, value); return *this; } /** *

This is a dictionary of Asset Objects data associated with the Item that can * be downloaded or streamed, each with a unique key.

*/ inline ItemSource& AddAssets(Aws::String&& key, const AssetValue& value) { m_assetsHasBeenSet = true; m_assets.emplace(std::move(key), value); return *this; } /** *

This is a dictionary of Asset Objects data associated with the Item that can * be downloaded or streamed, each with a unique key.

*/ inline ItemSource& AddAssets(const Aws::String& key, AssetValue&& value) { m_assetsHasBeenSet = true; m_assets.emplace(key, std::move(value)); return *this; } /** *

This is a dictionary of Asset Objects data associated with the Item that can * be downloaded or streamed, each with a unique key.

*/ inline ItemSource& AddAssets(Aws::String&& key, AssetValue&& value) { m_assetsHasBeenSet = true; m_assets.emplace(std::move(key), std::move(value)); return *this; } /** *

This is a dictionary of Asset Objects data associated with the Item that can * be downloaded or streamed, each with a unique key.

*/ inline ItemSource& AddAssets(const char* key, AssetValue&& value) { m_assetsHasBeenSet = true; m_assets.emplace(key, std::move(value)); return *this; } /** *

This is a dictionary of Asset Objects data associated with the Item that can * be downloaded or streamed, each with a unique key.

*/ inline ItemSource& AddAssets(const char* key, const AssetValue& value) { m_assetsHasBeenSet = true; m_assets.emplace(key, value); return *this; } /** *

The searchable date and time of the item, in UTC.

*/ inline const Aws::Utils::DateTime& GetDateTime() const{ return m_dateTime; } /** *

The searchable date and time of the item, in UTC.

*/ inline bool DateTimeHasBeenSet() const { return m_dateTimeHasBeenSet; } /** *

The searchable date and time of the item, in UTC.

*/ inline void SetDateTime(const Aws::Utils::DateTime& value) { m_dateTimeHasBeenSet = true; m_dateTime = value; } /** *

The searchable date and time of the item, in UTC.

*/ inline void SetDateTime(Aws::Utils::DateTime&& value) { m_dateTimeHasBeenSet = true; m_dateTime = std::move(value); } /** *

The searchable date and time of the item, in UTC.

*/ inline ItemSource& WithDateTime(const Aws::Utils::DateTime& value) { SetDateTime(value); return *this;} /** *

The searchable date and time of the item, in UTC.

*/ inline ItemSource& WithDateTime(Aws::Utils::DateTime&& value) { SetDateTime(std::move(value)); return *this;} /** *

The item Geometry in GeoJson format.

*/ inline const Geometry& GetGeometry() const{ return m_geometry; } /** *

The item Geometry in GeoJson format.

*/ inline bool GeometryHasBeenSet() const { return m_geometryHasBeenSet; } /** *

The item Geometry in GeoJson format.

*/ inline void SetGeometry(const Geometry& value) { m_geometryHasBeenSet = true; m_geometry = value; } /** *

The item Geometry in GeoJson format.

*/ inline void SetGeometry(Geometry&& value) { m_geometryHasBeenSet = true; m_geometry = std::move(value); } /** *

The item Geometry in GeoJson format.

*/ inline ItemSource& WithGeometry(const Geometry& value) { SetGeometry(value); return *this;} /** *

The item Geometry in GeoJson format.

*/ inline ItemSource& WithGeometry(Geometry&& value) { SetGeometry(std::move(value)); return *this;} /** *

A unique Id for the source item.

*/ inline const Aws::String& GetId() const{ return m_id; } /** *

A unique Id for the source item.

*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *

A unique Id for the source item.

*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *

A unique Id for the source item.

*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *

A unique Id for the source item.

*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *

A unique Id for the source item.

*/ inline ItemSource& WithId(const Aws::String& value) { SetId(value); return *this;} /** *

A unique Id for the source item.

*/ inline ItemSource& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *

A unique Id for the source item.

*/ inline ItemSource& WithId(const char* value) { SetId(value); return *this;} /** *

This field contains additional properties of the item.

*/ inline const Properties& GetProperties() const{ return m_properties; } /** *

This field contains additional properties of the item.

*/ inline bool PropertiesHasBeenSet() const { return m_propertiesHasBeenSet; } /** *

This field contains additional properties of the item.

*/ inline void SetProperties(const Properties& value) { m_propertiesHasBeenSet = true; m_properties = value; } /** *

This field contains additional properties of the item.

*/ inline void SetProperties(Properties&& value) { m_propertiesHasBeenSet = true; m_properties = std::move(value); } /** *

This field contains additional properties of the item.

*/ inline ItemSource& WithProperties(const Properties& value) { SetProperties(value); return *this;} /** *

This field contains additional properties of the item.

*/ inline ItemSource& WithProperties(Properties&& value) { SetProperties(std::move(value)); return *this;} private: Aws::Map m_assets; bool m_assetsHasBeenSet = false; Aws::Utils::DateTime m_dateTime; bool m_dateTimeHasBeenSet = false; Geometry m_geometry; bool m_geometryHasBeenSet = false; Aws::String m_id; bool m_idHasBeenSet = false; Properties m_properties; bool m_propertiesHasBeenSet = false; }; } // namespace Model } // namespace SageMakerGeospatial } // namespace Aws