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

com.ksc.epc.model.transform.ModifySecurityGroupRequestMarshaller 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.epc.model.ModifySecurityGroupRequest;
import com.ksc.transform.Marshaller;
import com.ksc.util.StringUtils;

public class ModifySecurityGroupRequestMarshaller implements
        Marshaller, ModifySecurityGroupRequest> {

    @Override
    public Request marshall(ModifySecurityGroupRequest modifySecurityGroupRequest) {
        if (modifySecurityGroupRequest == null) {
            throw new KscClientException("Invalid argument passed to marshall(...)");
        }

        Request request = new DefaultRequest(
                modifySecurityGroupRequest, "epc");
        request.addParameter("Action", "ModifySecurityGroup");
        String version = modifySecurityGroupRequest.getVersion();
        if (org.apache.commons.lang.StringUtils.isBlank(version)) {
            version = "2015-11-01";
        }
        request.addParameter("Version", version);
        request.setHttpMethod(HttpMethodName.GET);

        if (!StringUtils.isNullOrEmpty(modifySecurityGroupRequest.getNetworkInterfaceId())) {
            request.addParameter("NetworkInterfaceId", modifySecurityGroupRequest.getNetworkInterfaceId());
        }
            com.ksc.internal.SdkInternalList securityGroupIds = (com.ksc.internal.SdkInternalList) modifySecurityGroupRequest
				.getSecurityGroupIds();
		    if (securityGroupIds != null && (!securityGroupIds.isEmpty() || !securityGroupIds.isAutoConstruct())) {
			    int index = 1;

			    for (String value : securityGroupIds) {
				if (value != null) {
					request.addParameter("SecurityGroupId." + index, StringUtils.fromString(value));
				}
				index ++;
			    }
		    }
        if (!StringUtils.isNullOrEmpty(modifySecurityGroupRequest.getHostId())) {
            request.addParameter("HostId", modifySecurityGroupRequest.getHostId());
        }

        return request;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy