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

A document that defines an entity.

See Also:

AWS * API Reference

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

The language used to define the entity. GRAPHQL is the only * valid value.

*/ inline const DefinitionLanguage& GetLanguage() const{ return m_language; } /** *

The language used to define the entity. GRAPHQL is the only * valid value.

*/ inline bool LanguageHasBeenSet() const { return m_languageHasBeenSet; } /** *

The language used to define the entity. GRAPHQL is the only * valid value.

*/ inline void SetLanguage(const DefinitionLanguage& value) { m_languageHasBeenSet = true; m_language = value; } /** *

The language used to define the entity. GRAPHQL is the only * valid value.

*/ inline void SetLanguage(DefinitionLanguage&& value) { m_languageHasBeenSet = true; m_language = std::move(value); } /** *

The language used to define the entity. GRAPHQL is the only * valid value.

*/ inline DefinitionDocument& WithLanguage(const DefinitionLanguage& value) { SetLanguage(value); return *this;} /** *

The language used to define the entity. GRAPHQL is the only * valid value.

*/ inline DefinitionDocument& WithLanguage(DefinitionLanguage&& value) { SetLanguage(std::move(value)); return *this;} /** *

The GraphQL text that defines the entity.

*/ inline const Aws::String& GetText() const{ return m_text; } /** *

The GraphQL text that defines the entity.

*/ inline bool TextHasBeenSet() const { return m_textHasBeenSet; } /** *

The GraphQL text that defines the entity.

*/ inline void SetText(const Aws::String& value) { m_textHasBeenSet = true; m_text = value; } /** *

The GraphQL text that defines the entity.

*/ inline void SetText(Aws::String&& value) { m_textHasBeenSet = true; m_text = std::move(value); } /** *

The GraphQL text that defines the entity.

*/ inline void SetText(const char* value) { m_textHasBeenSet = true; m_text.assign(value); } /** *

The GraphQL text that defines the entity.

*/ inline DefinitionDocument& WithText(const Aws::String& value) { SetText(value); return *this;} /** *

The GraphQL text that defines the entity.

*/ inline DefinitionDocument& WithText(Aws::String&& value) { SetText(std::move(value)); return *this;} /** *

The GraphQL text that defines the entity.

*/ inline DefinitionDocument& WithText(const char* value) { SetText(value); return *this;} private: DefinitionLanguage m_language; bool m_languageHasBeenSet = false; Aws::String m_text; bool m_textHasBeenSet = false; }; } // namespace Model } // namespace IoTThingsGraph } // namespace Aws