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

The properties that can be applied to a field when the connector is being * used as a source.

See Also:

AWS * API Reference

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

Indicates whether the field can be returned in a search result.

*/ inline bool GetIsRetrievable() const{ return m_isRetrievable; } /** *

Indicates whether the field can be returned in a search result.

*/ inline bool IsRetrievableHasBeenSet() const { return m_isRetrievableHasBeenSet; } /** *

Indicates whether the field can be returned in a search result.

*/ inline void SetIsRetrievable(bool value) { m_isRetrievableHasBeenSet = true; m_isRetrievable = value; } /** *

Indicates whether the field can be returned in a search result.

*/ inline SourceFieldProperties& WithIsRetrievable(bool value) { SetIsRetrievable(value); return *this;} /** *

Indicates if the field can be queried.

*/ inline bool GetIsQueryable() const{ return m_isQueryable; } /** *

Indicates if the field can be queried.

*/ inline bool IsQueryableHasBeenSet() const { return m_isQueryableHasBeenSet; } /** *

Indicates if the field can be queried.

*/ inline void SetIsQueryable(bool value) { m_isQueryableHasBeenSet = true; m_isQueryable = value; } /** *

Indicates if the field can be queried.

*/ inline SourceFieldProperties& WithIsQueryable(bool value) { SetIsQueryable(value); return *this;} /** *

Indicates if this timestamp field can be used for incremental queries.

*/ inline bool GetIsTimestampFieldForIncrementalQueries() const{ return m_isTimestampFieldForIncrementalQueries; } /** *

Indicates if this timestamp field can be used for incremental queries.

*/ inline bool IsTimestampFieldForIncrementalQueriesHasBeenSet() const { return m_isTimestampFieldForIncrementalQueriesHasBeenSet; } /** *

Indicates if this timestamp field can be used for incremental queries.

*/ inline void SetIsTimestampFieldForIncrementalQueries(bool value) { m_isTimestampFieldForIncrementalQueriesHasBeenSet = true; m_isTimestampFieldForIncrementalQueries = value; } /** *

Indicates if this timestamp field can be used for incremental queries.

*/ inline SourceFieldProperties& WithIsTimestampFieldForIncrementalQueries(bool value) { SetIsTimestampFieldForIncrementalQueries(value); return *this;} private: bool m_isRetrievable; bool m_isRetrievableHasBeenSet = false; bool m_isQueryable; bool m_isQueryableHasBeenSet = false; bool m_isTimestampFieldForIncrementalQueries; bool m_isTimestampFieldForIncrementalQueriesHasBeenSet = false; }; } // namespace Model } // namespace Appflow } // namespace Aws