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

com.ksc.network.vpc.transform.subnet.DescribeSubnetAvailableAddressesRequestMarshaller Maven / Gradle / Ivy

There is a newer version: 2.1.8
Show newest version
package com.ksc.network.vpc.transform.subnet;

import com.ksc.DefaultRequest;
import com.ksc.KscClientException;
import com.ksc.Request;
import com.ksc.http.HttpMethodName;
import com.ksc.model.Filter;
import com.ksc.network.vpc.model.subnet.DescribeSubnetAvailableAddressesRequest;
import com.ksc.transform.Marshaller;
import com.ksc.util.StringUtils;

/**
 * DescribeSubnetAvailableAddressesRequest Marshaller
 */

public class DescribeSubnetAvailableAddressesRequestMarshaller
		implements Marshaller, DescribeSubnetAvailableAddressesRequest> {

	public Request marshall(DescribeSubnetAvailableAddressesRequest describeSubnetAvailableAddressesRequest) {

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

		Request request = new DefaultRequest(describeSubnetAvailableAddressesRequest,
				"vpc");
		request.addParameter("Action", "DescribeSubnetAvailableAddresses");
		String version = describeSubnetAvailableAddressesRequest.getVersion();
		if (StringUtils.isNullOrEmpty(version)) {
			version = "2016-03-04";
		}
		request.addParameter("Version", version);
		request.setHttpMethod(HttpMethodName.GET);

		com.ksc.internal.SdkInternalList filtersList = (com.ksc.internal.SdkInternalList) describeSubnetAvailableAddressesRequest
				.getFilters();
		if (!filtersList.isEmpty() || !filtersList.isAutoConstruct()) {
			int filtersListIndex = 1;

			for (Filter filtersListValue : filtersList) {

				if (filtersListValue.getName() != null) {
					request.addParameter("Filter." + filtersListIndex + ".Name",
							StringUtils.fromString(filtersListValue.getName()));
				}

				com.ksc.internal.SdkInternalList valuesList = (com.ksc.internal.SdkInternalList) filtersListValue
						.getValues();
				if (!valuesList.isEmpty() || !valuesList.isAutoConstruct()) {
					int valuesListIndex = 1;

					for (String valuesListValue : valuesList) {
						if (valuesListValue != null) {
							request.addParameter("Filter." + filtersListIndex + ".Value." + valuesListIndex,
									StringUtils.fromString(valuesListValue));
						}
						valuesListIndex++;
					}
				}
				filtersListIndex++;
			}
		}
		if (!StringUtils.isNullOrEmpty(describeSubnetAvailableAddressesRequest.getNextToken())) {
			request.addParameter("NextToken", describeSubnetAvailableAddressesRequest.getNextToken());
		}
		if (describeSubnetAvailableAddressesRequest.getMaxResults() != null) {
			request.addParameter("MaxResults", StringUtils
					.fromInteger(describeSubnetAvailableAddressesRequest.getMaxResults()));
		}

		return request;
	}

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy