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 Detail

      • 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.
      • 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.
      • 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
      • 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
      • idSpecified

        protected boolean idSpecified
      • 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
      • modifyDateSpecified

        protected boolean modifyDateSpecified
      • nameSpecified

        protected boolean nameSpecified
      • regionalGroupIdSpecified

        protected boolean regionalGroupIdSpecified
      • 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 Detail

      • Group

        public Group()
    • Method Detail

      • getAccount

        public Account getAccount()
      • setAccount

        public void setAccount​(Account account)
      • getLogs

        public List<Log> getLogs()
      • getNetworkVlans

        public List<Vlan> getNetworkVlans()
      • 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()
      • 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()
      • 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()
      • 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)