
com.ksc.epc.model.transform.DescribeEpcAvailableStocksRequestMarshaller Maven / Gradle / Ivy
package com.ksc.epc.model.transform;
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.epc.model.DescribeEpcAvailableStocksRequest;
import com.ksc.transform.Marshaller;
import com.ksc.util.StringUtils;
public class DescribeEpcAvailableStocksRequestMarshaller implements
Marshaller, DescribeEpcAvailableStocksRequest> {
@Override
public Request marshall(DescribeEpcAvailableStocksRequest describeEpcAvailableStocksRequest) {
if (describeEpcAvailableStocksRequest == null) {
throw new KscClientException("Invalid argument passed to marshall(...)");
}
Request request = new DefaultRequest(
describeEpcAvailableStocksRequest, "epc");
request.addParameter("Action", "DescribeEpcAvailableStocks");
String version = describeEpcAvailableStocksRequest.getVersion();
if (org.apache.commons.lang.StringUtils.isBlank(version)) {
version = "2015-11-01";
}
request.addParameter("Version", version);
request.setHttpMethod(HttpMethodName.GET);
com.ksc.internal.SdkInternalList filtersList = (com.ksc.internal.SdkInternalList) describeEpcAvailableStocksRequest.getFilters();
if (filtersList != null && (!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 != null && (!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++;
}
}
return request;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy