/**
* 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 CustomerProfiles
{
namespace Model
{
/**
* Details for workflow of type APPFLOW_INTEGRATION
.
See
* Also:
AWS
* API Reference
*/
class AppflowIntegration
{
public:
AWS_CUSTOMERPROFILES_API AppflowIntegration();
AWS_CUSTOMERPROFILES_API AppflowIntegration(Aws::Utils::Json::JsonView jsonValue);
AWS_CUSTOMERPROFILES_API AppflowIntegration& operator=(Aws::Utils::Json::JsonView jsonValue);
AWS_CUSTOMERPROFILES_API Aws::Utils::Json::JsonValue Jsonize() const;
inline const FlowDefinition& GetFlowDefinition() const{ return m_flowDefinition; }
inline bool FlowDefinitionHasBeenSet() const { return m_flowDefinitionHasBeenSet; }
inline void SetFlowDefinition(const FlowDefinition& value) { m_flowDefinitionHasBeenSet = true; m_flowDefinition = value; }
inline void SetFlowDefinition(FlowDefinition&& value) { m_flowDefinitionHasBeenSet = true; m_flowDefinition = std::move(value); }
inline AppflowIntegration& WithFlowDefinition(const FlowDefinition& value) { SetFlowDefinition(value); return *this;}
inline AppflowIntegration& WithFlowDefinition(FlowDefinition&& value) { SetFlowDefinition(std::move(value)); return *this;}
/**
* Batches in workflow of type APPFLOW_INTEGRATION
.
*/
inline const Aws::Vector& GetBatches() const{ return m_batches; }
/**
* Batches in workflow of type APPFLOW_INTEGRATION
.
*/
inline bool BatchesHasBeenSet() const { return m_batchesHasBeenSet; }
/**
* Batches in workflow of type APPFLOW_INTEGRATION
.
*/
inline void SetBatches(const Aws::Vector& value) { m_batchesHasBeenSet = true; m_batches = value; }
/**
* Batches in workflow of type APPFLOW_INTEGRATION
.
*/
inline void SetBatches(Aws::Vector&& value) { m_batchesHasBeenSet = true; m_batches = std::move(value); }
/**
* Batches in workflow of type APPFLOW_INTEGRATION
.
*/
inline AppflowIntegration& WithBatches(const Aws::Vector& value) { SetBatches(value); return *this;}
/**
* Batches in workflow of type APPFLOW_INTEGRATION
.
*/
inline AppflowIntegration& WithBatches(Aws::Vector&& value) { SetBatches(std::move(value)); return *this;}
/**
* Batches in workflow of type APPFLOW_INTEGRATION
.
*/
inline AppflowIntegration& AddBatches(const Batch& value) { m_batchesHasBeenSet = true; m_batches.push_back(value); return *this; }
/**
* Batches in workflow of type APPFLOW_INTEGRATION
.
*/
inline AppflowIntegration& AddBatches(Batch&& value) { m_batchesHasBeenSet = true; m_batches.push_back(std::move(value)); return *this; }
private:
FlowDefinition m_flowDefinition;
bool m_flowDefinitionHasBeenSet = false;
Aws::Vector m_batches;
bool m_batchesHasBeenSet = false;
};
} // namespace Model
} // namespace CustomerProfiles
} // namespace Aws