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

com.softlayer.api.service.network.Storage Maven / Gradle / Ivy

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

import com.softlayer.api.ApiClient;
import com.softlayer.api.ResponseHandler;
import com.softlayer.api.annotation.ApiMethod;
import com.softlayer.api.annotation.ApiProperty;
import com.softlayer.api.annotation.ApiType;
import com.softlayer.api.service.Account;
import com.softlayer.api.service.Hardware;
import com.softlayer.api.service.Location;
import com.softlayer.api.service.Notification;
import com.softlayer.api.service.account.Password;
import com.softlayer.api.service.billing.Item;
import com.softlayer.api.service.container.bandwidth.GraphOutputs;
import com.softlayer.api.service.container.network.storage.NetworkConnectionInformation;
import com.softlayer.api.service.container.network.storage.hub.objectstorage.Folder;
import com.softlayer.api.service.container.utility.file.Entity;
import com.softlayer.api.service.metric.tracking.Object;
import com.softlayer.api.service.network.Subnet;
import com.softlayer.api.service.network.service.Resource;
import com.softlayer.api.service.network.storage.Credential;
import com.softlayer.api.service.network.storage.Event;
import com.softlayer.api.service.network.storage.Group;
import com.softlayer.api.service.network.storage.History;
import com.softlayer.api.service.network.storage.Partnership;
import com.softlayer.api.service.network.storage.Property;
import com.softlayer.api.service.network.storage.Schedule;
import com.softlayer.api.service.network.storage.iscsi.os.Type;
import com.softlayer.api.service.network.subnet.IpAddress;
import com.softlayer.api.service.notification.user.Subscriber;
import com.softlayer.api.service.product.item.Category;
import com.softlayer.api.service.virtual.Guest;
import java.util.ArrayList;
import java.util.GregorianCalendar;
import java.util.List;
import java.util.concurrent.Future;

/**
 * The SoftLayer_Network_Storage data type contains general information regarding a Storage product such as account id, access username and password, the Storage product type, and the server the Storage service is associated with. Currently, only EVault backup storage has an associated server. 
 *
 * @see SoftLayer_Network_Storage
 */
@ApiType("SoftLayer_Network_Storage")
public class Storage extends com.softlayer.api.service.Entity {

    /**
     * The account that a Storage services belongs to.
     */
    @ApiProperty
    protected Account account;

    public Account getAccount() {
        return account;
    }

    public void setAccount(Account account) {
        this.account = account;
    }

    /**
     * Other usernames and passwords associated with a Storage volume.
     */
    @ApiProperty
    protected Password accountPassword;

    public Password getAccountPassword() {
        return accountPassword;
    }

    public void setAccountPassword(Password accountPassword) {
        this.accountPassword = accountPassword;
    }

    /**
     * The SoftLayer_Hardware objects which are allowed access to this storage volume.
     */
    @ApiProperty
    protected List allowedHardware;

    public List getAllowedHardware() {
        if (allowedHardware == null) {
            allowedHardware = new ArrayList();
        }
        return allowedHardware;
    }

    /**
     * The SoftLayer_Network_Subnet_IpAddress objects which are allowed access to this storage volume.
     */
    @ApiProperty
    protected List allowedIpAddresses;

    public List getAllowedIpAddresses() {
        if (allowedIpAddresses == null) {
            allowedIpAddresses = new ArrayList();
        }
        return allowedIpAddresses;
    }

    /**
     * The SoftLayer_Network_Subnet objects which are allowed access to this storage volume.
     */
    @ApiProperty
    protected List allowedSubnets;

    public List getAllowedSubnets() {
        if (allowedSubnets == null) {
            allowedSubnets = new ArrayList();
        }
        return allowedSubnets;
    }

    /**
     * The SoftLayer_Hardware objects which are allowed access to this storage volume.
     */
    @ApiProperty
    protected List allowedVirtualGuests;

    public List getAllowedVirtualGuests() {
        if (allowedVirtualGuests == null) {
            allowedVirtualGuests = new ArrayList();
        }
        return allowedVirtualGuests;
    }

    /**
     * The current billing item for a Storage volume.
     */
    @ApiProperty
    protected Item billingItem;

    public Item getBillingItem() {
        return billingItem;
    }

    public void setBillingItem(Item billingItem) {
        this.billingItem = billingItem;
    }

    @ApiProperty
    protected Category billingItemCategory;

    public Category getBillingItemCategory() {
        return billingItemCategory;
    }

    public void setBillingItemCategory(Category billingItemCategory) {
        this.billingItemCategory = billingItemCategory;
    }

    @ApiProperty
    protected List credentials;

    public List getCredentials() {
        if (credentials == null) {
            credentials = new ArrayList();
        }
        return credentials;
    }

    /**
     * The events which have taken place on a network storage volume.
     */
    @ApiProperty
    protected List events;

    public List getEvents() {
        if (events == null) {
            events = new ArrayList();
        }
        return events;
    }

    /**
     * When applicable, the hardware associated with a Storage service.
     */
    @ApiProperty
    protected Hardware hardware;

    public Hardware getHardware() {
        return hardware;
    }

    public void setHardware(Hardware hardware) {
        this.hardware = hardware;
    }

    /**
     * The maximum number of IOPs selected for this volume.
     */
    @ApiProperty
    protected String iops;

    public String getIops() {
        return iops;
    }

    public void setIops(String iops) {
        this.iops = iops;
    }

    /**
     * Relationship between a container volume and iSCSI LUNs.
     */
    @ApiProperty
    protected List iscsiLuns;

    public List getIscsiLuns() {
        if (iscsiLuns == null) {
            iscsiLuns = new ArrayList();
        }
        return iscsiLuns;
    }

    /**
     * A network storage volume's metric tracking object. This object records all periodic polled data available to this volume.
     */
    @ApiProperty
    protected Object metricTrackingObject;

    public Object getMetricTrackingObject() {
        return metricTrackingObject;
    }

    public void setMetricTrackingObject(Object metricTrackingObject) {
        this.metricTrackingObject = metricTrackingObject;
    }

    /**
     * Whether or not a network storage volume may be mounted.
     */
    @ApiProperty
    protected String mountableFlag;

    public String getMountableFlag() {
        return mountableFlag;
    }

    public void setMountableFlag(String mountableFlag) {
        this.mountableFlag = mountableFlag;
    }

    /**
     * The subscribers that will be notified for usage amount warnings and overages.
     */
    @ApiProperty
    protected List notificationSubscribers;

    public List getNotificationSubscribers() {
        if (notificationSubscribers == null) {
            notificationSubscribers = new ArrayList();
        }
        return notificationSubscribers;
    }

    /**
     * A volume's configured SoftLayer_Network_Storage_Iscsi_OS_Type ID.
     */
    @ApiProperty
    protected String osTypeId;

    public String getOsTypeId() {
        return osTypeId;
    }

    public void setOsTypeId(String osTypeId) {
        this.osTypeId = osTypeId;
    }

    /**
     * The volumes or snapshots partnered with a network storage volume in a parental role.
     */
    @ApiProperty
    protected List parentPartnerships;

    public List getParentPartnerships() {
        if (parentPartnerships == null) {
            parentPartnerships = new ArrayList();
        }
        return parentPartnerships;
    }

    /**
     * The volumes or snapshots partnered with a network storage volume.
     */
    @ApiProperty
    protected List partnerships;

    public List getPartnerships() {
        if (partnerships == null) {
            partnerships = new ArrayList();
        }
        return partnerships;
    }

    /**
     * The permissions group(s) this volume is in.
     */
    @ApiProperty
    protected List permissionsGroups;

    public List getPermissionsGroups() {
        if (permissionsGroups == null) {
            permissionsGroups = new ArrayList();
        }
        return permissionsGroups;
    }

    /**
     * The properties used to provide additional details about a network storage volume.
     */
    @ApiProperty
    protected List properties;

    public List getProperties() {
        if (properties == null) {
            properties = new ArrayList();
        }
        return properties;
    }

    /**
     * The network storage volumes configured to be replicants of a volume.
     */
    @ApiProperty
    protected List replicationPartners;

    public List getReplicationPartners() {
        if (replicationPartners == null) {
            replicationPartners = new ArrayList();
        }
        return replicationPartners;
    }

    /**
     * The schedules which are associated with a network storage volume.
     */
    @ApiProperty
    protected List schedules;

    public List getSchedules() {
        if (schedules == null) {
            schedules = new ArrayList();
        }
        return schedules;
    }

    /**
     * The network resource a Storage service is connected to.
     */
    @ApiProperty
    protected Resource serviceResource;

    public Resource getServiceResource() {
        return serviceResource;
    }

    public void setServiceResource(Resource serviceResource) {
        this.serviceResource = serviceResource;
    }

    /**
     * The IP address of a Storage resource.
     */
    @ApiProperty
    protected String serviceResourceBackendIpAddress;

    public String getServiceResourceBackendIpAddress() {
        return serviceResourceBackendIpAddress;
    }

    public void setServiceResourceBackendIpAddress(String serviceResourceBackendIpAddress) {
        this.serviceResourceBackendIpAddress = serviceResourceBackendIpAddress;
    }

    /**
     * The name of a Storage's network resource.
     */
    @ApiProperty
    protected String serviceResourceName;

    public String getServiceResourceName() {
        return serviceResourceName;
    }

    public void setServiceResourceName(String serviceResourceName) {
        this.serviceResourceName = serviceResourceName;
    }

    /**
     * A volume's configured snapshot space percentage.
     */
    @ApiProperty
    protected String snapshotPercentage;

    public String getSnapshotPercentage() {
        return snapshotPercentage;
    }

    public void setSnapshotPercentage(String snapshotPercentage) {
        this.snapshotPercentage = snapshotPercentage;
    }

    /**
     * A volume's available snapshot reservation space.
     */
    @ApiProperty
    protected String snapshotSpaceAvailable;

    public String getSnapshotSpaceAvailable() {
        return snapshotSpaceAvailable;
    }

    public void setSnapshotSpaceAvailable(String snapshotSpaceAvailable) {
        this.snapshotSpaceAvailable = snapshotSpaceAvailable;
    }

    /**
     * The network storage groups this volume is attached to.
     */
    @ApiProperty
    protected List storageGroups;

    public List getStorageGroups() {
        if (storageGroups == null) {
            storageGroups = new ArrayList();
        }
        return storageGroups;
    }

    /**
     * The usage notification for SL Storage services.
     */
    @ApiProperty
    protected Notification usageNotification;

    public Notification getUsageNotification() {
        return usageNotification;
    }

    public void setUsageNotification(Notification usageNotification) {
        this.usageNotification = usageNotification;
    }

    /**
     * The type of network storage service.
     */
    @ApiProperty
    protected String vendorName;

    public String getVendorName() {
        return vendorName;
    }

    public void setVendorName(String vendorName) {
        this.vendorName = vendorName;
    }

    /**
     * When applicable, the virtual guest associated with a Storage service.
     */
    @ApiProperty
    protected Guest virtualGuest;

    public Guest getVirtualGuest() {
        return virtualGuest;
    }

    public void setVirtualGuest(Guest virtualGuest) {
        this.virtualGuest = virtualGuest;
    }

    /**
     * The username and password history for a Storage service.
     */
    @ApiProperty
    protected List volumeHistory;

    public List getVolumeHistory() {
        if (volumeHistory == null) {
            volumeHistory = new ArrayList();
        }
        return volumeHistory;
    }

    /**
     * The account username and password for the EVault webCC interface.
     */
    @ApiProperty
    protected Password webccAccount;

    public Password getWebccAccount() {
        return webccAccount;
    }

    public void setWebccAccount(Password webccAccount) {
        this.webccAccount = webccAccount;
    }

    /**
     * The internal identifier of the SoftLayer customer account that a Storage account belongs to. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long accountId;

    public Long getAccountId() {
        return accountId;
    }

    public void setAccountId(Long accountId) {
        accountIdSpecified = true;
        this.accountId = accountId;
    }

    protected boolean accountIdSpecified;

    public boolean isAccountIdSpecified() {
        return accountIdSpecified;
    }

    public void unsetAccountId() {
        accountId = null;
        accountIdSpecified = false;
    }

    /**
     * A Storage account's capacity, measured in gigabytes. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long capacityGb;

    public Long getCapacityGb() {
        return capacityGb;
    }

    public void setCapacityGb(Long capacityGb) {
        capacityGbSpecified = true;
        this.capacityGb = capacityGb;
    }

    protected boolean capacityGbSpecified;

    public boolean isCapacityGbSpecified() {
        return capacityGbSpecified;
    }

    public void unsetCapacityGb() {
        capacityGb = null;
        capacityGbSpecified = false;
    }

    /**
     * The date a network storage volume was created.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected GregorianCalendar createDate;

    public GregorianCalendar getCreateDate() {
        return createDate;
    }

    public void setCreateDate(GregorianCalendar createDate) {
        createDateSpecified = true;
        this.createDate = createDate;
    }

    protected boolean createDateSpecified;

    public boolean isCreateDateSpecified() {
        return createDateSpecified;
    }

    public void unsetCreateDate() {
        createDate = null;
        createDateSpecified = false;
    }

    /**
     * The unique identification number of the guest associated with a Storage volume.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long guestId;

    public Long getGuestId() {
        return guestId;
    }

    public void setGuestId(Long guestId) {
        guestIdSpecified = true;
        this.guestId = guestId;
    }

    protected boolean guestIdSpecified;

    public boolean isGuestIdSpecified() {
        return guestIdSpecified;
    }

    public void unsetGuestId() {
        guestId = null;
        guestIdSpecified = false;
    }

    /**
     * The server that is associated with a Storage service. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long hardwareId;

    public Long getHardwareId() {
        return hardwareId;
    }

    public void setHardwareId(Long hardwareId) {
        hardwareIdSpecified = true;
        this.hardwareId = hardwareId;
    }

    protected boolean hardwareIdSpecified;

    public boolean isHardwareIdSpecified() {
        return hardwareIdSpecified;
    }

    public void unsetHardwareId() {
        hardwareId = null;
        hardwareIdSpecified = false;
    }

    /**
     * The unique identification number of the host associated with a Storage volume.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long hostId;

    public Long getHostId() {
        return hostId;
    }

    public void setHostId(Long hostId) {
        hostIdSpecified = true;
        this.hostId = hostId;
    }

    protected boolean hostIdSpecified;

    public boolean isHostIdSpecified() {
        return hostIdSpecified;
    }

    public void unsetHostId() {
        hostId = null;
        hostIdSpecified = false;
    }

    /**
     * A Storage account's unique identifier.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long id;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        idSpecified = true;
        this.id = id;
    }

    protected boolean idSpecified;

    public boolean isIdSpecified() {
        return idSpecified;
    }

    public void unsetId() {
        id = null;
        idSpecified = false;
    }

    /**
     * A Storage account's type. Valid examples are "NAS", "LOCKBOX", "ISCSI", "EVAULT", and "HUB". 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected String nasType;

    public String getNasType() {
        return nasType;
    }

    public void setNasType(String nasType) {
        nasTypeSpecified = true;
        this.nasType = nasType;
    }

    protected boolean nasTypeSpecified;

    public boolean isNasTypeSpecified() {
        return nasTypeSpecified;
    }

    public void unsetNasType() {
        nasType = null;
        nasTypeSpecified = false;
    }

    /**
     * Public notes related to a Storage volume. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected String notes;

    public String getNotes() {
        return notes;
    }

    public void setNotes(String notes) {
        notesSpecified = true;
        this.notes = notes;
    }

    protected boolean notesSpecified;

    public boolean isNotesSpecified() {
        return notesSpecified;
    }

    public void unsetNotes() {
        notes = null;
        notesSpecified = false;
    }

    /**
     * The password used to access a non-EVault Storage volume. This password is used to register the EVault server agent with the vault backup system. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected String password;

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        passwordSpecified = true;
        this.password = password;
    }

    protected boolean passwordSpecified;

    public boolean isPasswordSpecified() {
        return passwordSpecified;
    }

    public void unsetPassword() {
        password = null;
        passwordSpecified = false;
    }

    /**
     * Service Provider ID 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long serviceProviderId;

    public Long getServiceProviderId() {
        return serviceProviderId;
    }

    public void setServiceProviderId(Long serviceProviderId) {
        serviceProviderIdSpecified = true;
        this.serviceProviderId = serviceProviderId;
    }

    protected boolean serviceProviderIdSpecified;

    public boolean isServiceProviderIdSpecified() {
        return serviceProviderIdSpecified;
    }

    public void unsetServiceProviderId() {
        serviceProviderId = null;
        serviceProviderIdSpecified = false;
    }

    /**
     * This flag indicates whether this storage type is upgradable or not. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Boolean upgradableFlag;

    public Boolean getUpgradableFlag() {
        return upgradableFlag;
    }

    public void setUpgradableFlag(Boolean upgradableFlag) {
        upgradableFlagSpecified = true;
        this.upgradableFlag = upgradableFlag;
    }

    protected boolean upgradableFlagSpecified;

    public boolean isUpgradableFlagSpecified() {
        return upgradableFlagSpecified;
    }

    public void unsetUpgradableFlag() {
        upgradableFlag = null;
        upgradableFlagSpecified = false;
    }

    /**
     * The username used to access a non-EVault Storage volume. This username is used to register the EVault server agent with the vault backup system. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected String username;

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        usernameSpecified = true;
        this.username = username;
    }

    protected boolean usernameSpecified;

    public boolean isUsernameSpecified() {
        return usernameSpecified;
    }

    public void unsetUsername() {
        username = null;
        usernameSpecified = false;
    }

    /**
     * A count of the SoftLayer_Hardware objects which are allowed access to this storage volume.
     */
    @ApiProperty
    protected Long allowedHardwareCount;

    public Long getAllowedHardwareCount() {
        return allowedHardwareCount;
    }

    public void setAllowedHardwareCount(Long allowedHardwareCount) {
        this.allowedHardwareCount = allowedHardwareCount;
    }

    /**
     * A count of the SoftLayer_Network_Subnet_IpAddress objects which are allowed access to this storage volume.
     */
    @ApiProperty
    protected Long allowedIpAddressCount;

    public Long getAllowedIpAddressCount() {
        return allowedIpAddressCount;
    }

    public void setAllowedIpAddressCount(Long allowedIpAddressCount) {
        this.allowedIpAddressCount = allowedIpAddressCount;
    }

    /**
     * A count of the SoftLayer_Network_Subnet objects which are allowed access to this storage volume.
     */
    @ApiProperty
    protected Long allowedSubnetCount;

    public Long getAllowedSubnetCount() {
        return allowedSubnetCount;
    }

    public void setAllowedSubnetCount(Long allowedSubnetCount) {
        this.allowedSubnetCount = allowedSubnetCount;
    }

    /**
     * A count of the SoftLayer_Hardware objects which are allowed access to this storage volume.
     */
    @ApiProperty
    protected Long allowedVirtualGuestCount;

    public Long getAllowedVirtualGuestCount() {
        return allowedVirtualGuestCount;
    }

    public void setAllowedVirtualGuestCount(Long allowedVirtualGuestCount) {
        this.allowedVirtualGuestCount = allowedVirtualGuestCount;
    }

    /**
     * A count of 
     */
    @ApiProperty
    protected Long credentialCount;

    public Long getCredentialCount() {
        return credentialCount;
    }

    public void setCredentialCount(Long credentialCount) {
        this.credentialCount = credentialCount;
    }

    /**
     * A count of the events which have taken place on a network storage volume.
     */
    @ApiProperty
    protected Long eventCount;

    public Long getEventCount() {
        return eventCount;
    }

    public void setEventCount(Long eventCount) {
        this.eventCount = eventCount;
    }

    /**
     * A count of relationship between a container volume and iSCSI LUNs.
     */
    @ApiProperty
    protected Long iscsiLunCount;

    public Long getIscsiLunCount() {
        return iscsiLunCount;
    }

    public void setIscsiLunCount(Long iscsiLunCount) {
        this.iscsiLunCount = iscsiLunCount;
    }

    /**
     * A count of the subscribers that will be notified for usage amount warnings and overages.
     */
    @ApiProperty
    protected Long notificationSubscriberCount;

    public Long getNotificationSubscriberCount() {
        return notificationSubscriberCount;
    }

    public void setNotificationSubscriberCount(Long notificationSubscriberCount) {
        this.notificationSubscriberCount = notificationSubscriberCount;
    }

    /**
     * A count of the volumes or snapshots partnered with a network storage volume in a parental role.
     */
    @ApiProperty
    protected Long parentPartnershipCount;

    public Long getParentPartnershipCount() {
        return parentPartnershipCount;
    }

    public void setParentPartnershipCount(Long parentPartnershipCount) {
        this.parentPartnershipCount = parentPartnershipCount;
    }

    /**
     * A count of the volumes or snapshots partnered with a network storage volume.
     */
    @ApiProperty
    protected Long partnershipCount;

    public Long getPartnershipCount() {
        return partnershipCount;
    }

    public void setPartnershipCount(Long partnershipCount) {
        this.partnershipCount = partnershipCount;
    }

    /**
     * A count of the permissions group(s) this volume is in.
     */
    @ApiProperty
    protected Long permissionsGroupCount;

    public Long getPermissionsGroupCount() {
        return permissionsGroupCount;
    }

    public void setPermissionsGroupCount(Long permissionsGroupCount) {
        this.permissionsGroupCount = permissionsGroupCount;
    }

    /**
     * A count of the properties used to provide additional details about a network storage volume.
     */
    @ApiProperty
    protected Long propertyCount;

    public Long getPropertyCount() {
        return propertyCount;
    }

    public void setPropertyCount(Long propertyCount) {
        this.propertyCount = propertyCount;
    }

    /**
     * A count of the network storage volumes configured to be replicants of a volume.
     */
    @ApiProperty
    protected Long replicationPartnerCount;

    public Long getReplicationPartnerCount() {
        return replicationPartnerCount;
    }

    public void setReplicationPartnerCount(Long replicationPartnerCount) {
        this.replicationPartnerCount = replicationPartnerCount;
    }

    /**
     * A count of the schedules which are associated with a network storage volume.
     */
    @ApiProperty
    protected Long scheduleCount;

    public Long getScheduleCount() {
        return scheduleCount;
    }

    public void setScheduleCount(Long scheduleCount) {
        this.scheduleCount = scheduleCount;
    }

    /**
     * A count of the network storage groups this volume is attached to.
     */
    @ApiProperty
    protected Long storageGroupCount;

    public Long getStorageGroupCount() {
        return storageGroupCount;
    }

    public void setStorageGroupCount(Long storageGroupCount) {
        this.storageGroupCount = storageGroupCount;
    }

    /**
     * A count of the username and password history for a Storage service.
     */
    @ApiProperty
    protected Long volumeHistoryCount;

    public Long getVolumeHistoryCount() {
        return volumeHistoryCount;
    }

    public void setVolumeHistoryCount(Long volumeHistoryCount) {
        this.volumeHistoryCount = volumeHistoryCount;
    }

    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 customers may have a Storage volume associated with their account. Storage types include NAS, Lockbox, iSCSI, EVault backup, and Hub cloud storage. Information such as the account the Storage volume is associated to, username and password to access the Storage volume, related server (EVault only) and the capacity used are some of the details that may be retrieved using this service. Information regarding the Storage's resource that is useful in reconfiguring and mounting a StorageLayer volume may also be retrieved from this service. 
*
* For the EVault Storage services, the username and passwords in the SoftLayer_Network_Storage services are used to register the EVault server agent with the vault. Please see the [[SoftLayer_Account_Password]] service to edit the passwords and notes for the EVault Webcc tool. * * @see SoftLayer_Network_Storage */ @com.softlayer.api.annotation.ApiService("SoftLayer_Network_Storage") public static interface Service extends com.softlayer.api.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::allowAccessFromHardware */ @ApiMethod(instanceRequired = true) public Boolean allowAccessFromHardware(Hardware hardwareObjectTemplate); /** * @see SoftLayer_Network_Storage::allowAccessFromHardwareList */ @ApiMethod(instanceRequired = true) public Boolean allowAccessFromHardwareList(List hardwareObjectTemplates); /** * @see SoftLayer_Network_Storage::allowAccessFromIpAddress */ @ApiMethod(instanceRequired = true) public Boolean allowAccessFromIpAddress(IpAddress ipAddressObjectTemplate); /** * @see SoftLayer_Network_Storage::allowAccessFromIpAddressList */ @ApiMethod(instanceRequired = true) public Boolean allowAccessFromIpAddressList(List ipAddressObjectTemplates); /** * 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::allowAccessFromSubnet */ @ApiMethod(instanceRequired = true) public Boolean allowAccessFromSubnet(Subnet subnetObjectTemplate); /** * @see SoftLayer_Network_Storage::allowAccessFromSubnetList */ @ApiMethod(instanceRequired = true) public Boolean allowAccessFromSubnetList(List subnetObjectTemplates); /** * 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::allowAccessFromVirtualGuest */ @ApiMethod(instanceRequired = true) public Boolean allowAccessFromVirtualGuest(Guest virtualGuestObjectTemplate); /** * 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::allowAccessFromVirtualGuestList */ @ApiMethod(instanceRequired = true) public Boolean allowAccessFromVirtualGuestList(List virtualGuestObjectTemplates); /** * This method will assign an existing credential to the current volume. The credential must have been created using the 'addNewCredential' method. The volume type must support an additional credential. * * @see SoftLayer_Network_Storage::assignCredential */ @ApiMethod(instanceRequired = true) public Boolean assignCredential(String username); /** * This method will set up a new credential for the remote storage volume. The storage volume must support an additional credential. Once created, the credential will be automatically assigned to the current volume. If there are no volumes assigned to the credential it will be automatically deleted. * * @see SoftLayer_Network_Storage::assignNewCredential */ @ApiMethod(instanceRequired = true) public Credential assignNewCredential(String type); /** * The method will change the password for the given Storage/Virtual Server Storage account. * * @see SoftLayer_Network_Storage::changePassword */ @ApiMethod public Boolean changePassword(String username, String currentPassword, String newPassword); /** * {{CloudLayerOnlyMethod}}
*
* collectBandwidth() Retrieve the bandwidth usage for the current billing cycle. * * @see SoftLayer_Network_Storage::collectBandwidth */ @ApiMethod(instanceRequired = true) public Long collectBandwidth(String type, GregorianCalendar startDate, GregorianCalendar endDate); /** * {{CloudLayerOnlyMethod}}
*
* collectBytesUsed() retrieves the number of bytes capacity currently in use on a Storage account. * * @see SoftLayer_Network_Storage::collectBytesUsed */ @ApiMethod(instanceRequired = true) public Long collectBytesUsed(); /** * @see SoftLayer_Network_Storage::createFolder */ @ApiMethod(instanceRequired = true) public Boolean createFolder(String folder); /** * Create a new snapshot of the data on the network storage volume. * * @see SoftLayer_Network_Storage::createSnapshot */ @ApiMethod(instanceRequired = true) public Storage createSnapshot(String notes); /** * {{CloudLayerOnlyMethod}} Delete all files within a Storage account. Depending on the type of Storage account, Deleting either deletes files permanently or sends files to your account's recycle bin.
*
* Currently, Virtual Server storage is the only type of Storage account that sends files to a recycle bin when deleted. When called against a Virtual Server storage account , this method also determines if the files are in the account's recycle bin. If the files exist in the recycle bin, then they are permanently deleted.
*
* Please note, files can not be restored once they are permanently deleted. * * @see SoftLayer_Network_Storage::deleteAllFiles */ @ApiMethod(instanceRequired = true) public Boolean deleteAllFiles(); /** * {{CloudLayerOnlyMethod}} Delete an individual file within a Storage account. Depending on the type of Storage account, Deleting a file either deletes the file permanently or sends the file to your account's recycle bin.
*
* Currently, Virtual Server storage is the only type of Storage account that sends files to a recycle bin when deleted. When called against a Virtual Server storage account , this method also determines if the file is in the account's recycle bin. If the file exist in the recycle bin, then it is permanently deleted.
*
* Please note, a file can not be restored once it is permanently deleted. * * @see SoftLayer_Network_Storage::deleteFile */ @ApiMethod(instanceRequired = true) public Boolean deleteFile(String fileId); /** * {{CloudLayerOnlyMethod}} Delete multiple files within a Storage account. Depending on the type of Storage account, Deleting either deletes files permanently or sends files to your account's recycle bin.
*
* Currently, Virtual Server storage is the only type of Storage account that sends files to a recycle bin when deleted. When called against a Virtual Server storage account , this method also determines if the files are in the account's recycle bin. If the files exist in the recycle bin, then they are permanently deleted.
*
* Please note, files can not be restored once they are permanently deleted. * * @see SoftLayer_Network_Storage::deleteFiles */ @ApiMethod(instanceRequired = true) public Boolean deleteFiles(List fileIds); /** * @see SoftLayer_Network_Storage::deleteFolder */ @ApiMethod(instanceRequired = true) public Boolean deleteFolder(String folder); /** * Delete a network storage volume. '''This cannot be undone.''' At this time only network storage snapshots may be deleted with this method.
*
* ''deleteObject'' returns Boolean ''true'' on successful deletion or ''false'' if it was unable to remove a volume; * * @see SoftLayer_Network_Storage::deleteObject */ @ApiMethod(instanceRequired = true) public Boolean deleteObject(); /** * {{CloudLayerOnlyMethod}} Download a file from a Storage account. This method returns a file's details including the file's raw content. * * @see SoftLayer_Network_Storage::downloadFile */ @ApiMethod(instanceRequired = true) public Entity downloadFile(String fileId); /** * This method will change the password of a credential created using the 'addNewCredential' method. If the credential exists on multiple storage volumes it will change for those volumes as well. * * @see SoftLayer_Network_Storage::editCredential */ @ApiMethod(instanceRequired = true) public Boolean editCredential(String username, String newPassword); /** * The password and/or notes may be modified for the Storage service except evault passwords and notes. * * @see SoftLayer_Network_Storage::editObject */ @ApiMethod(instanceRequired = true) public Boolean editObject(Storage templateObject); /** * Failback from a volume replicant. In order to failback the volume must have already been failed over to a replicant. * * @see SoftLayer_Network_Storage::failbackFromReplicant */ @ApiMethod(instanceRequired = true) public Boolean failbackFromReplicant(); /** * Failover to a volume replicant. During the time which the replicant is in use the local nas volume will not be available. * * @see SoftLayer_Network_Storage::failoverToReplicant */ @ApiMethod(instanceRequired = true) public Boolean failoverToReplicant(Long replicantId); /** * {{CloudLayerOnlyMethod}} Retrieve details such as id, name, size, create date for all files in a Storage account's root directory. This does not download file content. * * @see SoftLayer_Network_Storage::getAllFiles */ @ApiMethod(instanceRequired = true) public List getAllFiles(); /** * {{CloudLayerOnlyMethod}} Retrieve details such as id, name, size, create date for all files matching the filter's criteria in a Storage account's root directory. This does not download file content. * * @see SoftLayer_Network_Storage::getAllFilesByFilter */ @ApiMethod(instanceRequired = true) public List getAllFilesByFilter(Entity filter); /** * Retrieve network storage accounts by username and storage account type. Use this method if you wish to retrieve a storage record by username rather than by id. The ''type'' parameter must correspond to one of the available ''nasType'' values in the SoftLayer_Network_Storage data type. * * @see SoftLayer_Network_Storage::getByUsername */ @ApiMethod public List getByUsername(String username, String type); /** * @see SoftLayer_Network_Storage::getClusterResource */ @ApiMethod(instanceRequired = true) public Resource getClusterResource(); /** * {{CloudLayerOnlyMethod}} Retrieve details such as id, name, size, create date of a file within a Storage account. This does not download file content. * * @see SoftLayer_Network_Storage::getFileByIdentifier */ @ApiMethod(instanceRequired = true) public Entity getFileByIdentifier(String identifier); /** * {{CloudLayerOnlyMethod}} Retrieve the file number of files in a Virtual Server Storage account's root directory. This does not include the files stored in the recycle bin. * * @see SoftLayer_Network_Storage::getFileCount */ @ApiMethod(instanceRequired = true) public Long getFileCount(); /** * @see SoftLayer_Network_Storage::getFileList */ @ApiMethod(instanceRequired = true) public List getFileList(String folder, String path); /** * {{CloudLayerOnlyMethod}} Retrieve the number of files pending deletion in a Storage account's recycle bin. Files in an account's recycle bin may either be restored to the account's root directory or permanently deleted. * * @see SoftLayer_Network_Storage::getFilePendingDeleteCount */ @ApiMethod(instanceRequired = true) public Long getFilePendingDeleteCount(); /** * {{CloudLayerOnlyMethod}} Retrieve a list of files that are pending deletion in a Storage account's recycle bin. Files in an account's recycle bin may either be restored to the account's root directory or permanently deleted. This method does not download file content. * * @see SoftLayer_Network_Storage::getFilesPendingDelete */ @ApiMethod(instanceRequired = true) public List getFilesPendingDelete(); /** * @see SoftLayer_Network_Storage::getFolderList */ @ApiMethod(instanceRequired = true) public List getFolderList(); /** * {{CloudLayerOnlyMethod}}
*
* getGraph() retrieves a Storage account's usage and returns a PNG graph image, title, and the minimum and maximum dates included in the graphed date range. Virtual Server storage accounts can also graph upload and download bandwidth usage. * * @see SoftLayer_Network_Storage::getGraph */ @ApiMethod(instanceRequired = true) public GraphOutputs getGraph(GregorianCalendar startDate, GregorianCalendar endDate, String type); /** * @see SoftLayer_Network_Storage::getNetworkConnectionDetails */ @ApiMethod(instanceRequired = true) public NetworkConnectionInformation getNetworkConnectionDetails(); /** * getObject retrieves the SoftLayer_Network_Storage object whose ID corresponds to the ID number of the init parameter passed to the SoftLayer_Network_Storage service.
*
* Please use the associated methods in the [[SoftLayer_Network_Storage]] service to retrieve a Storage account's id. * * @see SoftLayer_Network_Storage::getObject */ @ApiMethod(instanceRequired = true) public Storage getObject(); /** * Retrieve network storage accounts by SoftLayer_Network_Storage_Credential object. Use this method if you wish to retrieve a storage record by a credential rather than by id. * * @see SoftLayer_Network_Storage::getObjectsByCredential */ @ApiMethod public List getObjectsByCredential(Credential credentialObject); /** * @see SoftLayer_Network_Storage::getOsType */ @ApiMethod(instanceRequired = true) public Type getOsType(); /** * {{CloudLayerOnlyMethod}} Retrieve the details of a file that is pending deletion in a Storage account's a recycle bin. * * @see SoftLayer_Network_Storage::getRecycleBinFileByIdentifier */ @ApiMethod(instanceRequired = true) public Entity getRecycleBinFileByIdentifier(String fileId); /** * @see SoftLayer_Network_Storage::getStorageGroupsNetworkConnectionDetails */ @ApiMethod(instanceRequired = true) public List getStorageGroupsNetworkConnectionDetails(); /** * @see SoftLayer_Network_Storage::getValidReplicationTargetDatacenterLocations */ @ApiMethod(instanceRequired = true) public List getValidReplicationTargetDatacenterLocations(); /** * 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::removeAccessFromHardware */ @ApiMethod(instanceRequired = true) public Boolean removeAccessFromHardware(Hardware hardwareObjectTemplate); /** * 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::removeAccessFromHardwareList */ @ApiMethod(instanceRequired = true) public Boolean removeAccessFromHardwareList(List hardwareObjectTemplates); /** * @see SoftLayer_Network_Storage::removeAccessFromIpAddress */ @ApiMethod(instanceRequired = true) public Boolean removeAccessFromIpAddress(IpAddress ipAddressObjectTemplate); /** * @see SoftLayer_Network_Storage::removeAccessFromIpAddressList */ @ApiMethod(instanceRequired = true) public Boolean removeAccessFromIpAddressList(List ipAddressObjectTemplates); /** * @see SoftLayer_Network_Storage::removeAccessFromSubnet */ @ApiMethod(instanceRequired = true) public Boolean removeAccessFromSubnet(Subnet subnetObjectTemplate); /** * @see SoftLayer_Network_Storage::removeAccessFromSubnetList */ @ApiMethod(instanceRequired = true) public Boolean removeAccessFromSubnetList(List subnetObjectTemplates); /** * 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::removeAccessFromVirtualGuest */ @ApiMethod(instanceRequired = true) public Boolean removeAccessFromVirtualGuest(Guest virtualGuestObjectTemplate); /** * 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::removeAccessFromVirtualGuestList */ @ApiMethod(instanceRequired = true) public Boolean removeAccessFromVirtualGuestList(List virtualGuestObjectTemplates); /** * This method will remove a credential from the current volume. The credential must have been created using the 'addNewCredential' method. * * @see SoftLayer_Network_Storage::removeCredential */ @ApiMethod(instanceRequired = true) public Boolean removeCredential(String username); /** * {{CloudLayerOnlyMethod}} Restore an individual file so that it may be used as it was before it was deleted.
*
* If a file is deleted from a Virtual Server Storage account, the file is placed into the account's recycle bin and not permanently deleted. Therefore, restoreFile can be used to place the file back into your Virtual Server account's root directory. * * @see SoftLayer_Network_Storage::restoreFile */ @ApiMethod(instanceRequired = true) public Entity restoreFile(String fileId); /** * Restore the volume from a snapshot that was previously taken. * * @see SoftLayer_Network_Storage::restoreFromSnapshot */ @ApiMethod(instanceRequired = true) public Boolean restoreFromSnapshot(Long snapshotId); /** * The method will retrieve the password for the StorageLayer or Virtual Server Storage Account and email the password. The Storage Account passwords will be emailed to the master user. For Virtual Server Storage, the password will be sent to the email address used as the username. * * @see SoftLayer_Network_Storage::sendPasswordReminderEmail */ @ApiMethod public Boolean sendPasswordReminderEmail(String username); /** * Enable or disable the mounting of a Storage volume. When mounting is enabled the Storage volume will be mountable or available for use.
*
* For Virtual Server volumes, disabling mounting will deny access to the Virtual Server Account, remove published material and deny all file interaction including uploads and downloads.
*
* Enabling or disabling mounting for Storage volumes is not possible if mounting has been disabled by SoftLayer or a parent account. * * @see SoftLayer_Network_Storage::setMountable */ @ApiMethod(instanceRequired = true) public Boolean setMountable(Boolean mountable); /** * @see SoftLayer_Network_Storage::setSnapshotAllocation */ @ApiMethod(instanceRequired = true) public Void setSnapshotAllocation(Long capacityGb); /** * Upgrade the Storage volume to one of the upgradable packages (for example from 10 Gigs of EVault storage to 100 Gigs of EVault storage). * * @see SoftLayer_Network_Storage::upgradeVolumeCapacity */ @ApiMethod(instanceRequired = true) public Boolean upgradeVolumeCapacity(Long itemId); /** * {{CloudLayerOnlyMethod}} Upload a file to a Storage account's root directory. Once uploaded, this method returns new file entity identifier for the upload file.
*
* The following properties are required in the ''file'' parameter.
* *'''name''': The name of the file you wish to upload
* *'''content''': The raw contents of the file you wish to upload.
* *'''contentType''': The MIME-type of content that you wish to upload. * * @see SoftLayer_Network_Storage::uploadFile */ @ApiMethod(instanceRequired = true) public Entity uploadFile(Entity file); /** * The account that a Storage services belongs to. * * @see SoftLayer_Network_Storage::getAccount */ @ApiMethod(instanceRequired = true) public Account getAccount(); /** * Other usernames and passwords associated with a Storage volume. * * @see SoftLayer_Network_Storage::getAccountPassword */ @ApiMethod(instanceRequired = true) public Password getAccountPassword(); /** * The SoftLayer_Hardware objects which are allowed access to this storage volume. * * @see SoftLayer_Network_Storage::getAllowedHardware */ @ApiMethod(instanceRequired = true) public List getAllowedHardware(); /** * The SoftLayer_Network_Subnet_IpAddress objects which are allowed access to this storage volume. * * @see SoftLayer_Network_Storage::getAllowedIpAddresses */ @ApiMethod(instanceRequired = true) public List getAllowedIpAddresses(); /** * The SoftLayer_Network_Subnet objects which are allowed access to this storage volume. * * @see SoftLayer_Network_Storage::getAllowedSubnets */ @ApiMethod(instanceRequired = true) public List getAllowedSubnets(); /** * The SoftLayer_Hardware objects which are allowed access to this storage volume. * * @see SoftLayer_Network_Storage::getAllowedVirtualGuests */ @ApiMethod(instanceRequired = true) public List getAllowedVirtualGuests(); /** * The current billing item for a Storage volume. * * @see SoftLayer_Network_Storage::getBillingItem */ @ApiMethod(instanceRequired = true) public Item getBillingItem(); /** * @see SoftLayer_Network_Storage::getBillingItemCategory */ @ApiMethod(instanceRequired = true) public Category getBillingItemCategory(); /** * @see SoftLayer_Network_Storage::getCredentials */ @ApiMethod(instanceRequired = true) public List getCredentials(); /** * The events which have taken place on a network storage volume. * * @see SoftLayer_Network_Storage::getEvents */ @ApiMethod(instanceRequired = true) public List getEvents(); /** * When applicable, the hardware associated with a Storage service. * * @see SoftLayer_Network_Storage::getHardware */ @ApiMethod(instanceRequired = true) public Hardware getHardware(); /** * The maximum number of IOPs selected for this volume. * * @see SoftLayer_Network_Storage::getIops */ @ApiMethod(instanceRequired = true) public String getIops(); /** * Relationship between a container volume and iSCSI LUNs. * * @see SoftLayer_Network_Storage::getIscsiLuns */ @ApiMethod(instanceRequired = true) public List getIscsiLuns(); /** * A network storage volume's metric tracking object. This object records all periodic polled data available to this volume. * * @see SoftLayer_Network_Storage::getMetricTrackingObject */ @ApiMethod(instanceRequired = true) public Object getMetricTrackingObject(); /** * Whether or not a network storage volume may be mounted. * * @see SoftLayer_Network_Storage::getMountableFlag */ @ApiMethod(instanceRequired = true) public String getMountableFlag(); /** * The subscribers that will be notified for usage amount warnings and overages. * * @see SoftLayer_Network_Storage::getNotificationSubscribers */ @ApiMethod(instanceRequired = true) public List getNotificationSubscribers(); /** * A volume's configured SoftLayer_Network_Storage_Iscsi_OS_Type ID. * * @see SoftLayer_Network_Storage::getOsTypeId */ @ApiMethod(instanceRequired = true) public String getOsTypeId(); /** * The volumes or snapshots partnered with a network storage volume in a parental role. * * @see SoftLayer_Network_Storage::getParentPartnerships */ @ApiMethod(instanceRequired = true) public List getParentPartnerships(); /** * The volumes or snapshots partnered with a network storage volume. * * @see SoftLayer_Network_Storage::getPartnerships */ @ApiMethod(instanceRequired = true) public List getPartnerships(); /** * The permissions group(s) this volume is in. * * @see SoftLayer_Network_Storage::getPermissionsGroups */ @ApiMethod(instanceRequired = true) public List getPermissionsGroups(); /** * The properties used to provide additional details about a network storage volume. * * @see SoftLayer_Network_Storage::getProperties */ @ApiMethod(instanceRequired = true) public List getProperties(); /** * The network storage volumes configured to be replicants of a volume. * * @see SoftLayer_Network_Storage::getReplicationPartners */ @ApiMethod(instanceRequired = true) public List getReplicationPartners(); /** * The schedules which are associated with a network storage volume. * * @see SoftLayer_Network_Storage::getSchedules */ @ApiMethod(instanceRequired = true) public List getSchedules(); /** * The network resource a Storage service is connected to. * * @see SoftLayer_Network_Storage::getServiceResource */ @ApiMethod(instanceRequired = true) public Resource getServiceResource(); /** * The IP address of a Storage resource. * * @see SoftLayer_Network_Storage::getServiceResourceBackendIpAddress */ @ApiMethod(instanceRequired = true) public String getServiceResourceBackendIpAddress(); /** * The name of a Storage's network resource. * * @see SoftLayer_Network_Storage::getServiceResourceName */ @ApiMethod(instanceRequired = true) public String getServiceResourceName(); /** * A volume's configured snapshot space percentage. * * @see SoftLayer_Network_Storage::getSnapshotPercentage */ @ApiMethod(instanceRequired = true) public String getSnapshotPercentage(); /** * A volume's available snapshot reservation space. * * @see SoftLayer_Network_Storage::getSnapshotSpaceAvailable */ @ApiMethod(instanceRequired = true) public String getSnapshotSpaceAvailable(); /** * The network storage groups this volume is attached to. * * @see SoftLayer_Network_Storage::getStorageGroups */ @ApiMethod(instanceRequired = true) public List getStorageGroups(); /** * The usage notification for SL Storage services. * * @see SoftLayer_Network_Storage::getUsageNotification */ @ApiMethod(instanceRequired = true) public Notification getUsageNotification(); /** * The type of network storage service. * * @see SoftLayer_Network_Storage::getVendorName */ @ApiMethod(instanceRequired = true) public String getVendorName(); /** * When applicable, the virtual guest associated with a Storage service. * * @see SoftLayer_Network_Storage::getVirtualGuest */ @ApiMethod(instanceRequired = true) public Guest getVirtualGuest(); /** * The username and password history for a Storage service. * * @see SoftLayer_Network_Storage::getVolumeHistory */ @ApiMethod(instanceRequired = true) public List getVolumeHistory(); /** * The account username and password for the EVault webCC interface. * * @see SoftLayer_Network_Storage::getWebccAccount */ @ApiMethod(instanceRequired = true) public Password getWebccAccount(); } public static interface ServiceAsync extends com.softlayer.api.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#allowAccessFromHardwareList} */ public Future allowAccessFromHardwareList(List hardwareObjectTemplates); public Future allowAccessFromHardwareList(List hardwareObjectTemplates, 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#allowAccessFromIpAddressList} */ public Future allowAccessFromIpAddressList(List ipAddressObjectTemplates); public Future allowAccessFromIpAddressList(List ipAddressObjectTemplates, ResponseHandler callback); /** * Async version of {@link Service#allowAccessFromSubnet} */ public Future allowAccessFromSubnet(Subnet subnetObjectTemplate); public Future allowAccessFromSubnet(Subnet subnetObjectTemplate, ResponseHandler callback); /** * Async version of {@link Service#allowAccessFromSubnetList} */ public Future allowAccessFromSubnetList(List subnetObjectTemplates); public Future allowAccessFromSubnetList(List subnetObjectTemplates, 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#allowAccessFromVirtualGuestList} */ public Future allowAccessFromVirtualGuestList(List virtualGuestObjectTemplates); public Future allowAccessFromVirtualGuestList(List virtualGuestObjectTemplates, ResponseHandler callback); /** * Async version of {@link Service#assignCredential} */ public Future assignCredential(String username); public Future assignCredential(String username, ResponseHandler callback); /** * Async version of {@link Service#assignNewCredential} */ public Future assignNewCredential(String type); public Future assignNewCredential(String type, ResponseHandler callback); /** * Async version of {@link Service#changePassword} */ public Future changePassword(String username, String currentPassword, String newPassword); public Future changePassword(String username, String currentPassword, String newPassword, ResponseHandler callback); /** * Async version of {@link Service#collectBandwidth} */ public Future collectBandwidth(String type, GregorianCalendar startDate, GregorianCalendar endDate); public Future collectBandwidth(String type, GregorianCalendar startDate, GregorianCalendar endDate, ResponseHandler callback); /** * Async version of {@link Service#collectBytesUsed} */ public Future collectBytesUsed(); public Future collectBytesUsed(ResponseHandler callback); /** * Async version of {@link Service#createFolder} */ public Future createFolder(String folder); public Future createFolder(String folder, ResponseHandler callback); /** * Async version of {@link Service#createSnapshot} */ public Future createSnapshot(String notes); public Future createSnapshot(String notes, ResponseHandler callback); /** * Async version of {@link Service#deleteAllFiles} */ public Future deleteAllFiles(); public Future deleteAllFiles(ResponseHandler callback); /** * Async version of {@link Service#deleteFile} */ public Future deleteFile(String fileId); public Future deleteFile(String fileId, ResponseHandler callback); /** * Async version of {@link Service#deleteFiles} */ public Future deleteFiles(List fileIds); public Future deleteFiles(List fileIds, ResponseHandler callback); /** * Async version of {@link Service#deleteFolder} */ public Future deleteFolder(String folder); public Future deleteFolder(String folder, ResponseHandler callback); /** * Async version of {@link Service#deleteObject} */ public Future deleteObject(); public Future deleteObject(ResponseHandler callback); /** * Async version of {@link Service#downloadFile} */ public Future downloadFile(String fileId); public Future downloadFile(String fileId, ResponseHandler callback); /** * Async version of {@link Service#editCredential} */ public Future editCredential(String username, String newPassword); public Future editCredential(String username, String newPassword, ResponseHandler callback); /** * Async version of {@link Service#editObject} */ public Future editObject(Storage templateObject); public Future editObject(Storage templateObject, ResponseHandler callback); /** * Async version of {@link Service#failbackFromReplicant} */ public Future failbackFromReplicant(); public Future failbackFromReplicant(ResponseHandler callback); /** * Async version of {@link Service#failoverToReplicant} */ public Future failoverToReplicant(Long replicantId); public Future failoverToReplicant(Long replicantId, ResponseHandler callback); /** * Async version of {@link Service#getAllFiles} */ public Future> getAllFiles(); public Future getAllFiles(ResponseHandler> callback); /** * Async version of {@link Service#getAllFilesByFilter} */ public Future> getAllFilesByFilter(Entity filter); public Future getAllFilesByFilter(Entity filter, ResponseHandler> callback); /** * Async version of {@link Service#getByUsername} */ public Future> getByUsername(String username, String type); public Future getByUsername(String username, String type, ResponseHandler> callback); /** * Async version of {@link Service#getClusterResource} */ public Future getClusterResource(); public Future getClusterResource(ResponseHandler callback); /** * Async version of {@link Service#getFileByIdentifier} */ public Future getFileByIdentifier(String identifier); public Future getFileByIdentifier(String identifier, ResponseHandler callback); /** * Async version of {@link Service#getFileCount} */ public Future getFileCount(); public Future getFileCount(ResponseHandler callback); /** * Async version of {@link Service#getFileList} */ public Future> getFileList(String folder, String path); public Future getFileList(String folder, String path, ResponseHandler> callback); /** * Async version of {@link Service#getFilePendingDeleteCount} */ public Future getFilePendingDeleteCount(); public Future getFilePendingDeleteCount(ResponseHandler callback); /** * Async version of {@link Service#getFilesPendingDelete} */ public Future> getFilesPendingDelete(); public Future getFilesPendingDelete(ResponseHandler> callback); /** * Async version of {@link Service#getFolderList} */ public Future> getFolderList(); public Future getFolderList(ResponseHandler> callback); /** * Async version of {@link Service#getGraph} */ public Future getGraph(GregorianCalendar startDate, GregorianCalendar endDate, String type); public Future getGraph(GregorianCalendar startDate, GregorianCalendar endDate, String type, ResponseHandler callback); /** * Async version of {@link Service#getNetworkConnectionDetails} */ public Future getNetworkConnectionDetails(); public Future getNetworkConnectionDetails(ResponseHandler callback); /** * Async version of {@link Service#getObject} */ public Future getObject(); public Future getObject(ResponseHandler callback); /** * Async version of {@link Service#getObjectsByCredential} */ public Future> getObjectsByCredential(Credential credentialObject); public Future getObjectsByCredential(Credential credentialObject, ResponseHandler> callback); /** * Async version of {@link Service#getOsType} */ public Future getOsType(); public Future getOsType(ResponseHandler callback); /** * Async version of {@link Service#getRecycleBinFileByIdentifier} */ public Future getRecycleBinFileByIdentifier(String fileId); public Future getRecycleBinFileByIdentifier(String fileId, ResponseHandler callback); /** * Async version of {@link Service#getStorageGroupsNetworkConnectionDetails} */ public Future> getStorageGroupsNetworkConnectionDetails(); public Future getStorageGroupsNetworkConnectionDetails(ResponseHandler> callback); /** * Async version of {@link Service#getValidReplicationTargetDatacenterLocations} */ public Future> getValidReplicationTargetDatacenterLocations(); public Future getValidReplicationTargetDatacenterLocations(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#removeAccessFromHardwareList} */ public Future removeAccessFromHardwareList(List hardwareObjectTemplates); public Future removeAccessFromHardwareList(List hardwareObjectTemplates, 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#removeAccessFromIpAddressList} */ public Future removeAccessFromIpAddressList(List ipAddressObjectTemplates); public Future removeAccessFromIpAddressList(List ipAddressObjectTemplates, ResponseHandler callback); /** * Async version of {@link Service#removeAccessFromSubnet} */ public Future removeAccessFromSubnet(Subnet subnetObjectTemplate); public Future removeAccessFromSubnet(Subnet subnetObjectTemplate, ResponseHandler callback); /** * Async version of {@link Service#removeAccessFromSubnetList} */ public Future removeAccessFromSubnetList(List subnetObjectTemplates); public Future removeAccessFromSubnetList(List subnetObjectTemplates, 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#removeAccessFromVirtualGuestList} */ public Future removeAccessFromVirtualGuestList(List virtualGuestObjectTemplates); public Future removeAccessFromVirtualGuestList(List virtualGuestObjectTemplates, ResponseHandler callback); /** * Async version of {@link Service#removeCredential} */ public Future removeCredential(String username); public Future removeCredential(String username, ResponseHandler callback); /** * Async version of {@link Service#restoreFile} */ public Future restoreFile(String fileId); public Future restoreFile(String fileId, ResponseHandler callback); /** * Async version of {@link Service#restoreFromSnapshot} */ public Future restoreFromSnapshot(Long snapshotId); public Future restoreFromSnapshot(Long snapshotId, ResponseHandler callback); /** * Async version of {@link Service#sendPasswordReminderEmail} */ public Future sendPasswordReminderEmail(String username); public Future sendPasswordReminderEmail(String username, ResponseHandler callback); /** * Async version of {@link Service#setMountable} */ public Future setMountable(Boolean mountable); public Future setMountable(Boolean mountable, ResponseHandler callback); /** * Async version of {@link Service#setSnapshotAllocation} */ public Future setSnapshotAllocation(Long capacityGb); public Future setSnapshotAllocation(Long capacityGb, ResponseHandler callback); /** * Async version of {@link Service#upgradeVolumeCapacity} */ public Future upgradeVolumeCapacity(Long itemId); public Future upgradeVolumeCapacity(Long itemId, ResponseHandler callback); /** * Async version of {@link Service#uploadFile} */ public Future uploadFile(Entity file); public Future uploadFile(Entity file, ResponseHandler callback); /** * Async version of {@link Service#getAccount} */ public Future getAccount(); /** * Async callback version of {@link Service#getAccount} */ public Future getAccount(ResponseHandler callback); /** * Async version of {@link Service#getAccountPassword} */ public Future getAccountPassword(); /** * Async callback version of {@link Service#getAccountPassword} */ public Future getAccountPassword(ResponseHandler callback); /** * Async version of {@link Service#getAllowedHardware} */ public Future> getAllowedHardware(); /** * Async callback version of {@link Service#getAllowedHardware} */ public Future getAllowedHardware(ResponseHandler> callback); /** * Async version of {@link Service#getAllowedIpAddresses} */ public Future> getAllowedIpAddresses(); /** * Async callback version of {@link Service#getAllowedIpAddresses} */ public Future getAllowedIpAddresses(ResponseHandler> callback); /** * Async version of {@link Service#getAllowedSubnets} */ public Future> getAllowedSubnets(); /** * Async callback version of {@link Service#getAllowedSubnets} */ public Future getAllowedSubnets(ResponseHandler> callback); /** * Async version of {@link Service#getAllowedVirtualGuests} */ public Future> getAllowedVirtualGuests(); /** * Async callback version of {@link Service#getAllowedVirtualGuests} */ public Future getAllowedVirtualGuests(ResponseHandler> callback); /** * Async version of {@link Service#getBillingItem} */ public Future getBillingItem(); /** * Async callback version of {@link Service#getBillingItem} */ public Future getBillingItem(ResponseHandler callback); /** * Async version of {@link Service#getBillingItemCategory} */ public Future getBillingItemCategory(); /** * Async callback version of {@link Service#getBillingItemCategory} */ public Future getBillingItemCategory(ResponseHandler callback); /** * Async version of {@link Service#getCredentials} */ public Future> getCredentials(); /** * Async callback version of {@link Service#getCredentials} */ public Future getCredentials(ResponseHandler> callback); /** * Async version of {@link Service#getEvents} */ public Future> getEvents(); /** * Async callback version of {@link Service#getEvents} */ public Future getEvents(ResponseHandler> callback); /** * Async version of {@link Service#getHardware} */ public Future getHardware(); /** * Async callback version of {@link Service#getHardware} */ public Future getHardware(ResponseHandler callback); /** * Async version of {@link Service#getIops} */ public Future getIops(); /** * Async callback version of {@link Service#getIops} */ public Future getIops(ResponseHandler callback); /** * Async version of {@link Service#getIscsiLuns} */ public Future> getIscsiLuns(); /** * Async callback version of {@link Service#getIscsiLuns} */ public Future getIscsiLuns(ResponseHandler> callback); /** * Async version of {@link Service#getMetricTrackingObject} */ public Future getMetricTrackingObject(); /** * Async callback version of {@link Service#getMetricTrackingObject} */ public Future getMetricTrackingObject(ResponseHandler callback); /** * Async version of {@link Service#getMountableFlag} */ public Future getMountableFlag(); /** * Async callback version of {@link Service#getMountableFlag} */ public Future getMountableFlag(ResponseHandler callback); /** * Async version of {@link Service#getNotificationSubscribers} */ public Future> getNotificationSubscribers(); /** * Async callback version of {@link Service#getNotificationSubscribers} */ public Future getNotificationSubscribers(ResponseHandler> callback); /** * Async version of {@link Service#getOsTypeId} */ public Future getOsTypeId(); /** * Async callback version of {@link Service#getOsTypeId} */ public Future getOsTypeId(ResponseHandler callback); /** * Async version of {@link Service#getParentPartnerships} */ public Future> getParentPartnerships(); /** * Async callback version of {@link Service#getParentPartnerships} */ public Future getParentPartnerships(ResponseHandler> callback); /** * Async version of {@link Service#getPartnerships} */ public Future> getPartnerships(); /** * Async callback version of {@link Service#getPartnerships} */ public Future getPartnerships(ResponseHandler> callback); /** * Async version of {@link Service#getPermissionsGroups} */ public Future> getPermissionsGroups(); /** * Async callback version of {@link Service#getPermissionsGroups} */ public Future getPermissionsGroups(ResponseHandler> callback); /** * Async version of {@link Service#getProperties} */ public Future> getProperties(); /** * Async callback version of {@link Service#getProperties} */ public Future getProperties(ResponseHandler> callback); /** * Async version of {@link Service#getReplicationPartners} */ public Future> getReplicationPartners(); /** * Async callback version of {@link Service#getReplicationPartners} */ public Future getReplicationPartners(ResponseHandler> callback); /** * Async version of {@link Service#getSchedules} */ public Future> getSchedules(); /** * Async callback version of {@link Service#getSchedules} */ public Future getSchedules(ResponseHandler> callback); /** * Async version of {@link Service#getServiceResource} */ public Future getServiceResource(); /** * Async callback version of {@link Service#getServiceResource} */ public Future getServiceResource(ResponseHandler callback); /** * Async version of {@link Service#getServiceResourceBackendIpAddress} */ public Future getServiceResourceBackendIpAddress(); /** * Async callback version of {@link Service#getServiceResourceBackendIpAddress} */ public Future getServiceResourceBackendIpAddress(ResponseHandler callback); /** * Async version of {@link Service#getServiceResourceName} */ public Future getServiceResourceName(); /** * Async callback version of {@link Service#getServiceResourceName} */ public Future getServiceResourceName(ResponseHandler callback); /** * Async version of {@link Service#getSnapshotPercentage} */ public Future getSnapshotPercentage(); /** * Async callback version of {@link Service#getSnapshotPercentage} */ public Future getSnapshotPercentage(ResponseHandler callback); /** * Async version of {@link Service#getSnapshotSpaceAvailable} */ public Future getSnapshotSpaceAvailable(); /** * Async callback version of {@link Service#getSnapshotSpaceAvailable} */ public Future getSnapshotSpaceAvailable(ResponseHandler callback); /** * Async version of {@link Service#getStorageGroups} */ public Future> getStorageGroups(); /** * Async callback version of {@link Service#getStorageGroups} */ public Future getStorageGroups(ResponseHandler> callback); /** * Async version of {@link Service#getUsageNotification} */ public Future getUsageNotification(); /** * Async callback version of {@link Service#getUsageNotification} */ public Future getUsageNotification(ResponseHandler callback); /** * Async version of {@link Service#getVendorName} */ public Future getVendorName(); /** * Async callback version of {@link Service#getVendorName} */ public Future getVendorName(ResponseHandler callback); /** * Async version of {@link Service#getVirtualGuest} */ public Future getVirtualGuest(); /** * Async callback version of {@link Service#getVirtualGuest} */ public Future getVirtualGuest(ResponseHandler callback); /** * Async version of {@link Service#getVolumeHistory} */ public Future> getVolumeHistory(); /** * Async callback version of {@link Service#getVolumeHistory} */ public Future getVolumeHistory(ResponseHandler> callback); /** * Async version of {@link Service#getWebccAccount} */ public Future getWebccAccount(); /** * Async callback version of {@link Service#getWebccAccount} */ public Future getWebccAccount(ResponseHandler callback); } public static class Mask extends com.softlayer.api.service.Entity.Mask { public com.softlayer.api.service.Account.Mask account() { return withSubMask("account", com.softlayer.api.service.Account.Mask.class); } public com.softlayer.api.service.account.Password.Mask accountPassword() { return withSubMask("accountPassword", com.softlayer.api.service.account.Password.Mask.class); } public com.softlayer.api.service.Hardware.Mask allowedHardware() { return withSubMask("allowedHardware", com.softlayer.api.service.Hardware.Mask.class); } public com.softlayer.api.service.network.subnet.IpAddress.Mask allowedIpAddresses() { return withSubMask("allowedIpAddresses", com.softlayer.api.service.network.subnet.IpAddress.Mask.class); } public Subnet.Mask allowedSubnets() { return withSubMask("allowedSubnets", Subnet.Mask.class); } public com.softlayer.api.service.virtual.Guest.Mask allowedVirtualGuests() { return withSubMask("allowedVirtualGuests", com.softlayer.api.service.virtual.Guest.Mask.class); } public com.softlayer.api.service.billing.Item.Mask billingItem() { return withSubMask("billingItem", com.softlayer.api.service.billing.Item.Mask.class); } public com.softlayer.api.service.product.item.Category.Mask billingItemCategory() { return withSubMask("billingItemCategory", com.softlayer.api.service.product.item.Category.Mask.class); } public com.softlayer.api.service.network.storage.Credential.Mask credentials() { return withSubMask("credentials", com.softlayer.api.service.network.storage.Credential.Mask.class); } public com.softlayer.api.service.network.storage.Event.Mask events() { return withSubMask("events", com.softlayer.api.service.network.storage.Event.Mask.class); } public com.softlayer.api.service.Hardware.Mask hardware() { return withSubMask("hardware", com.softlayer.api.service.Hardware.Mask.class); } public Mask iops() { withLocalProperty("iops"); return this; } public Storage.Mask iscsiLuns() { return withSubMask("iscsiLuns", Storage.Mask.class); } public com.softlayer.api.service.metric.tracking.Object.Mask metricTrackingObject() { return withSubMask("metricTrackingObject", com.softlayer.api.service.metric.tracking.Object.Mask.class); } public Mask mountableFlag() { withLocalProperty("mountableFlag"); return this; } public com.softlayer.api.service.notification.user.Subscriber.Mask notificationSubscribers() { return withSubMask("notificationSubscribers", com.softlayer.api.service.notification.user.Subscriber.Mask.class); } public Mask osTypeId() { withLocalProperty("osTypeId"); return this; } public com.softlayer.api.service.network.storage.Partnership.Mask parentPartnerships() { return withSubMask("parentPartnerships", com.softlayer.api.service.network.storage.Partnership.Mask.class); } public com.softlayer.api.service.network.storage.Partnership.Mask partnerships() { return withSubMask("partnerships", com.softlayer.api.service.network.storage.Partnership.Mask.class); } public com.softlayer.api.service.network.storage.Group.Mask permissionsGroups() { return withSubMask("permissionsGroups", com.softlayer.api.service.network.storage.Group.Mask.class); } public com.softlayer.api.service.network.storage.Property.Mask properties() { return withSubMask("properties", com.softlayer.api.service.network.storage.Property.Mask.class); } public Storage.Mask replicationPartners() { return withSubMask("replicationPartners", Storage.Mask.class); } public com.softlayer.api.service.network.storage.Schedule.Mask schedules() { return withSubMask("schedules", com.softlayer.api.service.network.storage.Schedule.Mask.class); } public com.softlayer.api.service.network.service.Resource.Mask serviceResource() { return withSubMask("serviceResource", com.softlayer.api.service.network.service.Resource.Mask.class); } public Mask serviceResourceBackendIpAddress() { withLocalProperty("serviceResourceBackendIpAddress"); return this; } public Mask serviceResourceName() { withLocalProperty("serviceResourceName"); return this; } public Mask snapshotPercentage() { withLocalProperty("snapshotPercentage"); return this; } public Mask snapshotSpaceAvailable() { withLocalProperty("snapshotSpaceAvailable"); return this; } public com.softlayer.api.service.network.storage.Group.Mask storageGroups() { return withSubMask("storageGroups", com.softlayer.api.service.network.storage.Group.Mask.class); } public com.softlayer.api.service.Notification.Mask usageNotification() { return withSubMask("usageNotification", com.softlayer.api.service.Notification.Mask.class); } public Mask vendorName() { withLocalProperty("vendorName"); return this; } public com.softlayer.api.service.virtual.Guest.Mask virtualGuest() { return withSubMask("virtualGuest", com.softlayer.api.service.virtual.Guest.Mask.class); } public com.softlayer.api.service.network.storage.History.Mask volumeHistory() { return withSubMask("volumeHistory", com.softlayer.api.service.network.storage.History.Mask.class); } public com.softlayer.api.service.account.Password.Mask webccAccount() { return withSubMask("webccAccount", com.softlayer.api.service.account.Password.Mask.class); } public Mask accountId() { withLocalProperty("accountId"); return this; } public Mask capacityGb() { withLocalProperty("capacityGb"); return this; } public Mask createDate() { withLocalProperty("createDate"); return this; } public Mask guestId() { withLocalProperty("guestId"); return this; } public Mask hardwareId() { withLocalProperty("hardwareId"); return this; } public Mask hostId() { withLocalProperty("hostId"); return this; } public Mask id() { withLocalProperty("id"); return this; } public Mask nasType() { withLocalProperty("nasType"); return this; } public Mask notes() { withLocalProperty("notes"); return this; } public Mask password() { withLocalProperty("password"); return this; } public Mask serviceProviderId() { withLocalProperty("serviceProviderId"); return this; } public Mask upgradableFlag() { withLocalProperty("upgradableFlag"); return this; } public Mask username() { withLocalProperty("username"); return this; } public Mask allowedHardwareCount() { withLocalProperty("allowedHardwareCount"); return this; } public Mask allowedIpAddressCount() { withLocalProperty("allowedIpAddressCount"); return this; } public Mask allowedSubnetCount() { withLocalProperty("allowedSubnetCount"); return this; } public Mask allowedVirtualGuestCount() { withLocalProperty("allowedVirtualGuestCount"); return this; } public Mask credentialCount() { withLocalProperty("credentialCount"); return this; } public Mask eventCount() { withLocalProperty("eventCount"); return this; } public Mask iscsiLunCount() { withLocalProperty("iscsiLunCount"); return this; } public Mask notificationSubscriberCount() { withLocalProperty("notificationSubscriberCount"); return this; } public Mask parentPartnershipCount() { withLocalProperty("parentPartnershipCount"); return this; } public Mask partnershipCount() { withLocalProperty("partnershipCount"); return this; } public Mask permissionsGroupCount() { withLocalProperty("permissionsGroupCount"); return this; } public Mask propertyCount() { withLocalProperty("propertyCount"); return this; } public Mask replicationPartnerCount() { withLocalProperty("replicationPartnerCount"); return this; } public Mask scheduleCount() { withLocalProperty("scheduleCount"); return this; } public Mask storageGroupCount() { withLocalProperty("storageGroupCount"); return this; } public Mask volumeHistoryCount() { withLocalProperty("volumeHistoryCount"); return this; } } }