All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.redshift.model.transform.ModifyRedshiftIdcApplicationRequestMarshaller Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Amazon Redshift module holds the client classes that are used for communicating with Amazon Redshift Service

There is a newer version: 1.12.780
Show newest version
/*
 * Copyright 2019-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */
package com.amazonaws.services.redshift.model.transform;

import javax.annotation.Generated;

import com.amazonaws.SdkClientException;
import com.amazonaws.Request;
import com.amazonaws.DefaultRequest;
import com.amazonaws.http.HttpMethodName;
import com.amazonaws.services.redshift.model.*;
import com.amazonaws.transform.Marshaller;
import com.amazonaws.util.StringUtils;

/**
 * ModifyRedshiftIdcApplicationRequest Marshaller
 */

@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class ModifyRedshiftIdcApplicationRequestMarshaller implements
        Marshaller, ModifyRedshiftIdcApplicationRequest> {

    public Request marshall(ModifyRedshiftIdcApplicationRequest modifyRedshiftIdcApplicationRequest) {

        if (modifyRedshiftIdcApplicationRequest == null) {
            throw new SdkClientException("Invalid argument passed to marshall(...)");
        }

        Request request = new DefaultRequest(modifyRedshiftIdcApplicationRequest,
                "AmazonRedshift");
        request.addParameter("Action", "ModifyRedshiftIdcApplication");
        request.addParameter("Version", "2012-12-01");
        request.setHttpMethod(HttpMethodName.POST);

        if (modifyRedshiftIdcApplicationRequest.getRedshiftIdcApplicationArn() != null) {
            request.addParameter("RedshiftIdcApplicationArn", StringUtils.fromString(modifyRedshiftIdcApplicationRequest.getRedshiftIdcApplicationArn()));
        }

        if (modifyRedshiftIdcApplicationRequest.getIdentityNamespace() != null) {
            request.addParameter("IdentityNamespace", StringUtils.fromString(modifyRedshiftIdcApplicationRequest.getIdentityNamespace()));
        }

        if (modifyRedshiftIdcApplicationRequest.getIamRoleArn() != null) {
            request.addParameter("IamRoleArn", StringUtils.fromString(modifyRedshiftIdcApplicationRequest.getIamRoleArn()));
        }

        if (modifyRedshiftIdcApplicationRequest.getIdcDisplayName() != null) {
            request.addParameter("IdcDisplayName", StringUtils.fromString(modifyRedshiftIdcApplicationRequest.getIdcDisplayName()));
        }

        if (!modifyRedshiftIdcApplicationRequest.getAuthorizedTokenIssuerList().isEmpty()
                || !((com.amazonaws.internal.SdkInternalList) modifyRedshiftIdcApplicationRequest.getAuthorizedTokenIssuerList())
                        .isAutoConstruct()) {
            com.amazonaws.internal.SdkInternalList authorizedTokenIssuerListList = (com.amazonaws.internal.SdkInternalList) modifyRedshiftIdcApplicationRequest
                    .getAuthorizedTokenIssuerList();
            int authorizedTokenIssuerListListIndex = 1;

            for (AuthorizedTokenIssuer authorizedTokenIssuerListListValue : authorizedTokenIssuerListList) {
                if (authorizedTokenIssuerListListValue != null) {

                    if (authorizedTokenIssuerListListValue.getTrustedTokenIssuerArn() != null) {
                        request.addParameter("AuthorizedTokenIssuerList.member." + authorizedTokenIssuerListListIndex + ".TrustedTokenIssuerArn",
                                StringUtils.fromString(authorizedTokenIssuerListListValue.getTrustedTokenIssuerArn()));
                    }

                    if (!authorizedTokenIssuerListListValue.getAuthorizedAudiencesList().isEmpty()
                            || !((com.amazonaws.internal.SdkInternalList) authorizedTokenIssuerListListValue.getAuthorizedAudiencesList())
                                    .isAutoConstruct()) {
                        com.amazonaws.internal.SdkInternalList authorizedAudiencesListList = (com.amazonaws.internal.SdkInternalList) authorizedTokenIssuerListListValue
                                .getAuthorizedAudiencesList();
                        int authorizedAudiencesListListIndex = 1;

                        for (String authorizedAudiencesListListValue : authorizedAudiencesListList) {
                            if (authorizedAudiencesListListValue != null) {
                                request.addParameter("AuthorizedTokenIssuerList.member." + authorizedTokenIssuerListListIndex
                                        + ".AuthorizedAudiencesList.member." + authorizedAudiencesListListIndex,
                                        StringUtils.fromString(authorizedAudiencesListListValue));
                            }
                            authorizedAudiencesListListIndex++;
                        }
                    }
                }
                authorizedTokenIssuerListListIndex++;
            }
        }

        if (!modifyRedshiftIdcApplicationRequest.getServiceIntegrations().isEmpty()
                || !((com.amazonaws.internal.SdkInternalList) modifyRedshiftIdcApplicationRequest.getServiceIntegrations())
                        .isAutoConstruct()) {
            com.amazonaws.internal.SdkInternalList serviceIntegrationsList = (com.amazonaws.internal.SdkInternalList) modifyRedshiftIdcApplicationRequest
                    .getServiceIntegrations();
            int serviceIntegrationsListIndex = 1;

            for (ServiceIntegrationsUnion serviceIntegrationsListValue : serviceIntegrationsList) {
                if (serviceIntegrationsListValue != null) {

                    if (!serviceIntegrationsListValue.getLakeFormation().isEmpty()
                            || !((com.amazonaws.internal.SdkInternalList) serviceIntegrationsListValue.getLakeFormation())
                                    .isAutoConstruct()) {
                        com.amazonaws.internal.SdkInternalList lakeFormationList = (com.amazonaws.internal.SdkInternalList) serviceIntegrationsListValue
                                .getLakeFormation();
                        int lakeFormationListIndex = 1;

                        for (LakeFormationScopeUnion lakeFormationListValue : lakeFormationList) {
                            if (lakeFormationListValue != null) {

                                {
                                    LakeFormationQuery lakeFormationQuery = lakeFormationListValue.getLakeFormationQuery();
                                    if (lakeFormationQuery != null) {

                                        if (lakeFormationQuery.getAuthorization() != null) {
                                            request.addParameter("ServiceIntegrations.member." + serviceIntegrationsListIndex + ".LakeFormation.member."
                                                    + lakeFormationListIndex + ".LakeFormationQuery.Authorization",
                                                    StringUtils.fromString(lakeFormationQuery.getAuthorization()));
                                        }
                                    }
                                }
                            }
                            lakeFormationListIndex++;
                        }
                    }
                }
                serviceIntegrationsListIndex++;
            }
        }

        return request;
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy