/* * Copyright 2010-2016 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.autoscaling.model.transform; import com.amazonaws.Request; import com.amazonaws.services.autoscaling.model.*; import com.amazonaws.util.StringUtils; /** * StAX marshaller for POJO LaunchConfiguration */ class LaunchConfigurationStaxMarshaller { public void marshall(LaunchConfiguration _launchConfiguration, Request<?> request, String _prefix) { String prefix; if (_launchConfiguration.getLaunchConfigurationName() != null) { prefix = _prefix + "LaunchConfigurationName"; String launchConfigurationName = _launchConfiguration.getLaunchConfigurationName(); request.addParameter(prefix, StringUtils.fromString(launchConfigurationName)); } if (_launchConfiguration.getLaunchConfigurationARN() != null) { prefix = _prefix + "LaunchConfigurationARN"; String launchConfigurationARN = _launchConfiguration.getLaunchConfigurationARN(); request.addParameter(prefix, StringUtils.fromString(launchConfigurationARN)); } if (_launchConfiguration.getImageId() != null) { prefix = _prefix + "ImageId"; String imageId = _launchConfiguration.getImageId(); request.addParameter(prefix, StringUtils.fromString(imageId)); } if (_launchConfiguration.getKeyName() != null) { prefix = _prefix + "KeyName"; String keyName = _launchConfiguration.getKeyName(); request.addParameter(prefix, StringUtils.fromString(keyName)); } if (_launchConfiguration.getSecurityGroups() != null) { prefix = _prefix + "SecurityGroups"; java.util.List<String> securityGroups = _launchConfiguration.getSecurityGroups(); int securityGroupsIndex = 1; String securityGroupsPrefix = prefix; for (String securityGroupsItem : securityGroups) { prefix = securityGroupsPrefix + ".member." + securityGroupsIndex; if (securityGroupsItem != null) { request.addParameter(prefix, StringUtils.fromString(securityGroupsItem)); } securityGroupsIndex++; } prefix = securityGroupsPrefix; } if (_launchConfiguration.getClassicLinkVPCId() != null) { prefix = _prefix + "ClassicLinkVPCId"; String classicLinkVPCId = _launchConfiguration.getClassicLinkVPCId(); request.addParameter(prefix, StringUtils.fromString(classicLinkVPCId)); } if (_launchConfiguration.getClassicLinkVPCSecurityGroups() != null) { prefix = _prefix + "ClassicLinkVPCSecurityGroups"; java.util.List<String> classicLinkVPCSecurityGroups = _launchConfiguration .getClassicLinkVPCSecurityGroups(); int classicLinkVPCSecurityGroupsIndex = 1; String classicLinkVPCSecurityGroupsPrefix = prefix; for (String classicLinkVPCSecurityGroupsItem : classicLinkVPCSecurityGroups) { prefix = classicLinkVPCSecurityGroupsPrefix + ".member." + classicLinkVPCSecurityGroupsIndex; if (classicLinkVPCSecurityGroupsItem != null) { request.addParameter(prefix, StringUtils.fromString(classicLinkVPCSecurityGroupsItem)); } classicLinkVPCSecurityGroupsIndex++; } prefix = classicLinkVPCSecurityGroupsPrefix; } if (_launchConfiguration.getUserData() != null) { prefix = _prefix + "UserData"; String userData = _launchConfiguration.getUserData(); request.addParameter(prefix, StringUtils.fromString(userData)); } if (_launchConfiguration.getInstanceType() != null) { prefix = _prefix + "InstanceType"; String instanceType = _launchConfiguration.getInstanceType(); request.addParameter(prefix, StringUtils.fromString(instanceType)); } if (_launchConfiguration.getKernelId() != null) { prefix = _prefix + "KernelId"; String kernelId = _launchConfiguration.getKernelId(); request.addParameter(prefix, StringUtils.fromString(kernelId)); } if (_launchConfiguration.getRamdiskId() != null) { prefix = _prefix + "RamdiskId"; String ramdiskId = _launchConfiguration.getRamdiskId(); request.addParameter(prefix, StringUtils.fromString(ramdiskId)); } if (_launchConfiguration.getBlockDeviceMappings() != null) { prefix = _prefix + "BlockDeviceMappings"; java.util.List<BlockDeviceMapping> blockDeviceMappings = _launchConfiguration .getBlockDeviceMappings(); int blockDeviceMappingsIndex = 1; String blockDeviceMappingsPrefix = prefix; for (BlockDeviceMapping blockDeviceMappingsItem : blockDeviceMappings) { prefix = blockDeviceMappingsPrefix + ".member." + blockDeviceMappingsIndex; if (blockDeviceMappingsItem != null) { BlockDeviceMappingStaxMarshaller.getInstance().marshall( blockDeviceMappingsItem, request, prefix + "."); } blockDeviceMappingsIndex++; } prefix = blockDeviceMappingsPrefix; } if (_launchConfiguration.getInstanceMonitoring() != null) { prefix = _prefix + "InstanceMonitoring"; InstanceMonitoring instanceMonitoring = _launchConfiguration.getInstanceMonitoring(); InstanceMonitoringStaxMarshaller.getInstance().marshall(instanceMonitoring, request, prefix + "."); } if (_launchConfiguration.getSpotPrice() != null) { prefix = _prefix + "SpotPrice"; String spotPrice = _launchConfiguration.getSpotPrice(); request.addParameter(prefix, StringUtils.fromString(spotPrice)); } if (_launchConfiguration.getIamInstanceProfile() != null) { prefix = _prefix + "IamInstanceProfile"; String iamInstanceProfile = _launchConfiguration.getIamInstanceProfile(); request.addParameter(prefix, StringUtils.fromString(iamInstanceProfile)); } if (_launchConfiguration.getCreatedTime() != null) { prefix = _prefix + "CreatedTime"; java.util.Date createdTime = _launchConfiguration.getCreatedTime(); request.addParameter(prefix, StringUtils.fromDate(createdTime)); } if (_launchConfiguration.getEbsOptimized() != null) { prefix = _prefix + "EbsOptimized"; Boolean ebsOptimized = _launchConfiguration.getEbsOptimized(); request.addParameter(prefix, StringUtils.fromBoolean(ebsOptimized)); } if (_launchConfiguration.getAssociatePublicIpAddress() != null) { prefix = _prefix + "AssociatePublicIpAddress"; Boolean associatePublicIpAddress = _launchConfiguration.getAssociatePublicIpAddress(); request.addParameter(prefix, StringUtils.fromBoolean(associatePublicIpAddress)); } if (_launchConfiguration.getPlacementTenancy() != null) { prefix = _prefix + "PlacementTenancy"; String placementTenancy = _launchConfiguration.getPlacementTenancy(); request.addParameter(prefix, StringUtils.fromString(placementTenancy)); } } private static LaunchConfigurationStaxMarshaller instance; public static LaunchConfigurationStaxMarshaller getInstance() { if (instance == null) instance = new LaunchConfigurationStaxMarshaller(); return instance; } }