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

The .jpg or .png file associated with an audio file.

See Also:

* AWS * API Reference

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

A policy that determines how Elastic Transcoder handles the existence of * multiple album artwork files.

  • Replace: The * specified album art replaces any existing album art.

  • * Prepend: The specified album art is placed in front of any existing * album art.

  • Append: The specified album art is * placed after any existing album art.

  • Fallback: * If the original input file contains artwork, Elastic Transcoder uses that * artwork for the output. If the original input does not contain artwork, Elastic * Transcoder uses the specified album art file.

*/ inline const Aws::String& GetMergePolicy() const{ return m_mergePolicy; } /** *

A policy that determines how Elastic Transcoder handles the existence of * multiple album artwork files.

  • Replace: The * specified album art replaces any existing album art.

  • * Prepend: The specified album art is placed in front of any existing * album art.

  • Append: The specified album art is * placed after any existing album art.

  • Fallback: * If the original input file contains artwork, Elastic Transcoder uses that * artwork for the output. If the original input does not contain artwork, Elastic * Transcoder uses the specified album art file.

*/ inline bool MergePolicyHasBeenSet() const { return m_mergePolicyHasBeenSet; } /** *

A policy that determines how Elastic Transcoder handles the existence of * multiple album artwork files.

  • Replace: The * specified album art replaces any existing album art.

  • * Prepend: The specified album art is placed in front of any existing * album art.

  • Append: The specified album art is * placed after any existing album art.

  • Fallback: * If the original input file contains artwork, Elastic Transcoder uses that * artwork for the output. If the original input does not contain artwork, Elastic * Transcoder uses the specified album art file.

*/ inline void SetMergePolicy(const Aws::String& value) { m_mergePolicyHasBeenSet = true; m_mergePolicy = value; } /** *

A policy that determines how Elastic Transcoder handles the existence of * multiple album artwork files.

  • Replace: The * specified album art replaces any existing album art.

  • * Prepend: The specified album art is placed in front of any existing * album art.

  • Append: The specified album art is * placed after any existing album art.

  • Fallback: * If the original input file contains artwork, Elastic Transcoder uses that * artwork for the output. If the original input does not contain artwork, Elastic * Transcoder uses the specified album art file.

*/ inline void SetMergePolicy(Aws::String&& value) { m_mergePolicyHasBeenSet = true; m_mergePolicy = std::move(value); } /** *

A policy that determines how Elastic Transcoder handles the existence of * multiple album artwork files.

  • Replace: The * specified album art replaces any existing album art.

  • * Prepend: The specified album art is placed in front of any existing * album art.

  • Append: The specified album art is * placed after any existing album art.

  • Fallback: * If the original input file contains artwork, Elastic Transcoder uses that * artwork for the output. If the original input does not contain artwork, Elastic * Transcoder uses the specified album art file.

*/ inline void SetMergePolicy(const char* value) { m_mergePolicyHasBeenSet = true; m_mergePolicy.assign(value); } /** *

A policy that determines how Elastic Transcoder handles the existence of * multiple album artwork files.

  • Replace: The * specified album art replaces any existing album art.

  • * Prepend: The specified album art is placed in front of any existing * album art.

  • Append: The specified album art is * placed after any existing album art.

  • Fallback: * If the original input file contains artwork, Elastic Transcoder uses that * artwork for the output. If the original input does not contain artwork, Elastic * Transcoder uses the specified album art file.

*/ inline JobAlbumArt& WithMergePolicy(const Aws::String& value) { SetMergePolicy(value); return *this;} /** *

A policy that determines how Elastic Transcoder handles the existence of * multiple album artwork files.

  • Replace: The * specified album art replaces any existing album art.

  • * Prepend: The specified album art is placed in front of any existing * album art.

  • Append: The specified album art is * placed after any existing album art.

  • Fallback: * If the original input file contains artwork, Elastic Transcoder uses that * artwork for the output. If the original input does not contain artwork, Elastic * Transcoder uses the specified album art file.

*/ inline JobAlbumArt& WithMergePolicy(Aws::String&& value) { SetMergePolicy(std::move(value)); return *this;} /** *

A policy that determines how Elastic Transcoder handles the existence of * multiple album artwork files.

  • Replace: The * specified album art replaces any existing album art.

  • * Prepend: The specified album art is placed in front of any existing * album art.

  • Append: The specified album art is * placed after any existing album art.

  • Fallback: * If the original input file contains artwork, Elastic Transcoder uses that * artwork for the output. If the original input does not contain artwork, Elastic * Transcoder uses the specified album art file.

*/ inline JobAlbumArt& WithMergePolicy(const char* value) { SetMergePolicy(value); return *this;} /** *

The file to be used as album art. There can be multiple artworks associated * with an audio file, to a maximum of 20. Valid formats are .jpg and * .png

*/ inline const Aws::Vector& GetArtwork() const{ return m_artwork; } /** *

The file to be used as album art. There can be multiple artworks associated * with an audio file, to a maximum of 20. Valid formats are .jpg and * .png

*/ inline bool ArtworkHasBeenSet() const { return m_artworkHasBeenSet; } /** *

The file to be used as album art. There can be multiple artworks associated * with an audio file, to a maximum of 20. Valid formats are .jpg and * .png

*/ inline void SetArtwork(const Aws::Vector& value) { m_artworkHasBeenSet = true; m_artwork = value; } /** *

The file to be used as album art. There can be multiple artworks associated * with an audio file, to a maximum of 20. Valid formats are .jpg and * .png

*/ inline void SetArtwork(Aws::Vector&& value) { m_artworkHasBeenSet = true; m_artwork = std::move(value); } /** *

The file to be used as album art. There can be multiple artworks associated * with an audio file, to a maximum of 20. Valid formats are .jpg and * .png

*/ inline JobAlbumArt& WithArtwork(const Aws::Vector& value) { SetArtwork(value); return *this;} /** *

The file to be used as album art. There can be multiple artworks associated * with an audio file, to a maximum of 20. Valid formats are .jpg and * .png

*/ inline JobAlbumArt& WithArtwork(Aws::Vector&& value) { SetArtwork(std::move(value)); return *this;} /** *

The file to be used as album art. There can be multiple artworks associated * with an audio file, to a maximum of 20. Valid formats are .jpg and * .png

*/ inline JobAlbumArt& AddArtwork(const Artwork& value) { m_artworkHasBeenSet = true; m_artwork.push_back(value); return *this; } /** *

The file to be used as album art. There can be multiple artworks associated * with an audio file, to a maximum of 20. Valid formats are .jpg and * .png

*/ inline JobAlbumArt& AddArtwork(Artwork&& value) { m_artworkHasBeenSet = true; m_artwork.push_back(std::move(value)); return *this; } private: Aws::String m_mergePolicy; bool m_mergePolicyHasBeenSet = false; Aws::Vector m_artwork; bool m_artworkHasBeenSet = false; }; } // namespace Model } // namespace ElasticTranscoder } // namespace Aws