public Request<RegisterImageRequest> marshall(RegisterImageRequest registerImageRequest) { if (registerImageRequest == null) { throw new AmazonClientException("Invalid argument passed to marshall(...)"); } Request<RegisterImageRequest> request = new DefaultRequest<RegisterImageRequest>(registerImageRequest, "AmazonEC2"); request.addParameter("Action", "RegisterImage"); request.addParameter("Version", "2014-05-01"); if (registerImageRequest.getImageLocation() != null) { request.addParameter( "ImageLocation", StringUtils.fromString(registerImageRequest.getImageLocation())); } if (registerImageRequest.getName() != null) { request.addParameter("Name", StringUtils.fromString(registerImageRequest.getName())); } if (registerImageRequest.getDescription() != null) { request.addParameter( "Description", StringUtils.fromString(registerImageRequest.getDescription())); } if (registerImageRequest.getArchitecture() != null) { request.addParameter( "Architecture", StringUtils.fromString(registerImageRequest.getArchitecture())); } if (registerImageRequest.getKernelId() != null) { request.addParameter("KernelId", StringUtils.fromString(registerImageRequest.getKernelId())); } if (registerImageRequest.getRamdiskId() != null) { request.addParameter( "RamdiskId", StringUtils.fromString(registerImageRequest.getRamdiskId())); } if (registerImageRequest.getRootDeviceName() != null) { request.addParameter( "RootDeviceName", StringUtils.fromString(registerImageRequest.getRootDeviceName())); } java.util.List<BlockDeviceMapping> blockDeviceMappingsList = registerImageRequest.getBlockDeviceMappings(); int blockDeviceMappingsListIndex = 1; for (BlockDeviceMapping blockDeviceMappingsListValue : blockDeviceMappingsList) { BlockDeviceMapping blockDeviceMappingMember = blockDeviceMappingsListValue; if (blockDeviceMappingMember != null) { if (blockDeviceMappingMember.getVirtualName() != null) { request.addParameter( "BlockDeviceMapping." + blockDeviceMappingsListIndex + ".VirtualName", StringUtils.fromString(blockDeviceMappingMember.getVirtualName())); } if (blockDeviceMappingMember.getDeviceName() != null) { request.addParameter( "BlockDeviceMapping." + blockDeviceMappingsListIndex + ".DeviceName", StringUtils.fromString(blockDeviceMappingMember.getDeviceName())); } EbsBlockDevice ebsBlockDeviceEbs = blockDeviceMappingMember.getEbs(); if (ebsBlockDeviceEbs != null) { if (ebsBlockDeviceEbs.getSnapshotId() != null) { request.addParameter( "BlockDeviceMapping." + blockDeviceMappingsListIndex + ".Ebs.SnapshotId", StringUtils.fromString(ebsBlockDeviceEbs.getSnapshotId())); } if (ebsBlockDeviceEbs.getVolumeSize() != null) { request.addParameter( "BlockDeviceMapping." + blockDeviceMappingsListIndex + ".Ebs.VolumeSize", StringUtils.fromInteger(ebsBlockDeviceEbs.getVolumeSize())); } if (ebsBlockDeviceEbs.isDeleteOnTermination() != null) { request.addParameter( "BlockDeviceMapping." + blockDeviceMappingsListIndex + ".Ebs.DeleteOnTermination", StringUtils.fromBoolean(ebsBlockDeviceEbs.isDeleteOnTermination())); } if (ebsBlockDeviceEbs.getVolumeType() != null) { request.addParameter( "BlockDeviceMapping." + blockDeviceMappingsListIndex + ".Ebs.VolumeType", StringUtils.fromString(ebsBlockDeviceEbs.getVolumeType())); } if (ebsBlockDeviceEbs.getIops() != null) { request.addParameter( "BlockDeviceMapping." + blockDeviceMappingsListIndex + ".Ebs.Iops", StringUtils.fromInteger(ebsBlockDeviceEbs.getIops())); } if (ebsBlockDeviceEbs.isEncrypted() != null) { request.addParameter( "BlockDeviceMapping." + blockDeviceMappingsListIndex + ".Ebs.Encrypted", StringUtils.fromBoolean(ebsBlockDeviceEbs.isEncrypted())); } } if (blockDeviceMappingMember.getNoDevice() != null) { request.addParameter( "BlockDeviceMapping." + blockDeviceMappingsListIndex + ".NoDevice", StringUtils.fromString(blockDeviceMappingMember.getNoDevice())); } } blockDeviceMappingsListIndex++; } if (registerImageRequest.getVirtualizationType() != null) { request.addParameter( "VirtualizationType", StringUtils.fromString(registerImageRequest.getVirtualizationType())); } if (registerImageRequest.getSriovNetSupport() != null) { request.addParameter( "SriovNetSupport", StringUtils.fromString(registerImageRequest.getSriovNetSupport())); } return request; }
public Request<CreateImageRequest> marshall(CreateImageRequest createImageRequest) { if (createImageRequest == null) { throw new AmazonClientException("Invalid argument passed to marshall(...)"); } Request<CreateImageRequest> request = new DefaultRequest<CreateImageRequest>(createImageRequest, "AmazonEC2"); request.addParameter("Action", "CreateImage"); request.addParameter("Version", "2014-06-15"); if (createImageRequest.getInstanceId() != null) { request.addParameter( "InstanceId", StringUtils.fromString(createImageRequest.getInstanceId())); } if (createImageRequest.getName() != null) { request.addParameter("Name", StringUtils.fromString(createImageRequest.getName())); } if (createImageRequest.getDescription() != null) { request.addParameter( "Description", StringUtils.fromString(createImageRequest.getDescription())); } if (createImageRequest.isNoReboot() != null) { request.addParameter("NoReboot", StringUtils.fromBoolean(createImageRequest.isNoReboot())); } java.util.List<BlockDeviceMapping> blockDeviceMappingsList = createImageRequest.getBlockDeviceMappings(); int blockDeviceMappingsListIndex = 1; for (BlockDeviceMapping blockDeviceMappingsListValue : blockDeviceMappingsList) { BlockDeviceMapping blockDeviceMappingMember = blockDeviceMappingsListValue; if (blockDeviceMappingMember != null) { if (blockDeviceMappingMember.getVirtualName() != null) { request.addParameter( "BlockDeviceMapping." + blockDeviceMappingsListIndex + ".VirtualName", StringUtils.fromString(blockDeviceMappingMember.getVirtualName())); } if (blockDeviceMappingMember.getDeviceName() != null) { request.addParameter( "BlockDeviceMapping." + blockDeviceMappingsListIndex + ".DeviceName", StringUtils.fromString(blockDeviceMappingMember.getDeviceName())); } EbsBlockDevice ebsBlockDeviceEbs = blockDeviceMappingMember.getEbs(); if (ebsBlockDeviceEbs != null) { if (ebsBlockDeviceEbs.getSnapshotId() != null) { request.addParameter( "BlockDeviceMapping." + blockDeviceMappingsListIndex + ".Ebs.SnapshotId", StringUtils.fromString(ebsBlockDeviceEbs.getSnapshotId())); } if (ebsBlockDeviceEbs.getVolumeSize() != null) { request.addParameter( "BlockDeviceMapping." + blockDeviceMappingsListIndex + ".Ebs.VolumeSize", StringUtils.fromInteger(ebsBlockDeviceEbs.getVolumeSize())); } if (ebsBlockDeviceEbs.isDeleteOnTermination() != null) { request.addParameter( "BlockDeviceMapping." + blockDeviceMappingsListIndex + ".Ebs.DeleteOnTermination", StringUtils.fromBoolean(ebsBlockDeviceEbs.isDeleteOnTermination())); } if (ebsBlockDeviceEbs.getVolumeType() != null) { request.addParameter( "BlockDeviceMapping." + blockDeviceMappingsListIndex + ".Ebs.VolumeType", StringUtils.fromString(ebsBlockDeviceEbs.getVolumeType())); } if (ebsBlockDeviceEbs.getIops() != null) { request.addParameter( "BlockDeviceMapping." + blockDeviceMappingsListIndex + ".Ebs.Iops", StringUtils.fromInteger(ebsBlockDeviceEbs.getIops())); } if (ebsBlockDeviceEbs.isEncrypted() != null) { request.addParameter( "BlockDeviceMapping." + blockDeviceMappingsListIndex + ".Ebs.Encrypted", StringUtils.fromBoolean(ebsBlockDeviceEbs.isEncrypted())); } } if (blockDeviceMappingMember.getNoDevice() != null) { request.addParameter( "BlockDeviceMapping." + blockDeviceMappingsListIndex + ".NoDevice", StringUtils.fromString(blockDeviceMappingMember.getNoDevice())); } } blockDeviceMappingsListIndex++; } return request; }
public Request<CreateInstanceRequest> marshall(CreateInstanceRequest createInstanceRequest) { if (createInstanceRequest == null) { throw new AmazonClientException("Invalid argument passed to marshall(...)"); } Request<CreateInstanceRequest> request = new DefaultRequest<CreateInstanceRequest>(createInstanceRequest, "AWSOpsWorks"); String target = "OpsWorks_20130218.CreateInstance"; request.addHeader("X-Amz-Target", target); request.setHttpMethod(HttpMethodName.POST); request.setResourcePath(""); try { StringWriter stringWriter = new StringWriter(); JSONWriter jsonWriter = new JSONWriter(stringWriter); jsonWriter.object(); if (createInstanceRequest.getStackId() != null) { jsonWriter.key("StackId").value(createInstanceRequest.getStackId()); } com.amazonaws.internal.ListWithAutoConstructFlag<String> layerIdsList = (com.amazonaws.internal.ListWithAutoConstructFlag<String>) (createInstanceRequest.getLayerIds()); if (layerIdsList != null && !(layerIdsList.isAutoConstruct() && layerIdsList.isEmpty())) { jsonWriter.key("LayerIds"); jsonWriter.array(); for (String layerIdsListValue : layerIdsList) { if (layerIdsListValue != null) { jsonWriter.value(layerIdsListValue); } } jsonWriter.endArray(); } if (createInstanceRequest.getInstanceType() != null) { jsonWriter.key("InstanceType").value(createInstanceRequest.getInstanceType()); } if (createInstanceRequest.getAutoScalingType() != null) { jsonWriter.key("AutoScalingType").value(createInstanceRequest.getAutoScalingType()); } if (createInstanceRequest.getHostname() != null) { jsonWriter.key("Hostname").value(createInstanceRequest.getHostname()); } if (createInstanceRequest.getOs() != null) { jsonWriter.key("Os").value(createInstanceRequest.getOs()); } if (createInstanceRequest.getAmiId() != null) { jsonWriter.key("AmiId").value(createInstanceRequest.getAmiId()); } if (createInstanceRequest.getSshKeyName() != null) { jsonWriter.key("SshKeyName").value(createInstanceRequest.getSshKeyName()); } if (createInstanceRequest.getAvailabilityZone() != null) { jsonWriter.key("AvailabilityZone").value(createInstanceRequest.getAvailabilityZone()); } if (createInstanceRequest.getVirtualizationType() != null) { jsonWriter.key("VirtualizationType").value(createInstanceRequest.getVirtualizationType()); } if (createInstanceRequest.getSubnetId() != null) { jsonWriter.key("SubnetId").value(createInstanceRequest.getSubnetId()); } if (createInstanceRequest.getArchitecture() != null) { jsonWriter.key("Architecture").value(createInstanceRequest.getArchitecture()); } if (createInstanceRequest.getRootDeviceType() != null) { jsonWriter.key("RootDeviceType").value(createInstanceRequest.getRootDeviceType()); } com.amazonaws.internal.ListWithAutoConstructFlag<BlockDeviceMapping> blockDeviceMappingsList = (com.amazonaws.internal.ListWithAutoConstructFlag<BlockDeviceMapping>) (createInstanceRequest.getBlockDeviceMappings()); if (blockDeviceMappingsList != null && !(blockDeviceMappingsList.isAutoConstruct() && blockDeviceMappingsList.isEmpty())) { jsonWriter.key("BlockDeviceMappings"); jsonWriter.array(); for (BlockDeviceMapping blockDeviceMappingsListValue : blockDeviceMappingsList) { if (blockDeviceMappingsListValue != null) { jsonWriter.object(); if (blockDeviceMappingsListValue.getDeviceName() != null) { jsonWriter.key("DeviceName").value(blockDeviceMappingsListValue.getDeviceName()); } if (blockDeviceMappingsListValue.getNoDevice() != null) { jsonWriter.key("NoDevice").value(blockDeviceMappingsListValue.getNoDevice()); } if (blockDeviceMappingsListValue.getVirtualName() != null) { jsonWriter.key("VirtualName").value(blockDeviceMappingsListValue.getVirtualName()); } EbsBlockDevice ebs = blockDeviceMappingsListValue.getEbs(); if (ebs != null) { jsonWriter.key("Ebs"); jsonWriter.object(); if (ebs.getSnapshotId() != null) { jsonWriter.key("SnapshotId").value(ebs.getSnapshotId()); } if (ebs.getIops() != null) { jsonWriter.key("Iops").value(ebs.getIops()); } if (ebs.getVolumeSize() != null) { jsonWriter.key("VolumeSize").value(ebs.getVolumeSize()); } if (ebs.getVolumeType() != null) { jsonWriter.key("VolumeType").value(ebs.getVolumeType()); } if (ebs.isDeleteOnTermination() != null) { jsonWriter.key("DeleteOnTermination").value(ebs.isDeleteOnTermination()); } jsonWriter.endObject(); } jsonWriter.endObject(); } } jsonWriter.endArray(); } if (createInstanceRequest.isInstallUpdatesOnBoot() != null) { jsonWriter .key("InstallUpdatesOnBoot") .value(createInstanceRequest.isInstallUpdatesOnBoot()); } if (createInstanceRequest.isEbsOptimized() != null) { jsonWriter.key("EbsOptimized").value(createInstanceRequest.isEbsOptimized()); } if (createInstanceRequest.getAgentVersion() != null) { jsonWriter.key("AgentVersion").value(createInstanceRequest.getAgentVersion()); } jsonWriter.endObject(); String snippet = stringWriter.toString(); byte[] content = snippet.getBytes(UTF8); request.setContent(new StringInputStream(snippet)); request.addHeader("Content-Length", Integer.toString(content.length)); request.addHeader("Content-Type", "application/x-amz-json-1.1"); } catch (Throwable t) { throw new AmazonClientException("Unable to marshall request to JSON: " + t.getMessage(), t); } return request; }