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

Contains information about the parameters used for a select.

See * Also:

AWS * API Reference

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

Describes the serialization format of the object.

*/ inline const InputSerialization& GetInputSerialization() const{ return m_inputSerialization; } /** *

Describes the serialization format of the object.

*/ inline bool InputSerializationHasBeenSet() const { return m_inputSerializationHasBeenSet; } /** *

Describes the serialization format of the object.

*/ inline void SetInputSerialization(const InputSerialization& value) { m_inputSerializationHasBeenSet = true; m_inputSerialization = value; } /** *

Describes the serialization format of the object.

*/ inline void SetInputSerialization(InputSerialization&& value) { m_inputSerializationHasBeenSet = true; m_inputSerialization = std::move(value); } /** *

Describes the serialization format of the object.

*/ inline SelectParameters& WithInputSerialization(const InputSerialization& value) { SetInputSerialization(value); return *this;} /** *

Describes the serialization format of the object.

*/ inline SelectParameters& WithInputSerialization(InputSerialization&& value) { SetInputSerialization(std::move(value)); return *this;} /** *

The type of the provided expression, for example SQL.

*/ inline const ExpressionType& GetExpressionType() const{ return m_expressionType; } /** *

The type of the provided expression, for example SQL.

*/ inline bool ExpressionTypeHasBeenSet() const { return m_expressionTypeHasBeenSet; } /** *

The type of the provided expression, for example SQL.

*/ inline void SetExpressionType(const ExpressionType& value) { m_expressionTypeHasBeenSet = true; m_expressionType = value; } /** *

The type of the provided expression, for example SQL.

*/ inline void SetExpressionType(ExpressionType&& value) { m_expressionTypeHasBeenSet = true; m_expressionType = std::move(value); } /** *

The type of the provided expression, for example SQL.

*/ inline SelectParameters& WithExpressionType(const ExpressionType& value) { SetExpressionType(value); return *this;} /** *

The type of the provided expression, for example SQL.

*/ inline SelectParameters& WithExpressionType(ExpressionType&& value) { SetExpressionType(std::move(value)); return *this;} /** *

The expression that is used to select the object.

*/ inline const Aws::String& GetExpression() const{ return m_expression; } /** *

The expression that is used to select the object.

*/ inline bool ExpressionHasBeenSet() const { return m_expressionHasBeenSet; } /** *

The expression that is used to select the object.

*/ inline void SetExpression(const Aws::String& value) { m_expressionHasBeenSet = true; m_expression = value; } /** *

The expression that is used to select the object.

*/ inline void SetExpression(Aws::String&& value) { m_expressionHasBeenSet = true; m_expression = std::move(value); } /** *

The expression that is used to select the object.

*/ inline void SetExpression(const char* value) { m_expressionHasBeenSet = true; m_expression.assign(value); } /** *

The expression that is used to select the object.

*/ inline SelectParameters& WithExpression(const Aws::String& value) { SetExpression(value); return *this;} /** *

The expression that is used to select the object.

*/ inline SelectParameters& WithExpression(Aws::String&& value) { SetExpression(std::move(value)); return *this;} /** *

The expression that is used to select the object.

*/ inline SelectParameters& WithExpression(const char* value) { SetExpression(value); return *this;} /** *

Describes how the results of the select job are serialized.

*/ inline const OutputSerialization& GetOutputSerialization() const{ return m_outputSerialization; } /** *

Describes how the results of the select job are serialized.

*/ inline bool OutputSerializationHasBeenSet() const { return m_outputSerializationHasBeenSet; } /** *

Describes how the results of the select job are serialized.

*/ inline void SetOutputSerialization(const OutputSerialization& value) { m_outputSerializationHasBeenSet = true; m_outputSerialization = value; } /** *

Describes how the results of the select job are serialized.

*/ inline void SetOutputSerialization(OutputSerialization&& value) { m_outputSerializationHasBeenSet = true; m_outputSerialization = std::move(value); } /** *

Describes how the results of the select job are serialized.

*/ inline SelectParameters& WithOutputSerialization(const OutputSerialization& value) { SetOutputSerialization(value); return *this;} /** *

Describes how the results of the select job are serialized.

*/ inline SelectParameters& WithOutputSerialization(OutputSerialization&& value) { SetOutputSerialization(std::move(value)); return *this;} private: InputSerialization m_inputSerialization; bool m_inputSerializationHasBeenSet = false; ExpressionType m_expressionType; bool m_expressionTypeHasBeenSet = false; Aws::String m_expression; bool m_expressionHasBeenSet = false; OutputSerialization m_outputSerialization; bool m_outputSerializationHasBeenSet = false; }; } // namespace Model } // namespace Glacier } // namespace Aws