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

com.softlayer.api.service.network.storage.Iscsi Maven / Gradle / Ivy

There is a newer version: 0.3.4
Show newest version
package com.softlayer.api.service.network.storage;

import com.softlayer.api.ApiClient;
import com.softlayer.api.ResponseHandler;
import com.softlayer.api.annotation.ApiMethod;
import com.softlayer.api.annotation.ApiType;
import com.softlayer.api.service.Hardware;
import com.softlayer.api.service.network.Storage;
import com.softlayer.api.service.network.storage.Property;
import com.softlayer.api.service.network.subnet.IpAddress;
import com.softlayer.api.service.virtual.Guest;
import java.util.List;
import java.util.concurrent.Future;

/**
 * The iscsi data type provides access to additional information about an iscsi volume such as the snapshot capacity limit and replication partners. 
 *
 * @see SoftLayer_Network_Storage_Iscsi
 */
@ApiType("SoftLayer_Network_Storage_Iscsi")
public class Iscsi extends Storage {

    public Service asService(ApiClient client) {
        return service(client, id);
    }

    public static Service service(ApiClient client) {
        return client.createService(Service.class, null);
    }

    public static Service service(ApiClient client, Long id) {
        return client.createService(Service.class, id == null ? null : id.toString());
    }

    /**
     * SoftLayer's iscsi product extends upon the base functionality of SoftLayer offerings by providing snapshot and replication capabilities. An iscsi volume is mounted through SoftLayer's private network and allows for block level additional storage on a highly redundant disk array. SoftLayer's iscsi offering is capable of taking volume snapshots which can be mounted read-only or used for an immediate volume data restore. This high-end Storage offering is also capable of being configured for remote data replication to any of SoftLayer's datacenters to provide a solid disaster recovery solution. 
     *
     * @see SoftLayer_Network_Storage_Iscsi
     */
    @com.softlayer.api.annotation.ApiService("SoftLayer_Network_Storage_Iscsi")
    public static interface Service extends Storage.Service {

        public ServiceAsync asAsync();
        public Mask withNewMask();
        public Mask withMask();
        public void setMask(Mask mask);

        /**
         * This method is used to modify the access control list for this Storage volume.  The SoftLayer_Hardware objects which have been allowed access to this storage will be listed in the allowedHardware property of this storage volume. 
         *
         * @see SoftLayer_Network_Storage_Iscsi::allowAccessFromHardware
         */
        @ApiMethod(instanceRequired = true)
        public Boolean allowAccessFromHardware(Hardware hardwareObjectTemplate);

        /**
         * @see SoftLayer_Network_Storage_Iscsi::allowAccessFromIpAddress
         */
        @ApiMethod(instanceRequired = true)
        public Boolean allowAccessFromIpAddress(IpAddress ipAddressObjectTemplate);

        /**
         * This method is used to modify the access control list for this Storage volume.  The SoftLayer_Virtual_Guest objects which have been allowed access to this storage will be listed in the allowedVirtualGuests property of this storage volume. 
         *
         * @see SoftLayer_Network_Storage_Iscsi::allowAccessFromVirtualGuest
         */
        @ApiMethod(instanceRequired = true)
        public Boolean allowAccessFromVirtualGuest(Guest virtualGuestObjectTemplate);

        /**
         * This method is used to modify the access control list for this Storage replica volume.  The SoftLayer_Hardware objects which have been allowed access to this storage will be listed in the allowedHardware property of this storage replica volume. 
         *
         * @see SoftLayer_Network_Storage_Iscsi::allowAccessToReplicantFromHardwareList
         */
        @ApiMethod(value = "allowAccessToReplicantFromHardwareList", instanceRequired = true)
        public Boolean allowAccessToReplicantFromHardwareListForIscsi(List hardwareObjectTemplates);

        /**
         * This method is used to modify the access control list for this Storage volume.  The SoftLayer_Network_Subnet_IpAddress objects which have been allowed access to this storage will be listed in the allowedVirtualGuests property of this storage volume. 
         *
         * @see SoftLayer_Network_Storage_Iscsi::allowAccessToReplicantFromIpAddressList
         */
        @ApiMethod(value = "allowAccessToReplicantFromIpAddressList", instanceRequired = true)
        public Boolean allowAccessToReplicantFromIpAddressListForIscsi(List ipAddressObjectTemplates);

        /**
         * This method is used to modify the access control list for this Storage volume.  The SoftLayer_Virtual_Guest objects which have been allowed access to this storage will be listed in the allowedVirtualGuests property of this storage volume. 
         *
         * @see SoftLayer_Network_Storage_Iscsi::allowAccessToReplicantFromVirtualGuestList
         */
        @ApiMethod(value = "allowAccessToReplicantFromVirtualGuestList", instanceRequired = true)
        public Boolean allowAccessToReplicantFromVirtualGuestListForIscsi(List virtualGuestObjectTemplates);

        /**
         * The LUN ID only takes effect during the Host Authorization process. It is required to de-authorize all hosts before using this method. 
         *
         * @see SoftLayer_Network_Storage_Iscsi::createOrUpdateLunId
         */
        @ApiMethod(instanceRequired = true)
        public Property createOrUpdateLunId(Long lunId);

        /**
         * @see SoftLayer_Network_Storage_Iscsi::getObject
         */
        @ApiMethod(value = "getObject", instanceRequired = true)
        public Iscsi getObjectForIscsi();

        /**
         * Retrieves a list of snapshots for this SoftLayer_Network_Storage volume. This method works with the result limits and offset to support pagination. 
         *
         * @see SoftLayer_Network_Storage_Iscsi::getSnapshotsForVolume
         */
        @ApiMethod(value = "getSnapshotsForVolume", instanceRequired = true)
        public List getSnapshotsForVolumeForIscsi();

        /**
         * This method is used to modify the access control list for this Storage volume.  The SoftLayer_Hardware objects which have been allowed access to this storage will be listed in the allowedHardware property of this storage volume. 
         *
         * @see SoftLayer_Network_Storage_Iscsi::removeAccessFromHardware
         */
        @ApiMethod(instanceRequired = true)
        public Boolean removeAccessFromHardware(Hardware hardwareObjectTemplate);

        /**
         * @see SoftLayer_Network_Storage_Iscsi::removeAccessFromIpAddress
         */
        @ApiMethod(instanceRequired = true)
        public Boolean removeAccessFromIpAddress(IpAddress ipAddressObjectTemplate);

        /**
         * This method is used to modify the access control list for this Storage volume.  The SoftLayer_Virtual_Guest objects which have been allowed access to this storage will be listed in the allowedVirtualGuests property of this storage volume. 
         *
         * @see SoftLayer_Network_Storage_Iscsi::removeAccessFromVirtualGuest
         */
        @ApiMethod(instanceRequired = true)
        public Boolean removeAccessFromVirtualGuest(Guest virtualGuestObjectTemplate);

        /**
         * This method is used to modify the access control list for this Storage replica volume.  The SoftLayer_Hardware objects which have been allowed access to this storage will be listed in the allowedHardware property of this storage replica volume. 
         *
         * @see SoftLayer_Network_Storage_Iscsi::removeAccessToReplicantFromHardwareList
         */
        @ApiMethod(value = "removeAccessToReplicantFromHardwareList", instanceRequired = true)
        public Boolean removeAccessToReplicantFromHardwareListForIscsi(List hardwareObjectTemplates);

        /**
         * This method is used to modify the access control list for this Storage replica volume.  The SoftLayer_Network_Subnet_IpAddress objects which have been allowed access to this storage will be listed in the allowedIpAddresses property of this storage replica volume. 
         *
         * @see SoftLayer_Network_Storage_Iscsi::removeAccessToReplicantFromIpAddressList
         */
        @ApiMethod(value = "removeAccessToReplicantFromIpAddressList", instanceRequired = true)
        public Boolean removeAccessToReplicantFromIpAddressListForIscsi(List ipAddressObjectTemplates);

        /**
         * This method is used to modify the access control list for this Storage replica volume.  The SoftLayer_Virtual_Guest objects which have been allowed access to this storage will be listed in the allowedVirtualGuests property of this storage replica volume. 
         *
         * @see SoftLayer_Network_Storage_Iscsi::removeAccessToReplicantFromVirtualGuestList
         */
        @ApiMethod(value = "removeAccessToReplicantFromVirtualGuestList", instanceRequired = true)
        public Boolean removeAccessToReplicantFromVirtualGuestListForIscsi(List virtualGuestObjectTemplates);

    }

    public static interface ServiceAsync extends Storage.ServiceAsync {

        public Mask withNewMask();
        public Mask withMask();
        public void setMask(Mask mask);

        /**
         * Async version of {@link Service#allowAccessFromHardware}
         */
        public Future allowAccessFromHardware(Hardware hardwareObjectTemplate);

        public Future allowAccessFromHardware(Hardware hardwareObjectTemplate, ResponseHandler callback);

        /**
         * Async version of {@link Service#allowAccessFromIpAddress}
         */
        public Future allowAccessFromIpAddress(IpAddress ipAddressObjectTemplate);

        public Future allowAccessFromIpAddress(IpAddress ipAddressObjectTemplate, ResponseHandler callback);

        /**
         * Async version of {@link Service#allowAccessFromVirtualGuest}
         */
        public Future allowAccessFromVirtualGuest(Guest virtualGuestObjectTemplate);

        public Future allowAccessFromVirtualGuest(Guest virtualGuestObjectTemplate, ResponseHandler callback);

        /**
         * Async version of {@link Service#allowAccessToReplicantFromHardwareListForIscsi}
         */
        public Future allowAccessToReplicantFromHardwareListForIscsi(List hardwareObjectTemplates);

        public Future allowAccessToReplicantFromHardwareListForIscsi(List hardwareObjectTemplates, ResponseHandler callback);

        /**
         * Async version of {@link Service#allowAccessToReplicantFromIpAddressListForIscsi}
         */
        public Future allowAccessToReplicantFromIpAddressListForIscsi(List ipAddressObjectTemplates);

        public Future allowAccessToReplicantFromIpAddressListForIscsi(List ipAddressObjectTemplates, ResponseHandler callback);

        /**
         * Async version of {@link Service#allowAccessToReplicantFromVirtualGuestListForIscsi}
         */
        public Future allowAccessToReplicantFromVirtualGuestListForIscsi(List virtualGuestObjectTemplates);

        public Future allowAccessToReplicantFromVirtualGuestListForIscsi(List virtualGuestObjectTemplates, ResponseHandler callback);

        /**
         * Async version of {@link Service#createOrUpdateLunId}
         */
        public Future createOrUpdateLunId(Long lunId);

        public Future createOrUpdateLunId(Long lunId, ResponseHandler callback);

        /**
         * Async version of {@link Service#getObjectForIscsi}
         */
        public Future getObjectForIscsi();

        public Future getObjectForIscsi(ResponseHandler callback);

        /**
         * Async version of {@link Service#getSnapshotsForVolumeForIscsi}
         */
        public Future> getSnapshotsForVolumeForIscsi();

        public Future getSnapshotsForVolumeForIscsi(ResponseHandler> callback);

        /**
         * Async version of {@link Service#removeAccessFromHardware}
         */
        public Future removeAccessFromHardware(Hardware hardwareObjectTemplate);

        public Future removeAccessFromHardware(Hardware hardwareObjectTemplate, ResponseHandler callback);

        /**
         * Async version of {@link Service#removeAccessFromIpAddress}
         */
        public Future removeAccessFromIpAddress(IpAddress ipAddressObjectTemplate);

        public Future removeAccessFromIpAddress(IpAddress ipAddressObjectTemplate, ResponseHandler callback);

        /**
         * Async version of {@link Service#removeAccessFromVirtualGuest}
         */
        public Future removeAccessFromVirtualGuest(Guest virtualGuestObjectTemplate);

        public Future removeAccessFromVirtualGuest(Guest virtualGuestObjectTemplate, ResponseHandler callback);

        /**
         * Async version of {@link Service#removeAccessToReplicantFromHardwareListForIscsi}
         */
        public Future removeAccessToReplicantFromHardwareListForIscsi(List hardwareObjectTemplates);

        public Future removeAccessToReplicantFromHardwareListForIscsi(List hardwareObjectTemplates, ResponseHandler callback);

        /**
         * Async version of {@link Service#removeAccessToReplicantFromIpAddressListForIscsi}
         */
        public Future removeAccessToReplicantFromIpAddressListForIscsi(List ipAddressObjectTemplates);

        public Future removeAccessToReplicantFromIpAddressListForIscsi(List ipAddressObjectTemplates, ResponseHandler callback);

        /**
         * Async version of {@link Service#removeAccessToReplicantFromVirtualGuestListForIscsi}
         */
        public Future removeAccessToReplicantFromVirtualGuestListForIscsi(List virtualGuestObjectTemplates);

        public Future removeAccessToReplicantFromVirtualGuestListForIscsi(List virtualGuestObjectTemplates, ResponseHandler callback);

    }

    public static class Mask extends com.softlayer.api.service.network.Storage.Mask {

    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy