Class Group.Builder

  • Enclosing class:
    Group

    public static final class Group.Builder
    extends java.lang.Object
    Builder class for Group.
    • Constructor Summary

      Constructors 
      Constructor Description
      Builder()
      Constructor with parameters for the required properties of Group.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      Group build()  
      Group.Builder setChildren​(java.util.List<com.vmware.vapi.bindings.Structure> children)
      Subtree for this type within policy tree containing nested elements.
      Group.Builder setCreateTime​(java.lang.Long createTime)
      Timestamp of resource creation format: int64 This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
      Group.Builder setCreateUser​(java.lang.String createUser)
      ID of the user who created this resource This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
      Group.Builder setDescription​(java.lang.String description)
      Description of this resource
      Group.Builder setDisplayName​(java.lang.String displayName)
      Defaults to ID if not set
      Group.Builder setExpression​(java.util.List<com.vmware.vapi.bindings.Structure> expression)
      The expression list must follow below criteria: 1.
      Group.Builder setExtendedExpression​(java.util.List<com.vmware.vapi.bindings.Structure> extendedExpression)
      Extended Expression allows additional higher level context to be specified for grouping criteria.
      Group.Builder setGroupType​(java.util.List<java.lang.String> groupType)
      Possible values are: Group.GROUP_TYPE_IPADDRESS Group.GROUP_TYPE_ANTREA Group type can be specified during create and update of a group.
      Group.Builder setId​(java.lang.String id)
      Unique identifier of this resource
      Group.Builder setLastModifiedTime​(java.lang.Long lastModifiedTime)
      Timestamp of last modification format: int64 This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
      Group.Builder setLastModifiedUser​(java.lang.String lastModifiedUser)
      ID of the user who last modified this resource This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
      Group.Builder setLinks​(java.util.List<ResourceLink> links)
      The server will populate this field when returing the resource.
      Group.Builder setMarkedForDelete​(java.lang.Boolean markedForDelete)
      Intent objects are not directly deleted from the system when a delete is invoked on them.
      Group.Builder setOriginSiteId​(java.lang.String originSiteId)
      This is a UUID generated by the system for knowing which site owns an object.
      Group.Builder setOverridden​(java.lang.Boolean overridden)
      Global intent objects cannot be modified by the user.
      Group.Builder setOwnerId​(java.lang.String ownerId)
      This is a UUID generated by the system for knowing who owns this object.
      Group.Builder setParentPath​(java.lang.String parentPath)
      Path of its parent This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
      Group.Builder setPath​(java.lang.String path)
      Absolute path of this object This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
      Group.Builder setProtection​(java.lang.String protection)
      Protection status is one of the following: PROTECTED - the client who retrieved the entity is not allowed to modify it.
      Group.Builder setRealizationId​(java.lang.String realizationId)
      This is a UUID generated by the system for realizing the entity object.
      Group.Builder setReference​(java.lang.Boolean reference)
      If true, indicates that this is a remote reference group.
      Group.Builder setRelativePath​(java.lang.String relativePath)
      Path relative from its parent This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
      Group.Builder setRemotePath​(java.lang.String remotePath)
      This is the path of the object on the local managers when queried on the NSX+ service, and path of the object on NSX+ service when queried from the local managers.
      Group.Builder setResourceType​(java.lang.String resourceType)
      The type of this resource.
      Group.Builder setRevision​(java.lang.Long revision)
      The _revision property describes the current revision of the resource.
      Group.Builder setSchema​(java.lang.String schema)
      Schema for this resource This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
      Group.Builder setSelf​(SelfResourceLink self)  
      Group.Builder setState​(java.lang.String state)
      Possible values are: Group.STATE_IN_PROGRESS Group.STATE_SUCCESS Group.STATE_FAILURE Realization state of this group This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
      Group.Builder setSystemOwned​(java.lang.Boolean systemOwned)
      Indicates system owned resource This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
      Group.Builder setTags​(java.util.List<Tag> tags)
      Opaque identifiers meaningful to the API user
      Group.Builder setUniqueId​(java.lang.String uniqueId)
      This is a UUID generated by the GM/LM to uniquely identify entities in a federated environment.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • Builder

        public Builder()
        Constructor with parameters for the required properties of Group.
    • Method Detail

      • setLinks

        public Group.Builder setLinks​(java.util.List<ResourceLink> links)
        The server will populate this field when returing the resource. Ignored on PUT and POST. This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Parameters:
        links - New value for the property.
      • setSchema

        public Group.Builder setSchema​(java.lang.String schema)
        Schema for this resource This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Parameters:
        schema - New value for the property.
      • setRevision

        public Group.Builder setRevision​(java.lang.Long revision)
        The _revision property describes the current revision of the resource. To prevent clients from overwriting each other's changes, PUT operations must include the current _revision of the resource, which clients should obtain by issuing a GET operation. If the _revision provided in a PUT request is missing or stale, the operation will be rejected. format: int32
        Parameters:
        revision - New value for the property.
      • setCreateTime

        public Group.Builder setCreateTime​(java.lang.Long createTime)
        Timestamp of resource creation format: int64 This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Parameters:
        createTime - New value for the property.
      • setCreateUser

        public Group.Builder setCreateUser​(java.lang.String createUser)
        ID of the user who created this resource This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Parameters:
        createUser - New value for the property.
      • setLastModifiedTime

        public Group.Builder setLastModifiedTime​(java.lang.Long lastModifiedTime)
        Timestamp of last modification format: int64 This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Parameters:
        lastModifiedTime - New value for the property.
      • setLastModifiedUser

        public Group.Builder setLastModifiedUser​(java.lang.String lastModifiedUser)
        ID of the user who last modified this resource This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Parameters:
        lastModifiedUser - New value for the property.
      • setProtection

        public Group.Builder setProtection​(java.lang.String protection)
        Protection status is one of the following: PROTECTED - the client who retrieved the entity is not allowed to modify it. NOT_PROTECTED - the client who retrieved the entity is allowed to modify it REQUIRE_OVERRIDE - the client who retrieved the entity is a super user and can modify it, but only when providing the request header X-Allow-Overwrite=true. UNKNOWN - the _protection field could not be determined for this entity. This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Parameters:
        protection - New value for the property.
      • setSystemOwned

        public Group.Builder setSystemOwned​(java.lang.Boolean systemOwned)
        Indicates system owned resource This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Parameters:
        systemOwned - New value for the property.
      • setDescription

        public Group.Builder setDescription​(java.lang.String description)
        Description of this resource
        Parameters:
        description - New value for the property.
      • setDisplayName

        public Group.Builder setDisplayName​(java.lang.String displayName)
        Defaults to ID if not set
        Parameters:
        displayName - New value for the property.
      • setId

        public Group.Builder setId​(java.lang.String id)
        Unique identifier of this resource
        Parameters:
        id - New value for the property.
      • setResourceType

        public Group.Builder setResourceType​(java.lang.String resourceType)
        The type of this resource.
        Parameters:
        resourceType - New value for the property.
      • setTags

        public Group.Builder setTags​(java.util.List<Tag> tags)
        Opaque identifiers meaningful to the API user
        Parameters:
        tags - New value for the property.
      • setOriginSiteId

        public Group.Builder setOriginSiteId​(java.lang.String originSiteId)
        This is a UUID generated by the system for knowing which site owns an object. This is used in NSX+. This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Parameters:
        originSiteId - New value for the property.
      • setOwnerId

        public Group.Builder setOwnerId​(java.lang.String ownerId)
        This is a UUID generated by the system for knowing who owns this object. This is used in NSX+. This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Parameters:
        ownerId - New value for the property.
      • setParentPath

        public Group.Builder setParentPath​(java.lang.String parentPath)
        Path of its parent This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Parameters:
        parentPath - New value for the property.
      • setPath

        public Group.Builder setPath​(java.lang.String path)
        Absolute path of this object This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Parameters:
        path - New value for the property.
      • setRealizationId

        public Group.Builder setRealizationId​(java.lang.String realizationId)
        This is a UUID generated by the system for realizing the entity object. In most cases this should be same as 'unique_id' of the entity. However, in some cases this can be different because of entities have migrated their unique identifier to NSX Policy intent objects later in the timeline and did not use unique_id for realization. Realization id is helpful for users to debug data path to correlate the configuration with corresponding intent. This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Parameters:
        realizationId - New value for the property.
      • setRelativePath

        public Group.Builder setRelativePath​(java.lang.String relativePath)
        Path relative from its parent This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Parameters:
        relativePath - New value for the property.
      • setRemotePath

        public Group.Builder setRemotePath​(java.lang.String remotePath)
        This is the path of the object on the local managers when queried on the NSX+ service, and path of the object on NSX+ service when queried from the local managers. This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Parameters:
        remotePath - New value for the property.
      • setUniqueId

        public Group.Builder setUniqueId​(java.lang.String uniqueId)
        This is a UUID generated by the GM/LM to uniquely identify entities in a federated environment. For entities that are stretched across multiple sites, the same ID will be used on all the stretched sites. This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Parameters:
        uniqueId - New value for the property.
      • setChildren

        public Group.Builder setChildren​(java.util.List<com.vmware.vapi.bindings.Structure> children)
        Subtree for this type within policy tree containing nested elements. Note that this type is applicable to be used in Hierarchical API only.
        Parameters:
        children - New value for the property. When clients pass a value of this class as a parameter, the property must contain all the properties defined in ChildPolicyConfigResource. When methods return a value of this class as a return value, the property will contain all the properties defined in ChildPolicyConfigResource.
      • setMarkedForDelete

        public Group.Builder setMarkedForDelete​(java.lang.Boolean markedForDelete)
        Intent objects are not directly deleted from the system when a delete is invoked on them. They are marked for deletion and only when all the realized entities for that intent object gets deleted, the intent object is deleted. Objects that are marked for deletion are not returned in GET call. One can use the search API to get these objects. This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Parameters:
        markedForDelete - New value for the property.
      • setOverridden

        public Group.Builder setOverridden​(java.lang.Boolean overridden)
        Global intent objects cannot be modified by the user. However, certain global intent objects can be overridden locally by use of this property. In such cases, the overridden local values take precedence over the globally defined values for the properties. This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Parameters:
        overridden - New value for the property.
      • setExpression

        public Group.Builder setExpression​(java.util.List<com.vmware.vapi.bindings.Structure> expression)
        The expression list must follow below criteria: 1. A non-empty expression list, must be of odd size. In a list, with indices starting from 0, all non-conjunction expressions must be at even indices, separated by a conjunction expression at odd indices. 2. The total of ConditionExpression and NestedExpression in a list should not exceed 5. 3. The total of IPAddressExpression, MACAddressExpression, external IDs in an ExternalIDExpression and paths in a PathExpression must not exceed the defined Config Max limit for the form-factor of Manager nodes. 4. Each expression must be a valid Expression. See the definition of the Expression type for more information.
        Parameters:
        expression - New value for the property. When clients pass a value of this class as a parameter, the property must contain all the properties defined in Expression. When methods return a value of this class as a return value, the property will contain all the properties defined in Expression.
      • setExtendedExpression

        public Group.Builder setExtendedExpression​(java.util.List<com.vmware.vapi.bindings.Structure> extendedExpression)
        Extended Expression allows additional higher level context to be specified for grouping criteria. (e.g. user AD group) This field allow users to specified user context as the source of a firewall rule for IDFW feature. Current version only support a single IdentityGroupExpression. In the future, this might expand to support other conjunction and non-conjunction expression. The extended expression list must follow below criteria: 1. Contains a single IdentityGroupExpression. No conjunction expression is supported. 2. No other non-conjunction expression is supported, except for IdentityGroupExpression. 3. Each expression must be a valid Expression. See the definition of the Expression type for more information. 4. Extended expression are implicitly AND with expression. 5. No nesting can be supported if this value is used. 6. If a Group is using extended expression, this group must be the only member in the source field of an communication map.
        Parameters:
        extendedExpression - New value for the property. When clients pass a value of this class as a parameter, the property must contain all the properties defined in Expression. When methods return a value of this class as a return value, the property will contain all the properties defined in Expression.
      • setGroupType

        public Group.Builder setGroupType​(java.util.List<java.lang.String> groupType)
        Possible values are: Group type can be specified during create and update of a group. Empty group type indicates a 'generic' group, ie group can include any entity from the valid GroupMemberType.
        Parameters:
        groupType - New value for the property.
      • setReference

        public Group.Builder setReference​(java.lang.Boolean reference)
        If true, indicates that this is a remote reference group. Such group will have span different from the its parent domain. Default value is false. This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Parameters:
        reference - New value for the property.
      • build

        public Group build()