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

io.cloudslang.content.amazon.entities.inputs.CustomInputs Maven / Gradle / Ivy

/*
 * (c) Copyright 2017 EntIT Software LLC, a Micro Focus company, L.P.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Apache License v2.0 which accompany this distribution.
 *
 * The Apache License is available at
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License 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 io.cloudslang.content.amazon.entities.inputs;

import io.cloudslang.content.amazon.entities.aws.Architecture;
import io.cloudslang.content.amazon.entities.aws.Domain;
import io.cloudslang.content.amazon.entities.aws.Hypervisor;
import io.cloudslang.content.amazon.entities.aws.InstanceType;
import io.cloudslang.content.amazon.entities.aws.Platform;
import io.cloudslang.content.amazon.entities.aws.ProductCodeType;
import io.cloudslang.content.amazon.entities.aws.RootDeviceType;
import io.cloudslang.content.amazon.entities.aws.VirtualizationType;
import io.cloudslang.content.amazon.entities.aws.VolumeType;

import static io.cloudslang.content.amazon.utils.InputsUtil.getRelevantBooleanString;
import static io.cloudslang.content.amazon.utils.InputsUtil.getValidVolumeAmount;

/**
 * Created by Mihai Tusa.
 * 2/18/2016.
 */
public class CustomInputs {
    private final String operationType;
    private final String attribute;
    private final String instanceId;
    private final String imageId;
    private final String identityId;
    private final String volumeId;
    private final String hostId;
    private final String kernelId;
    private final String ownerId;
    private final String ramdiskId;
    private final String subnetId;
    private final String allocationId;
    private final String associationId;
    private final String architecture;
    private final String deleteOnTermination;
    private final String blockMappingDeviceName;
    private final String blockDeviceMappingSnapshotId;
    private final String volumeSize;
    private final String volumeType;
    private final String hypervisor;
    private final String ownerAlias;
    private final String platform;
    private final String productCode;
    private final String productCodeType;
    private final String rootDeviceName;
    private final String rootDeviceType;
    private final String stateReasonCode;
    private final String stateReasonMessage;
    private final String keyTagsString;
    private final String valueTagsString;
    private final String virtualizationType;
    private final String availabilityZone;
    private final String instanceType;
    private final String resourceIdsString;
    private final String kmsKeyId;
    private final String attachmentId;
    private final String domain;
    private final String regionsString;
    private final String keyFiltersString;
    private final String valueFiltersString;
    private final String availabilityZonesString;
    private final String vpcId;

    private CustomInputs(Builder builder) {
        this.instanceId = builder.instanceId;
        this.imageId = builder.imageId;
        this.identityId = builder.identityId;
        this.volumeId = builder.volumeId;
        this.hostId = builder.hostId;
        this.kernelId = builder.kernelId;
        this.ownerId = builder.ownerId;
        this.ramdiskId = builder.ramdiskId;
        this.subnetId = builder.subnetId;
        this.allocationId = builder.allocationId;
        this.associationId = builder.associationId;
        this.architecture = builder.architecture;
        this.blockMappingDeviceName = builder.blockMappingDeviceName;
        this.deleteOnTermination = builder.deleteOnTermination;
        this.blockDeviceMappingSnapshotId = builder.blockDeviceMappingSnapshotId;
        this.volumeSize = builder.volumeSize;
        this.volumeType = builder.volumeType;
        this.hypervisor = builder.hypervisor;
        this.ownerAlias = builder.ownerAlias;
        this.platform = builder.platform;
        this.productCode = builder.productCode;
        this.productCodeType = builder.productCodeType;
        this.rootDeviceName = builder.rootDeviceName;
        this.rootDeviceType = builder.rootDeviceType;
        this.stateReasonCode = builder.stateReasonCode;
        this.stateReasonMessage = builder.stateReasonMessage;
        this.keyTagsString = builder.keyTagsString;
        this.valueTagsString = builder.valueTagsString;
        this.virtualizationType = builder.virtualizationType;
        this.availabilityZone = builder.availabilityZone;
        this.instanceType = builder.instanceType;
        this.resourceIdsString = builder.resourceIdsString;
        this.kmsKeyId = builder.kmsKeyId;
        this.attachmentId = builder.attachmentId;
        this.domain = builder.domain;
        this.attribute = builder.attribute;
        this.operationType = builder.operationType;
        this.regionsString = builder.regionsString;
        this.keyFiltersString = builder.keyFiltersString;
        this.valueFiltersString = builder.valueFiltersString;
        this.availabilityZonesString = builder.availabilityZonesString;
        this.vpcId = builder.vpcId;
    }

    public String getInstanceId() {
        return instanceId;
    }

    public String getImageId() {
        return imageId;
    }

    public String getIdentityId() {
        return identityId;
    }

    public String getVolumeId() {
        return volumeId;
    }

    public String getHostId() {
        return hostId;
    }

    public String getKernelId() {
        return kernelId;
    }

    public String getOwnerId() {
        return ownerId;
    }

    public String getRamdiskId() {
        return ramdiskId;
    }

    public String getSubnetId() {
        return subnetId;
    }

    public String getAllocationId() {
        return allocationId;
    }

    public String getAssociationId() {
        return associationId;
    }

    public String getArchitecture() {
        return architecture;
    }

    public String getBlockMappingDeviceName() {
        return blockMappingDeviceName;
    }

    public String getDeleteOnTermination() {
        return deleteOnTermination;
    }

    public String getBlockDeviceMappingSnapshotId() {
        return blockDeviceMappingSnapshotId;
    }

    public String getVolumeSize() {
        return volumeSize;
    }

    public String getVolumeType() {
        return volumeType;
    }

    public String getHypervisor() {
        return hypervisor;
    }

    public String getOwnerAlias() {
        return ownerAlias;
    }

    public String getPlatform() {
        return platform;
    }

    public String getProductCode() {
        return productCode;
    }

    public String getProductCodeType() {
        return productCodeType;
    }

    public String getRootDeviceName() {
        return rootDeviceName;
    }

    public String getRootDeviceType() {
        return rootDeviceType;
    }

    public String getStateReasonCode() {
        return stateReasonCode;
    }

    public String getStateReasonMessage() {
        return stateReasonMessage;
    }

    public String getKeyTagsString() {
        return keyTagsString;
    }

    public String getValueTagsString() {
        return valueTagsString;
    }

    public String getVirtualizationType() {
        return virtualizationType;
    }

    public String getAvailabilityZone() {
        return availabilityZone;
    }

    public String getInstanceType() {
        return instanceType;
    }

    public String getResourceIdsString() {
        return resourceIdsString;
    }

    public String getKmsKeyId() {
        return kmsKeyId;
    }

    public String getAttachmentId() {
        return attachmentId;
    }

    public String getDomain() {
        return domain;
    }

    public String getAttribute() {
        return attribute;
    }

    public String getOperationType() {
        return operationType;
    }

    public String getRegionsString() {
        return regionsString;
    }

    public String getKeyFiltersString() {
        return keyFiltersString;
    }

    public String getValueFiltersString() {
        return valueFiltersString;
    }

    public String getAvailabilityZonesString() {
        return availabilityZonesString;
    }

    public String getVpcId() {
        return vpcId;
    }

    public static class Builder {
        private String instanceId;
        private String imageId;
        private String identityId;
        private String volumeId;
        private String hostId;
        private String kernelId;
        private String ownerId;
        private String ramdiskId;
        private String subnetId;
        private String allocationId;
        private String associationId;
        private String architecture;
        private String blockMappingDeviceName;
        private String deleteOnTermination;
        private String blockDeviceMappingSnapshotId;
        private String volumeSize;
        private String volumeType;
        private String hypervisor;
        private String ownerAlias;
        private String platform;
        private String productCode;
        private String productCodeType;
        private String rootDeviceName;
        private String rootDeviceType;
        private String stateReasonCode;
        private String stateReasonMessage;
        private String keyTagsString;
        private String valueTagsString;
        private String virtualizationType;
        private String availabilityZone;
        private String instanceType;
        private String resourceIdsString;
        private String kmsKeyId;
        private String attachmentId;
        private String domain;
        private String attribute;
        private String operationType;
        private String regionsString;
        private String keyFiltersString;
        private String valueFiltersString;
        private String availabilityZonesString;
        private String vpcId;

        public CustomInputs build() {
            return new CustomInputs(this);
        }

        public Builder withInstanceId(String inputValue) {
            instanceId = inputValue;
            return this;
        }

        public Builder withImageId(String inputValue) {
            imageId = inputValue;
            return this;
        }

        public Builder withIdentityId(String inputValue) {
            identityId = inputValue;
            return this;
        }

        public Builder withVolumeId(String inputValue) {
            volumeId = inputValue;
            return this;
        }

        public Builder withHostId(String inputValue) {
            hostId = inputValue;
            return this;
        }

        public Builder withKernelId(String inputValue) {
            kernelId = inputValue;
            return this;
        }

        public Builder withOwnerId(String inputValue) {
            ownerId = inputValue;
            return this;
        }

        public Builder withRamdiskId(String inputValue) {
            ramdiskId = inputValue;
            return this;
        }

        public Builder withSubnetId(String inputValue) {
            subnetId = inputValue;
            return this;
        }

        public Builder withAllocationId(String inputValue) {
            allocationId = inputValue;
            return this;
        }

        public Builder withAssociationId(String inputValue) {
            associationId = inputValue;
            return this;
        }

        public Builder withArchitecture(String inputValue) {
            architecture = Architecture.getValue(inputValue);
            return this;
        }

        public Builder withBlockMappingDeviceName(String inputValue) {
            blockMappingDeviceName = inputValue;
            return this;
        }

        public Builder withDeleteOnTermination(String inputValue) {
            deleteOnTermination = getRelevantBooleanString(inputValue);
            return this;
        }

        public Builder withBlockDeviceMappingSnapshotId(String inputValue) {
            blockDeviceMappingSnapshotId = inputValue;
            return this;
        }

        public Builder withVolumeSize(String inputValue) {
            volumeSize = getValidVolumeAmount(inputValue);
            return this;
        }

        public Builder withVolumeType(String inputValue) {
            volumeType = VolumeType.getValue(inputValue);
            return this;
        }

        public Builder withHypervisor(String inputValue) {
            hypervisor = Hypervisor.getValue(inputValue);
            return this;
        }

        public Builder withOwnerAlias(String inputValue) {
            ownerAlias = inputValue;
            return this;
        }

        public Builder withPlatform(String inputValue) {
            platform = Platform.getValue(inputValue);
            return this;
        }

        public Builder withProductCode(String inputValue) {
            productCode = inputValue;
            return this;
        }

        public Builder withProductCodeType(String inputValue) {
            productCodeType = ProductCodeType.getValue(inputValue);
            return this;
        }

        public Builder withRootDeviceName(String inputValue) {
            rootDeviceName = inputValue;
            return this;
        }

        public Builder withRootDeviceType(String inputValue) {
            rootDeviceType = RootDeviceType.getValue(inputValue);
            return this;
        }

        public Builder withStateReasonCode(String inputValue) {
            stateReasonCode = inputValue;
            return this;
        }

        public Builder withStateReasonMessage(String inputValue) {
            stateReasonMessage = inputValue;
            return this;
        }

        public Builder withKeyTagsString(String inputValue) {
            keyTagsString = inputValue;
            return this;
        }

        public Builder withValueTagsString(String inputValue) {
            valueTagsString = inputValue;
            return this;
        }

        public Builder withVirtualizationType(String inputValue) {
            virtualizationType = VirtualizationType.getValue(inputValue);
            return this;
        }

        public Builder withAvailabilityZone(String inputValue) {
            availabilityZone = inputValue;
            return this;
        }

        public Builder withInstanceType(String inputValue) {
            instanceType = InstanceType.getInstanceType(inputValue);
            return this;
        }

        public Builder withResourceIdsString(String inputValue) {
            resourceIdsString = inputValue;
            return this;
        }

        public Builder withKmsKeyId(String inputValue) {
            kmsKeyId = inputValue;
            return this;
        }

        public Builder withAttachmentId(String inputValue) {
            attachmentId = inputValue;
            return this;
        }

        public Builder withDomain(String inputValue) {
            domain = Domain.getValue(inputValue);
            return this;
        }

        public Builder withAttribute(String inputValue) {
            attribute = inputValue;
            return this;
        }

        public Builder withOperationType(String inputValue) {
            operationType = inputValue;
            return this;
        }

        public Builder withRegionsString(String inputValue) {
            regionsString = inputValue;
            return this;
        }

        public Builder withKeyFiltersString(String inputValue) {
            keyFiltersString = inputValue;
            return this;
        }

        public Builder withValueFiltersString(String inputValue) {
            valueFiltersString = inputValue;
            return this;
        }

        public Builder withAvailabilityZonesString(String inputValue) {
            availabilityZonesString = inputValue;
            return this;
        }

        public Builder withVpcId(String inputValue) {
            vpcId = inputValue;
            return this;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy