/** * 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 Firehose { namespace Model { /** *

Specifies the serializer that you want Kinesis Data Firehose to use to * convert the format of your data before it writes it to Amazon S3. This parameter * is required if Enabled is set to true.

See Also:

* AWS * API Reference

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

Specifies which serializer to use. You can choose either the ORC SerDe or the * Parquet SerDe. If both are non-null, the server rejects the request.

*/ inline const Serializer& GetSerializer() const{ return m_serializer; } /** *

Specifies which serializer to use. You can choose either the ORC SerDe or the * Parquet SerDe. If both are non-null, the server rejects the request.

*/ inline bool SerializerHasBeenSet() const { return m_serializerHasBeenSet; } /** *

Specifies which serializer to use. You can choose either the ORC SerDe or the * Parquet SerDe. If both are non-null, the server rejects the request.

*/ inline void SetSerializer(const Serializer& value) { m_serializerHasBeenSet = true; m_serializer = value; } /** *

Specifies which serializer to use. You can choose either the ORC SerDe or the * Parquet SerDe. If both are non-null, the server rejects the request.

*/ inline void SetSerializer(Serializer&& value) { m_serializerHasBeenSet = true; m_serializer = std::move(value); } /** *

Specifies which serializer to use. You can choose either the ORC SerDe or the * Parquet SerDe. If both are non-null, the server rejects the request.

*/ inline OutputFormatConfiguration& WithSerializer(const Serializer& value) { SetSerializer(value); return *this;} /** *

Specifies which serializer to use. You can choose either the ORC SerDe or the * Parquet SerDe. If both are non-null, the server rejects the request.

*/ inline OutputFormatConfiguration& WithSerializer(Serializer&& value) { SetSerializer(std::move(value)); return *this;} private: Serializer m_serializer; bool m_serializerHasBeenSet; }; } // namespace Model } // namespace Firehose } // namespace Aws