106 lines
2.9 KiB
C++
106 lines
2.9 KiB
C++
/**
|
|
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
* SPDX-License-Identifier: Apache-2.0.
|
|
*/
|
|
|
|
#include <aws/kinesisanalytics/model/CreateApplicationRequest.h>
|
|
#include <aws/core/utils/json/JsonSerializer.h>
|
|
|
|
#include <utility>
|
|
|
|
using namespace Aws::KinesisAnalytics::Model;
|
|
using namespace Aws::Utils::Json;
|
|
using namespace Aws::Utils;
|
|
|
|
CreateApplicationRequest::CreateApplicationRequest() :
|
|
m_applicationNameHasBeenSet(false),
|
|
m_applicationDescriptionHasBeenSet(false),
|
|
m_inputsHasBeenSet(false),
|
|
m_outputsHasBeenSet(false),
|
|
m_cloudWatchLoggingOptionsHasBeenSet(false),
|
|
m_applicationCodeHasBeenSet(false),
|
|
m_tagsHasBeenSet(false)
|
|
{
|
|
}
|
|
|
|
Aws::String CreateApplicationRequest::SerializePayload() const
|
|
{
|
|
JsonValue payload;
|
|
|
|
if(m_applicationNameHasBeenSet)
|
|
{
|
|
payload.WithString("ApplicationName", m_applicationName);
|
|
|
|
}
|
|
|
|
if(m_applicationDescriptionHasBeenSet)
|
|
{
|
|
payload.WithString("ApplicationDescription", m_applicationDescription);
|
|
|
|
}
|
|
|
|
if(m_inputsHasBeenSet)
|
|
{
|
|
Array<JsonValue> inputsJsonList(m_inputs.size());
|
|
for(unsigned inputsIndex = 0; inputsIndex < inputsJsonList.GetLength(); ++inputsIndex)
|
|
{
|
|
inputsJsonList[inputsIndex].AsObject(m_inputs[inputsIndex].Jsonize());
|
|
}
|
|
payload.WithArray("Inputs", std::move(inputsJsonList));
|
|
|
|
}
|
|
|
|
if(m_outputsHasBeenSet)
|
|
{
|
|
Array<JsonValue> outputsJsonList(m_outputs.size());
|
|
for(unsigned outputsIndex = 0; outputsIndex < outputsJsonList.GetLength(); ++outputsIndex)
|
|
{
|
|
outputsJsonList[outputsIndex].AsObject(m_outputs[outputsIndex].Jsonize());
|
|
}
|
|
payload.WithArray("Outputs", std::move(outputsJsonList));
|
|
|
|
}
|
|
|
|
if(m_cloudWatchLoggingOptionsHasBeenSet)
|
|
{
|
|
Array<JsonValue> cloudWatchLoggingOptionsJsonList(m_cloudWatchLoggingOptions.size());
|
|
for(unsigned cloudWatchLoggingOptionsIndex = 0; cloudWatchLoggingOptionsIndex < cloudWatchLoggingOptionsJsonList.GetLength(); ++cloudWatchLoggingOptionsIndex)
|
|
{
|
|
cloudWatchLoggingOptionsJsonList[cloudWatchLoggingOptionsIndex].AsObject(m_cloudWatchLoggingOptions[cloudWatchLoggingOptionsIndex].Jsonize());
|
|
}
|
|
payload.WithArray("CloudWatchLoggingOptions", std::move(cloudWatchLoggingOptionsJsonList));
|
|
|
|
}
|
|
|
|
if(m_applicationCodeHasBeenSet)
|
|
{
|
|
payload.WithString("ApplicationCode", m_applicationCode);
|
|
|
|
}
|
|
|
|
if(m_tagsHasBeenSet)
|
|
{
|
|
Array<JsonValue> tagsJsonList(m_tags.size());
|
|
for(unsigned tagsIndex = 0; tagsIndex < tagsJsonList.GetLength(); ++tagsIndex)
|
|
{
|
|
tagsJsonList[tagsIndex].AsObject(m_tags[tagsIndex].Jsonize());
|
|
}
|
|
payload.WithArray("Tags", std::move(tagsJsonList));
|
|
|
|
}
|
|
|
|
return payload.View().WriteReadable();
|
|
}
|
|
|
|
Aws::Http::HeaderValueCollection CreateApplicationRequest::GetRequestSpecificHeaders() const
|
|
{
|
|
Aws::Http::HeaderValueCollection headers;
|
|
headers.insert(Aws::Http::HeaderValuePair("X-Amz-Target", "KinesisAnalytics_20150814.CreateApplication"));
|
|
return headers;
|
|
|
|
}
|
|
|
|
|
|
|
|
|