Interface Allotment.Service
-
- All Superinterfaces:
Maskable
,ResultLimitable
,Service
- Enclosing class:
- Allotment
@ApiService("SoftLayer_Network_Bandwidth_Version1_Allotment") public static interface Allotment.Service extends Service
Every SoftLayer Bandwidth Pooling, Virtual Datacenter, Virtual Private Rack(VPR) is defined in the SoftLayer_Network_Bandwidth_Version1_Allotment service as an allotment. SoftLayer allotments are a collection of servers that share all of the servers allocated bandwidth together.
Virtual Private Rack Each server is by default a part of your Virtual Private Rack. Bandwidth overages are billed individually per server for all hardware in your Virtual Private Rack. If any one server uses more bandwidth than it is allocated, an overage charge will result.
Bandwidth Pooling Bandwidth Pooling allow you to optimize your bandwidth usage by "pooling" all of the bandwidth together for servers in a Bandwidth Pooling. Bandwidth overages for servers in a Bandwidth Pooling are summed up as a whole and overages are calculated only if the total bandwidth of all servers exceeds the total allocated bandwidth for all servers.
For example, if you had 5 servers, each with 2000 GB of bandwidth, and one server used 3000 GB of bandwidth while the other used only 1500 GB of bandwidth, you would not be billed for an overage because your total usage would be 9000 GB and your total allocated would be 10000 GB.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Deprecated Methods Modifier and Type Method Description Allotment.ServiceAsync
asAsync()
Get an async version of this serviceAllotment
createObject(Allotment templateObject)
Create a allotment for servers to pool bandwidth and avoid overages in billing if they use more than there allocated bandwidth.Boolean
editObject(Allotment templateObject)
Edit a bandwidth allotment's local properties.Account
getAccount()
The account associated with this virtual rack.List<Detail>
getActiveDetails()
The bandwidth allotment detail records associated with this virtual rack.List<Controller>
getApplicationDeliveryControllers()
The Application Delivery Controller contained within a virtual rack.BigDecimal
getAverageDailyPublicBandwidthUsage()
The average daily public bandwidth usage for the current billing cycle.List<Usage>
getBackendBandwidthByHour(GregorianCalendar date)
Deprecated.List<Detail>
getBackendBandwidthUse(GregorianCalendar startDate, GregorianCalendar endDate)
This method recurses through all servers on a Bandwidth Pool between the given start and end dates to retrieve public bandwidth data.Type
getBandwidthAllotmentType()
The bandwidth allotment type of this virtual rack.List<Data>
getBandwidthForDateRange(GregorianCalendar startDate, GregorianCalendar endDate)
Retrieve a collection of bandwidth data from an individual public or private network tracking object.GraphOutputs
getBandwidthImage(String networkType, String snapshotRange, Boolean draw, GregorianCalendar dateSpecified, GregorianCalendar dateSpecifiedEnd)
This method recurses through all servers on a Bandwidth Pool for a given snapshot range, gathers the necessary parameters, and then calls the bandwidth graphing server.List<Hardware>
getBareMetalInstances()
The bare metal server instances contained within a virtual rack.List<Usage>
getBillingCycleBandwidthUsage()
A virtual rack's raw bandwidth usage data for an account's current billing cycle.Usage
getBillingCyclePrivateBandwidthUsage()
A virtual rack's raw private network bandwidth usage data for an account's current billing cycle.Usage
getBillingCyclePublicBandwidthUsage()
A virtual rack's raw public network bandwidth usage data for an account's current billing cycle.Long
getBillingCyclePublicUsageTotal()
The total public bandwidth used in this virtual rack for an account's current billing cycle.Item
getBillingItem()
A virtual rack's billing item.Summary
getCurrentBandwidthSummary()
An object that provides commonly used bandwidth summary components for the current billing cycle.Graph
getCustomBandwidthDataByDate(Graph graphData)
Retrieve bandwidth graph by date.List<Detail>
getDetails()
The bandwidth allotment detail records associated with this virtual rack.List<Usage>
getFrontendBandwidthByHour(GregorianCalendar date)
Deprecated.List<Detail>
getFrontendBandwidthUse(GregorianCalendar startDate, GregorianCalendar endDate)
This method recurses through all servers on a Bandwidth Pool between the given start and end dates to retrieve private bandwidth data.List<Hardware>
getHardware()
The hardware contained within a virtual rack.BigDecimal
getInboundPublicBandwidthUsage()
The total public inbound bandwidth used in this virtual rack for an account's current billing cycle.Group
getLocationGroup()
The location group associated with this virtual rack.List<Hardware>
getManagedBareMetalInstances()
The managed bare metal server instances contained within a virtual rack.List<Hardware>
getManagedHardware()
The managed hardware contained within a virtual rack.List<Guest>
getManagedVirtualGuests()
The managed Virtual Server contained within a virtual rack.VirtualDedicatedRack
getMetricTrackingObject()
A virtual rack's metric tracking object.Long
getMetricTrackingObjectId()
The metric tracking object id for this allotment.Allotment
getObject()
getObject retrieves the SoftLayer_Network_Bandwidth_Version1_Allotment object whose ID number corresponds to the ID number of the init parameter passed to the SoftLayer_Hardware service.BigDecimal
getOutboundPublicBandwidthUsage()
The total public outbound bandwidth used in this virtual rack for an account's current billing cycle.Long
getOverBandwidthAllocationFlag()
Whether the bandwidth usage for this bandwidth pool for the current billing cycle exceeds the allocation.List<Hardware>
getPrivateNetworkOnlyHardware()
The private network only hardware contained within a virtual rack.Long
getProjectedOverBandwidthAllocationFlag()
Whether the bandwidth usage for this bandwidth pool for the current billing cycle is projected to exceed the allocation.BigDecimal
getProjectedPublicBandwidthUsage()
The projected public outbound bandwidth for this virtual server for the current billing cycle.Provider
getServiceProvider()
Long
getTotalBandwidthAllocated()
The combined allocated bandwidth for all servers in a virtual rack.BigDecimal
getVdrMemberRecurringFee()
Gets the monthly recurring fee of a pooled server.List<Guest>
getVirtualGuests()
The Virtual Server contained within a virtual rack.Boolean
reassignServers(List<Hardware> templateObjects, Long newAllotmentId)
This method will reassign a collection of SoftLayer hardware to a bandwidth allotment Bandwidth Pool.Boolean
requestVdrCancellation()
This will remove a bandwidth pooling from a customer's allotments by cancelling the billing item.Boolean
requestVdrContentUpdates(List<Hardware> hardwareToAdd, List<Hardware> hardwareToRemove, List<Guest> cloudsToAdd, List<Guest> cloudsToRemove, Long optionalAllotmentId, List<Controller> adcToAdd, List<Controller> adcToRemove)
This will move servers into a bandwidth pool, removing them from their previous bandwidth pool and optionally remove the bandwidth pool on completion.void
setMask(Allotment.Mask mask)
Boolean
setVdrContent(List<Hardware> hardware, List<Hardware> bareMetalServers, List<Guest> virtualServerInstance, List<Controller> adc, Long optionalAllotmentId)
This will update the bandwidth pool to the servers provided.Boolean
unassignServers(List<Hardware> templateObjects)
This method will reassign a collection of SoftLayer hardware to the virtual private rackBoolean
voidPendingServerMove(Long id, String type)
This method will void a pending server removal from this bandwidth pooling.Boolean
voidPendingVdrCancellation()
This method will void a pending cancellation on a bandwidth pool.Allotment.Mask
withMask()
Use the existing mask on this service or create it if not presentAllotment.Mask
withNewMask()
Overwrite the existing mask on this service with a new one and return it-
Methods inherited from interface com.softlayer.api.ResultLimitable
getLastResponseTotalItemCount, getResultLimit, setResultLimit
-
-
-
-
Method Detail
-
asAsync
Allotment.ServiceAsync asAsync()
Description copied from interface:Service
Get an async version of this service
-
withNewMask
Allotment.Mask withNewMask()
Description copied from interface:Maskable
Overwrite the existing mask on this service with a new one and return it- Specified by:
withNewMask
in interfaceMaskable
-
withMask
Allotment.Mask withMask()
Description copied from interface:Maskable
Use the existing mask on this service or create it if not present
-
setMask
void setMask(Allotment.Mask mask)
-
createObject
@ApiMethod Allotment createObject(Allotment templateObject)
Create a allotment for servers to pool bandwidth and avoid overages in billing if they use more than there allocated bandwidth.
-
editObject
@ApiMethod(instanceRequired=true) Boolean editObject(Allotment templateObject)
Edit a bandwidth allotment's local properties. Currently you may only change an allotment's name. Use the [[SoftLayer_Network_Bandwidth_Version1_Allotment::reassignServers|reassignServers()]] and [[SoftLayer_Network_Bandwidth_Version1_Allotment::unassignServers|unassignServers()]] methods to move servers in and out of your allotments.
-
getBackendBandwidthByHour
@Deprecated @ApiMethod(instanceRequired=true) List<Usage> getBackendBandwidthByHour(GregorianCalendar date)
Deprecated.[DEPRECATED] This method recurses through all servers on a Bandwidth Pool for 24 hour time span starting at a given date/time. To get the private data set for all servers on a Bandwidth Pool from midnight Feb 1st, 2008 to 23:59 on Feb 1st, you would pass a parameter of '02/01/2008 0:00'. The ending date / time is calculated for you to prevent requesting data from the server for periods larger than 24 hours as this method requires processing a lot of data records and can get slow at times.
-
getBackendBandwidthUse
@ApiMethod(instanceRequired=true) List<Detail> getBackendBandwidthUse(GregorianCalendar startDate, GregorianCalendar endDate)
This method recurses through all servers on a Bandwidth Pool between the given start and end dates to retrieve public bandwidth data.
-
getBandwidthForDateRange
@ApiMethod(instanceRequired=true) List<Data> getBandwidthForDateRange(GregorianCalendar startDate, GregorianCalendar endDate)
Retrieve a collection of bandwidth data from an individual public or private network tracking object. Data is ideal if you with to employ your own traffic storage and graphing systems.
-
getBandwidthImage
@ApiMethod(instanceRequired=true) GraphOutputs getBandwidthImage(String networkType, String snapshotRange, Boolean draw, GregorianCalendar dateSpecified, GregorianCalendar dateSpecifiedEnd)
This method recurses through all servers on a Bandwidth Pool for a given snapshot range, gathers the necessary parameters, and then calls the bandwidth graphing server. The return result is a container that includes the min and max dates for all servers to be used in the query, as well as an image in PNG format. This method uses the new and improved drawing routines which should return in a reasonable time frame now that the new backend data warehouse is used.
-
getCustomBandwidthDataByDate
@ApiMethod(instanceRequired=true) Graph getCustomBandwidthDataByDate(Graph graphData)
Retrieve bandwidth graph by date.
-
getFrontendBandwidthByHour
@Deprecated @ApiMethod(instanceRequired=true) List<Usage> getFrontendBandwidthByHour(GregorianCalendar date)
Deprecated.[DEPRECATED] This method recurses through all servers on a Bandwidth Pool for 24 hour time span starting at a given date/time. To get the public data set for all servers on a Bandwidth Pool from midnight Feb 1st, 2008 to 23:59 on Feb 1st, you would pass a parameter of '02/01/2008 0:00'. The ending date / time is calculated for you to prevent requesting data from the server for periods larger than 24 hours as this method requires processing a lot of data records and can get slow at times.
-
getFrontendBandwidthUse
@ApiMethod(instanceRequired=true) List<Detail> getFrontendBandwidthUse(GregorianCalendar startDate, GregorianCalendar endDate)
This method recurses through all servers on a Bandwidth Pool between the given start and end dates to retrieve private bandwidth data.
-
getObject
@ApiMethod(instanceRequired=true) Allotment getObject()
getObject retrieves the SoftLayer_Network_Bandwidth_Version1_Allotment object whose ID number corresponds to the ID number of the init parameter passed to the SoftLayer_Hardware service. You can only retrieve an allotment associated with the account that your portal user is assigned to.
-
getVdrMemberRecurringFee
@ApiMethod(instanceRequired=true) BigDecimal getVdrMemberRecurringFee()
Gets the monthly recurring fee of a pooled server.
-
reassignServers
@ApiMethod Boolean reassignServers(List<Hardware> templateObjects, Long newAllotmentId)
This method will reassign a collection of SoftLayer hardware to a bandwidth allotment Bandwidth Pool.
-
requestVdrCancellation
@ApiMethod(instanceRequired=true) Boolean requestVdrCancellation()
This will remove a bandwidth pooling from a customer's allotments by cancelling the billing item. All servers in that allotment will get moved to the account's vpr.
-
requestVdrContentUpdates
@ApiMethod(instanceRequired=true) Boolean requestVdrContentUpdates(List<Hardware> hardwareToAdd, List<Hardware> hardwareToRemove, List<Guest> cloudsToAdd, List<Guest> cloudsToRemove, Long optionalAllotmentId, List<Controller> adcToAdd, List<Controller> adcToRemove)
This will move servers into a bandwidth pool, removing them from their previous bandwidth pool and optionally remove the bandwidth pool on completion.
-
setVdrContent
@ApiMethod(instanceRequired=true) Boolean setVdrContent(List<Hardware> hardware, List<Hardware> bareMetalServers, List<Guest> virtualServerInstance, List<Controller> adc, Long optionalAllotmentId)
This will update the bandwidth pool to the servers provided. Servers currently in the bandwidth pool not provided on update will be removed. Servers provided on update not currently in the bandwidth pool will be added. If all servers are removed, this removes the bandwidth pool on completion.
-
unassignServers
@ApiMethod Boolean unassignServers(List<Hardware> templateObjects)
This method will reassign a collection of SoftLayer hardware to the virtual private rack
-
voidPendingServerMove
@ApiMethod(instanceRequired=true) Boolean voidPendingServerMove(Long id, String type)
This method will void a pending server removal from this bandwidth pooling. Pass in the id of the hardware object or virtual guest you wish to update. Assuming that object is currently pending removal from the bandwidth pool at the start of the next billing cycle, the bandwidth pool member status will be restored and the pending cancellation removed.
-
voidPendingVdrCancellation
@ApiMethod(instanceRequired=true) Boolean voidPendingVdrCancellation()
This method will void a pending cancellation on a bandwidth pool. Note however any servers that belonged to the rack will have to be restored individually using the method voidPendingServerMove($id, $type).
-
getAccount
@ApiMethod(instanceRequired=true) Account getAccount()
The account associated with this virtual rack.
-
getActiveDetails
@ApiMethod(instanceRequired=true) List<Detail> getActiveDetails()
The bandwidth allotment detail records associated with this virtual rack.
-
getApplicationDeliveryControllers
@ApiMethod(instanceRequired=true) List<Controller> getApplicationDeliveryControllers()
The Application Delivery Controller contained within a virtual rack.
-
getAverageDailyPublicBandwidthUsage
@ApiMethod(instanceRequired=true) BigDecimal getAverageDailyPublicBandwidthUsage()
The average daily public bandwidth usage for the current billing cycle.
-
getBandwidthAllotmentType
@ApiMethod(instanceRequired=true) Type getBandwidthAllotmentType()
The bandwidth allotment type of this virtual rack.
-
getBareMetalInstances
@ApiMethod(instanceRequired=true) List<Hardware> getBareMetalInstances()
The bare metal server instances contained within a virtual rack.
-
getBillingCycleBandwidthUsage
@ApiMethod(instanceRequired=true) List<Usage> getBillingCycleBandwidthUsage()
A virtual rack's raw bandwidth usage data for an account's current billing cycle. One object is returned for each network this server is attached to.
-
getBillingCyclePrivateBandwidthUsage
@ApiMethod(instanceRequired=true) Usage getBillingCyclePrivateBandwidthUsage()
A virtual rack's raw private network bandwidth usage data for an account's current billing cycle.
-
getBillingCyclePublicBandwidthUsage
@ApiMethod(instanceRequired=true) Usage getBillingCyclePublicBandwidthUsage()
A virtual rack's raw public network bandwidth usage data for an account's current billing cycle.
-
getBillingCyclePublicUsageTotal
@ApiMethod(instanceRequired=true) Long getBillingCyclePublicUsageTotal()
The total public bandwidth used in this virtual rack for an account's current billing cycle.
-
getBillingItem
@ApiMethod(instanceRequired=true) Item getBillingItem()
A virtual rack's billing item.
-
getCurrentBandwidthSummary
@ApiMethod(instanceRequired=true) Summary getCurrentBandwidthSummary()
An object that provides commonly used bandwidth summary components for the current billing cycle.
-
getDetails
@ApiMethod(instanceRequired=true) List<Detail> getDetails()
The bandwidth allotment detail records associated with this virtual rack.
-
getHardware
@ApiMethod(instanceRequired=true) List<Hardware> getHardware()
The hardware contained within a virtual rack.
-
getInboundPublicBandwidthUsage
@ApiMethod(instanceRequired=true) BigDecimal getInboundPublicBandwidthUsage()
The total public inbound bandwidth used in this virtual rack for an account's current billing cycle.
-
getLocationGroup
@ApiMethod(instanceRequired=true) Group getLocationGroup()
The location group associated with this virtual rack.
-
getManagedBareMetalInstances
@ApiMethod(instanceRequired=true) List<Hardware> getManagedBareMetalInstances()
The managed bare metal server instances contained within a virtual rack.
-
getManagedHardware
@ApiMethod(instanceRequired=true) List<Hardware> getManagedHardware()
The managed hardware contained within a virtual rack.
-
getManagedVirtualGuests
@ApiMethod(instanceRequired=true) List<Guest> getManagedVirtualGuests()
The managed Virtual Server contained within a virtual rack.
-
getMetricTrackingObject
@ApiMethod(instanceRequired=true) VirtualDedicatedRack getMetricTrackingObject()
A virtual rack's metric tracking object. This object records all periodic polled data available to this rack.
-
getMetricTrackingObjectId
@ApiMethod(instanceRequired=true) Long getMetricTrackingObjectId()
The metric tracking object id for this allotment.
-
getOutboundPublicBandwidthUsage
@ApiMethod(instanceRequired=true) BigDecimal getOutboundPublicBandwidthUsage()
The total public outbound bandwidth used in this virtual rack for an account's current billing cycle.
-
getOverBandwidthAllocationFlag
@ApiMethod(instanceRequired=true) Long getOverBandwidthAllocationFlag()
Whether the bandwidth usage for this bandwidth pool for the current billing cycle exceeds the allocation.
-
getPrivateNetworkOnlyHardware
@ApiMethod(instanceRequired=true) List<Hardware> getPrivateNetworkOnlyHardware()
The private network only hardware contained within a virtual rack.
-
getProjectedOverBandwidthAllocationFlag
@ApiMethod(instanceRequired=true) Long getProjectedOverBandwidthAllocationFlag()
Whether the bandwidth usage for this bandwidth pool for the current billing cycle is projected to exceed the allocation.
-
getProjectedPublicBandwidthUsage
@ApiMethod(instanceRequired=true) BigDecimal getProjectedPublicBandwidthUsage()
The projected public outbound bandwidth for this virtual server for the current billing cycle.
-
getServiceProvider
@ApiMethod(instanceRequired=true) Provider getServiceProvider()
-
getTotalBandwidthAllocated
@ApiMethod(instanceRequired=true) Long getTotalBandwidthAllocated()
The combined allocated bandwidth for all servers in a virtual rack.
-
getVirtualGuests
@ApiMethod(instanceRequired=true) List<Guest> getVirtualGuests()
The Virtual Server contained within a virtual rack.
-
-