Class Group


@ApiType("SoftLayer_Scale_Group")
public class Group
extends Entity
A scale group can contain a number of guest members which can fluctuate up and down, staying within a defined range, manually or automatically based on policies given. Groups are set of VLANs to be placed behind. Groups can also have static hardware/guests pinned to the group. These static resources can be used to effect things like moving averages for policy triggers but are not counted as group members and are not subject to automatic reclaim.
See Also:
SoftLayer_Scale_Group
  • Field Details

    • account

      @ApiProperty protected Account account
      The account for this scaling group.
    • loadBalancers

      @ApiProperty protected List<LoadBalancer> loadBalancers
      Collection of load balancers for this auto scale group.
    • logs

      @ApiProperty protected List<Log> logs
      Collection of log entries for this group.
    • networkVlans

      @ApiProperty protected List<Vlan> networkVlans
      Collection of VLANs for this auto scale group. VLANs are optional. This can contain a public or private VLAN or both. When a single VLAN for a public/private type is given it can be a non-purchased VLAN only if the minimumMemberCount on the group is >= 1. This can also contain any number of public/private purchased VLANs and members are staggered across them when scaled up.
    • policies

      @ApiProperty protected List<Policy> policies
      Collection of policies for this group. This can be empty.
    • regionalGroup

      @ApiProperty protected Regional regionalGroup
      The regional group for this scale group.
    • status

      @ApiProperty protected Status status
      The status for this scale group.
    • terminationPolicy

      @ApiProperty protected Policy terminationPolicy
      The termination policy for this scaling group.
    • virtualGuestAssets

      @ApiProperty protected List<Guest> virtualGuestAssets
      Collection of guests that have been pinned to this group. Guest assets are only used for certain trigger checks such as resource watches. They do not count towards the auto scaling guest counts of this group in anyway and are never automatically added or removed.
    • virtualGuestMembers

      @ApiProperty protected List<Guest> virtualGuestMembers
      Collection of guests that have been scaled with the group. When this group is active, the count of guests here is guaranteed to be between minimumMemberCount and maximumMemberCount inclusively.
    • accountId

      @ApiProperty(canBeNullOrNotSet=true) protected Long accountId
      The identifier of the account assigned to this group.
    • accountIdSpecified

      protected boolean accountIdSpecified
    • balancedTerminationFlag

      @ApiProperty(canBeNullOrNotSet=true) protected Boolean balancedTerminationFlag
      If this is true, this group will scale down members in a way to preserve the balance across VLANs. If there is ambiguity about which member to use to maintain balance, the terminationPolicy is used to resolve it. This is false by default and can only be set to true if there are multiple VLANs that are being balanced across.
    • balancedTerminationFlagSpecified

      protected boolean balancedTerminationFlagSpecified
    • cooldown

      @ApiProperty(canBeNullOrNotSet=true) protected Long cooldown
      The number of seconds this group will wait after lastActionDate before performing another action. Be advised, this can be overridden per policy. While strongly discouraged, a value of 0 effectively disables cooldown.
    • cooldownSpecified

      protected boolean cooldownSpecified
    • createDate

      @ApiProperty(canBeNullOrNotSet=true) protected GregorianCalendar createDate
      When this group was created.
    • createDateSpecified

      protected boolean createDateSpecified
    • desiredMemberCount

      @ApiProperty(canBeNullOrNotSet=true) protected Long desiredMemberCount
      This value is only available on the template for creating and editing a group. It will be null when retrieved. When this value is provided on create or edit, guests will be scaled up or down to meet this number. This number must be in the range provided by minimumMemberCount and maximumMemberCount. This value can only be present during create or edit when this group is active. Note, guests that are created as a result of this value can possibly be removed after cooldown by a policy.
    • desiredMemberCountSpecified

      protected boolean desiredMemberCountSpecified
    • id

      @ApiProperty(canBeNullOrNotSet=true) protected Long id
      A group's internal identifier.
    • idSpecified

      protected boolean idSpecified
    • lastActionDate

      @ApiProperty(canBeNullOrNotSet=true) protected GregorianCalendar lastActionDate
      The date of the last action on this group or its create date
    • lastActionDateSpecified

      protected boolean lastActionDateSpecified
    • maximumMemberCount

      @ApiProperty(canBeNullOrNotSet=true) protected Long maximumMemberCount
      The greatest number of virtual guest members that are allowed on this group. Any attempts to add a guest member will fail if it will result in the total guest member count of this group to be above this number. If this number is edited and is less than the current guest member count, guests will be removed to at least be no greater than this number.
    • maximumMemberCountSpecified

      protected boolean maximumMemberCountSpecified
    • minimumMemberCount

      @ApiProperty(canBeNullOrNotSet=true) protected Long minimumMemberCount
      The fewest number of virtual guest members that are allowed on this group. Any attempts to remove a guest member will fail if it will result in the total guest member count of this group to be below this number. If this number is edited and is larger than the current guest member count, guests will be added to at least reach this number.
    • minimumMemberCountSpecified

      protected boolean minimumMemberCountSpecified
    • modifyDate

      @ApiProperty(canBeNullOrNotSet=true) protected GregorianCalendar modifyDate
      When this group was last modified.
    • modifyDateSpecified

      protected boolean modifyDateSpecified
    • name

      @ApiProperty(canBeNullOrNotSet=true) protected String name
      The name of this scale group. It must be unique on the account.
    • nameSpecified

      protected boolean nameSpecified
    • regionalGroupId

      @ApiProperty(canBeNullOrNotSet=true) protected Long regionalGroupId
      The identifier of the regional group this scaling group is assigned to.
    • regionalGroupIdSpecified

      protected boolean regionalGroupIdSpecified
    • suspendedFlag

      @ApiProperty(canBeNullOrNotSet=true) protected Boolean suspendedFlag
      If true, this group is suspended.
    • suspendedFlagSpecified

      protected boolean suspendedFlagSpecified
    • terminationPolicyId

      @ApiProperty(canBeNullOrNotSet=true) protected Long terminationPolicyId
      The termination policy for the group. This determines which member to choose to delete when scaling downwards.
    • terminationPolicyIdSpecified

      protected boolean terminationPolicyIdSpecified
    • virtualGuestMemberTemplate

      @ApiProperty(canBeNullOrNotSet=true) protected Guest virtualGuestMemberTemplate
      This is the template to create guest members with. This is the same template accepted by the createObject call on SoftLayer_Virtual_Guest with some caveats. The hostname provided will have an arbitrary value appended to it for each guest created. Also, hourlyBillingFlag cannot be false, and if the datacenter is provided it must be in the region of this group. Finally, VLANs cannot be provided for the template, it will use VLANs provided to this group instead.

      Note, if this template is edited on an existing group the previous template values are not kept and are not considered during termination. This means a group's guest members could effectively be a hybrid of multiple templates because this value was changed after some guest members were created but before others were created.
    • virtualGuestMemberTemplateSpecified

      protected boolean virtualGuestMemberTemplateSpecified
    • loadBalancerCount

      @ApiProperty protected Long loadBalancerCount
      A count of collection of load balancers for this auto scale group.
    • logCount

      @ApiProperty protected Long logCount
      A count of collection of log entries for this group.
    • networkVlanCount

      @ApiProperty protected Long networkVlanCount
      A count of collection of VLANs for this auto scale group. VLANs are optional. This can contain a public or private VLAN or both. When a single VLAN for a public/private type is given it can be a non-purchased VLAN only if the minimumMemberCount on the group is >= 1. This can also contain any number of public/private purchased VLANs and members are staggered across them when scaled up.
    • policyCount

      @ApiProperty protected Long policyCount
      A count of collection of policies for this group. This can be empty.
    • virtualGuestAssetCount

      @ApiProperty protected Long virtualGuestAssetCount
      A count of collection of guests that have been pinned to this group. Guest assets are only used for certain trigger checks such as resource watches. They do not count towards the auto scaling guest counts of this group in anyway and are never automatically added or removed.
    • virtualGuestMemberCount

      @ApiProperty protected Long virtualGuestMemberCount
      A count of collection of guests that have been scaled with the group. When this group is active, the count of guests here is guaranteed to be between minimumMemberCount and maximumMemberCount inclusively.
  • Constructor Details

    • Group

      public Group()
  • Method Details

    • getAccount

      public Account getAccount()
    • setAccount

      public void setAccount​(Account account)
    • getLoadBalancers

      public List<LoadBalancer> getLoadBalancers()
    • getLogs

      public List<Log> getLogs()
    • getNetworkVlans

      public List<Vlan> getNetworkVlans()
    • getPolicies

      public List<Policy> getPolicies()
    • getRegionalGroup

      public Regional getRegionalGroup()
    • setRegionalGroup

      public void setRegionalGroup​(Regional regionalGroup)
    • getStatus

      public Status getStatus()
    • setStatus

      public void setStatus​(Status status)
    • getTerminationPolicy

      public Policy getTerminationPolicy()
    • setTerminationPolicy

      public void setTerminationPolicy​(Policy terminationPolicy)
    • getVirtualGuestAssets

      public List<Guest> getVirtualGuestAssets()
    • getVirtualGuestMembers

      public List<Guest> getVirtualGuestMembers()
    • getAccountId

      public Long getAccountId()
    • setAccountId

      public void setAccountId​(Long accountId)
    • isAccountIdSpecified

      public boolean isAccountIdSpecified()
    • unsetAccountId

      public void unsetAccountId()
    • getBalancedTerminationFlag

      public Boolean getBalancedTerminationFlag()
    • setBalancedTerminationFlag

      public void setBalancedTerminationFlag​(Boolean balancedTerminationFlag)
    • isBalancedTerminationFlagSpecified

      public boolean isBalancedTerminationFlagSpecified()
    • unsetBalancedTerminationFlag

      public void unsetBalancedTerminationFlag()
    • getCooldown

      public Long getCooldown()
    • setCooldown

      public void setCooldown​(Long cooldown)
    • isCooldownSpecified

      public boolean isCooldownSpecified()
    • unsetCooldown

      public void unsetCooldown()
    • getCreateDate

      public GregorianCalendar getCreateDate()
    • setCreateDate

      public void setCreateDate​(GregorianCalendar createDate)
    • isCreateDateSpecified

      public boolean isCreateDateSpecified()
    • unsetCreateDate

      public void unsetCreateDate()
    • getDesiredMemberCount

      public Long getDesiredMemberCount()
    • setDesiredMemberCount

      public void setDesiredMemberCount​(Long desiredMemberCount)
    • isDesiredMemberCountSpecified

      public boolean isDesiredMemberCountSpecified()
    • unsetDesiredMemberCount

      public void unsetDesiredMemberCount()
    • getId

      public Long getId()
    • setId

      public void setId​(Long id)
    • isIdSpecified

      public boolean isIdSpecified()
    • unsetId

      public void unsetId()
    • getLastActionDate

      public GregorianCalendar getLastActionDate()
    • setLastActionDate

      public void setLastActionDate​(GregorianCalendar lastActionDate)
    • isLastActionDateSpecified

      public boolean isLastActionDateSpecified()
    • unsetLastActionDate

      public void unsetLastActionDate()
    • getMaximumMemberCount

      public Long getMaximumMemberCount()
    • setMaximumMemberCount

      public void setMaximumMemberCount​(Long maximumMemberCount)
    • isMaximumMemberCountSpecified

      public boolean isMaximumMemberCountSpecified()
    • unsetMaximumMemberCount

      public void unsetMaximumMemberCount()
    • getMinimumMemberCount

      public Long getMinimumMemberCount()
    • setMinimumMemberCount

      public void setMinimumMemberCount​(Long minimumMemberCount)
    • isMinimumMemberCountSpecified

      public boolean isMinimumMemberCountSpecified()
    • unsetMinimumMemberCount

      public void unsetMinimumMemberCount()
    • getModifyDate

      public GregorianCalendar getModifyDate()
    • setModifyDate

      public void setModifyDate​(GregorianCalendar modifyDate)
    • isModifyDateSpecified

      public boolean isModifyDateSpecified()
    • unsetModifyDate

      public void unsetModifyDate()
    • getName

      public String getName()
    • setName

      public void setName​(String name)
    • isNameSpecified

      public boolean isNameSpecified()
    • unsetName

      public void unsetName()
    • getRegionalGroupId

      public Long getRegionalGroupId()
    • setRegionalGroupId

      public void setRegionalGroupId​(Long regionalGroupId)
    • isRegionalGroupIdSpecified

      public boolean isRegionalGroupIdSpecified()
    • unsetRegionalGroupId

      public void unsetRegionalGroupId()
    • getSuspendedFlag

      public Boolean getSuspendedFlag()
    • setSuspendedFlag

      public void setSuspendedFlag​(Boolean suspendedFlag)
    • isSuspendedFlagSpecified

      public boolean isSuspendedFlagSpecified()
    • unsetSuspendedFlag

      public void unsetSuspendedFlag()
    • getTerminationPolicyId

      public Long getTerminationPolicyId()
    • setTerminationPolicyId

      public void setTerminationPolicyId​(Long terminationPolicyId)
    • isTerminationPolicyIdSpecified

      public boolean isTerminationPolicyIdSpecified()
    • unsetTerminationPolicyId

      public void unsetTerminationPolicyId()
    • getVirtualGuestMemberTemplate

      public Guest getVirtualGuestMemberTemplate()
    • setVirtualGuestMemberTemplate

      public void setVirtualGuestMemberTemplate​(Guest virtualGuestMemberTemplate)
    • isVirtualGuestMemberTemplateSpecified

      public boolean isVirtualGuestMemberTemplateSpecified()
    • unsetVirtualGuestMemberTemplate

      public void unsetVirtualGuestMemberTemplate()
    • getLoadBalancerCount

      public Long getLoadBalancerCount()
    • setLoadBalancerCount

      public void setLoadBalancerCount​(Long loadBalancerCount)
    • getLogCount

      public Long getLogCount()
    • setLogCount

      public void setLogCount​(Long logCount)
    • getNetworkVlanCount

      public Long getNetworkVlanCount()
    • setNetworkVlanCount

      public void setNetworkVlanCount​(Long networkVlanCount)
    • getPolicyCount

      public Long getPolicyCount()
    • setPolicyCount

      public void setPolicyCount​(Long policyCount)
    • getVirtualGuestAssetCount

      public Long getVirtualGuestAssetCount()
    • setVirtualGuestAssetCount

      public void setVirtualGuestAssetCount​(Long virtualGuestAssetCount)
    • getVirtualGuestMemberCount

      public Long getVirtualGuestMemberCount()
    • setVirtualGuestMemberCount

      public void setVirtualGuestMemberCount​(Long virtualGuestMemberCount)
    • asService

      public Group.Service asService​(ApiClient client)
    • service

      public static Group.Service service​(ApiClient client)
    • service

      public static Group.Service service​(ApiClient client, Long id)