Class ServiceDefinition

  • All Implemented Interfaces:
    com.vmware.vapi.bindings.StaticStructure, com.vmware.vapi.bindings.Structure, java.io.Serializable

    public final class ServiceDefinition
    extends java.lang.Object
    implements java.io.Serializable, com.vmware.vapi.bindings.StaticStructure
    Registering a Service is the first step in the ServiceInsertion mechanism. A ServiceDefinition is used to create a service.
    See Also:
    Serialized Form
    • Field Detail

      • ATTACHMENT_POINT_TIER0_LR

        public static final java.lang.String ATTACHMENT_POINT_TIER0_LR
        See Also:
        Constant Field Values
      • ATTACHMENT_POINT_TIER1_LR

        public static final java.lang.String ATTACHMENT_POINT_TIER1_LR
        See Also:
        Constant Field Values
      • ATTACHMENT_POINT_SERVICE_PLANE

        public static final java.lang.String ATTACHMENT_POINT_SERVICE_PLANE
        See Also:
        Constant Field Values
      • FUNCTIONALITIES_NG_FW

        public static final java.lang.String FUNCTIONALITIES_NG_FW
        See Also:
        Constant Field Values
      • FUNCTIONALITIES_IDS_IPS

        public static final java.lang.String FUNCTIONALITIES_IDS_IPS
        See Also:
        Constant Field Values
      • FUNCTIONALITIES_NET_MON

        public static final java.lang.String FUNCTIONALITIES_NET_MON
        See Also:
        Constant Field Values
      • FUNCTIONALITIES_HCX

        public static final java.lang.String FUNCTIONALITIES_HCX
        See Also:
        Constant Field Values
      • FUNCTIONALITIES_BYOD

        public static final java.lang.String FUNCTIONALITIES_BYOD
        See Also:
        Constant Field Values
      • FUNCTIONALITIES_EPP

        public static final java.lang.String FUNCTIONALITIES_EPP
        See Also:
        Constant Field Values
      • FUNCTIONALITIES_TLB

        public static final java.lang.String FUNCTIONALITIES_TLB
        See Also:
        Constant Field Values
      • FUNCTIONALITIES_MPS

        public static final java.lang.String FUNCTIONALITIES_MPS
        See Also:
        Constant Field Values
      • IMPLEMENTATIONS_NORTH_SOUTH

        public static final java.lang.String IMPLEMENTATIONS_NORTH_SOUTH
        See Also:
        Constant Field Values
      • IMPLEMENTATIONS_EAST_WEST

        public static final java.lang.String IMPLEMENTATIONS_EAST_WEST
        See Also:
        Constant Field Values
      • ON_FAILURE_POLICY_ALLOW

        public static final java.lang.String ON_FAILURE_POLICY_ALLOW
        See Also:
        Constant Field Values
      • ON_FAILURE_POLICY_BLOCK

        public static final java.lang.String ON_FAILURE_POLICY_BLOCK
        See Also:
        Constant Field Values
      • TRANSPORTS_L2_BRIDGE

        public static final java.lang.String TRANSPORTS_L2_BRIDGE
        See Also:
        Constant Field Values
      • TRANSPORTS_L3_ROUTED

        public static final java.lang.String TRANSPORTS_L3_ROUTED
        See Also:
        Constant Field Values
      • __dynamicStructureFields

        protected com.vmware.vapi.data.StructValue __dynamicStructureFields
    • Constructor Detail

      • ServiceDefinition

        public ServiceDefinition()
        Default constructor.
      • ServiceDefinition

        protected ServiceDefinition​(com.vmware.vapi.data.StructValue __dynamicStructureFields)
    • Method Detail

      • getLinks

        public java.util.List<ResourceLink> getLinks()
        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.
        Returns:
        The current value of the property.
      • setLinks

        public void 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.
      • getSchema

        public java.lang.String getSchema()
        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.
        Returns:
        The current value of the property.
      • setSchema

        public void 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.
      • getSelf

        public SelfResourceLink getSelf()
        Returns:
        The current value of the property.
      • setSelf

        public void setSelf​(SelfResourceLink self)
        Parameters:
        self - New value for the property.
      • getRevision

        public java.lang.Long getRevision()
        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
        Returns:
        The current value of the property.
      • setRevision

        public void 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.
      • getCreateTime

        public java.lang.Long getCreateTime()
        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.
        Returns:
        The current value of the property.
      • setCreateTime

        public void 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.
      • getCreateUser

        public java.lang.String getCreateUser()
        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.
        Returns:
        The current value of the property.
      • setCreateUser

        public void 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.
      • getLastModifiedTime

        public java.lang.Long getLastModifiedTime()
        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.
        Returns:
        The current value of the property.
      • setLastModifiedTime

        public void 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.
      • getLastModifiedUser

        public java.lang.String getLastModifiedUser()
        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.
        Returns:
        The current value of the property.
      • setLastModifiedUser

        public void 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.
      • getProtection

        public java.lang.String getProtection()
        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.
        Returns:
        The current value of the property.
      • setProtection

        public void 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.
      • getSystemOwned

        public java.lang.Boolean getSystemOwned()
        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.
        Returns:
        The current value of the property.
      • setSystemOwned

        public void 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.
      • getDescription

        public java.lang.String getDescription()
        Description of this resource
        Returns:
        The current value of the property.
      • setDescription

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

        public java.lang.String getDisplayName()
        Defaults to ID if not set
        Returns:
        The current value of the property.
      • setDisplayName

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

        public java.lang.String getId()
        Unique identifier of this resource
        Returns:
        The current value of the property.
      • setId

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

        public java.lang.String getResourceType()
        The type of this resource.
        Returns:
        The current value of the property.
      • setResourceType

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

        public java.util.List<Tag> getTags()
        Opaque identifiers meaningful to the API user
        Returns:
        The current value of the property.
      • setTags

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

        public java.util.List<java.lang.String> getAttachmentPoint()
        Possible values are: The point at which the service is deployed/attached for redirecting the traffic to the the partner appliance. Attachment Point is required if Service caters to any functionality other than EPP and MPS.
        Returns:
        The current value of the property.
      • setAttachmentPoint

        public void setAttachmentPoint​(java.util.List<java.lang.String> attachmentPoint)
        Possible values are: The point at which the service is deployed/attached for redirecting the traffic to the the partner appliance. Attachment Point is required if Service caters to any functionality other than EPP and MPS.
        Parameters:
        attachmentPoint - New value for the property.
      • setFunctionalities

        public void setFunctionalities​(java.util.List<java.lang.String> functionalities)
        Possible values are: The capabilities provided by the services. Needs to be one or more of the following | NG_FW - Next Generation Firewall | IDS_IPS - Intrusion Detection System / Intrusion Prevention System | NET_MON - Network Monitoring | HCX - Hybrid Cloud Exchange | BYOD - Bring Your Own Device | TLB - Transparent Load Balancer | EPP - Endpoint Protection.(Third party AntiVirus partners using NXGI should use this functionality for the service) | MPS - Malware Prevention Solution
        Parameters:
        functionalities - New value for the property.
      • getImplementations

        public java.util.List<java.lang.String> getImplementations()
        Possible values are: This indicates the insertion point of the service i.e whether the service will be used to protect North-South or East-West traffic in the datacenter.
        Returns:
        The current value of the property.
      • setImplementations

        public void setImplementations​(java.util.List<java.lang.String> implementations)
        Possible values are: This indicates the insertion point of the service i.e whether the service will be used to protect North-South or East-West traffic in the datacenter.
        Parameters:
        implementations - New value for the property.
      • getOnFailurePolicy

        public java.lang.String getOnFailurePolicy()
        Possible values are: Failure policy for the service tells datapath, the action to take i.e to Allow or Block traffic during failure scenarios. For north-south ServiceInsertion, failure policy in the service instance takes precedence. For east-west ServiceInsertion, failure policy in the service chain takes precedence. BLOCK is not supported for Endpoint protection (EPP) and MPS functionality.
        Returns:
        The current value of the property.
      • setOnFailurePolicy

        public void setOnFailurePolicy​(java.lang.String onFailurePolicy)
        Possible values are: Failure policy for the service tells datapath, the action to take i.e to Allow or Block traffic during failure scenarios. For north-south ServiceInsertion, failure policy in the service instance takes precedence. For east-west ServiceInsertion, failure policy in the service chain takes precedence. BLOCK is not supported for Endpoint protection (EPP) and MPS functionality.
        Parameters:
        onFailurePolicy - New value for the property.
      • getServiceCapability

        public ServiceCapability getServiceCapability()
        Returns:
        The current value of the property.
      • setServiceCapability

        public void setServiceCapability​(ServiceCapability serviceCapability)
        Parameters:
        serviceCapability - New value for the property.
      • getServiceDeploymentSpec

        public ServiceDeploymentSpec getServiceDeploymentSpec()
        Returns:
        The current value of the property.
      • setServiceDeploymentSpec

        public void setServiceDeploymentSpec​(ServiceDeploymentSpec serviceDeploymentSpec)
        Parameters:
        serviceDeploymentSpec - New value for the property.
      • getServiceManagerId

        public java.lang.String getServiceManagerId()
        ID of the service manager to which this service is attached with. This field is not set during creation of service. This field will be set explicitly when Service Manager is created successfully using this service. This property may be present in responses from the server, but if it is present in a request to server it will be ignored.
        Returns:
        The current value of the property.
      • setServiceManagerId

        public void setServiceManagerId​(java.lang.String serviceManagerId)
        ID of the service manager to which this service is attached with. This field is not set during creation of service. This field will be set explicitly when Service Manager is created successfully using this service. 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:
        serviceManagerId - New value for the property.
      • getTransports

        public java.util.List<java.lang.String> getTransports()
        Possible values are: Transport Type of the service, which is the mechanism of redirecting the traffic to the the partner appliance. Transport type is required if Service caters to any functionality other than EPP and MPS.
        Returns:
        The current value of the property.
      • setTransports

        public void setTransports​(java.util.List<java.lang.String> transports)
        Possible values are: Transport Type of the service, which is the mechanism of redirecting the traffic to the the partner appliance. Transport type is required if Service caters to any functionality other than EPP and MPS.
        Parameters:
        transports - New value for the property.
      • getVendorId

        public java.lang.String getVendorId()
        Id which is unique to a vendor or partner for which the service is created.
        Returns:
        The current value of the property.
      • setVendorId

        public void setVendorId​(java.lang.String vendorId)
        Id which is unique to a vendor or partner for which the service is created.
        Parameters:
        vendorId - New value for the property.
      • _getType

        public com.vmware.vapi.bindings.type.StructType _getType()
        Specified by:
        _getType in interface com.vmware.vapi.bindings.StaticStructure
      • _getDataValue

        public com.vmware.vapi.data.StructValue _getDataValue()
        Specified by:
        _getDataValue in interface com.vmware.vapi.bindings.Structure
      • _updateDataValue

        protected void _updateDataValue​(com.vmware.vapi.data.StructValue structValue)
      • _validate

        public void _validate()
        Specified by:
        _validate in interface com.vmware.vapi.bindings.StaticStructure
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Specified by:
        toString in interface com.vmware.vapi.bindings.StaticStructure
        Overrides:
        toString in class java.lang.Object
      • _hasTypeNameOf

        public boolean _hasTypeNameOf​(java.lang.Class<? extends com.vmware.vapi.bindings.Structure> clazz)
        Specified by:
        _hasTypeNameOf in interface com.vmware.vapi.bindings.Structure
      • _convertTo

        public <T extends com.vmware.vapi.bindings.Structure> T _convertTo​(java.lang.Class<T> clazz)
        Specified by:
        _convertTo in interface com.vmware.vapi.bindings.Structure
      • _setDynamicField

        public void _setDynamicField​(java.lang.String fieldName,
                                     com.vmware.vapi.data.DataValue fieldValue)
        Specified by:
        _setDynamicField in interface com.vmware.vapi.bindings.StaticStructure
      • _getDynamicField

        public com.vmware.vapi.data.DataValue _getDynamicField​(java.lang.String fieldName)
        Specified by:
        _getDynamicField in interface com.vmware.vapi.bindings.StaticStructure
      • _getDynamicFieldNames

        public java.util.Set<java.lang.String> _getDynamicFieldNames()
        Specified by:
        _getDynamicFieldNames in interface com.vmware.vapi.bindings.StaticStructure
      • _getClassType

        public static com.vmware.vapi.bindings.type.StructType _getClassType()
        WARNING: Internal method, subject to change in future versions.
        Returns:
        StructType instance representing the static bindings type for this Structure.
      • _getCanonicalName

        public java.lang.String _getCanonicalName()
        Specified by:
        _getCanonicalName in interface com.vmware.vapi.bindings.Structure
      • _getCanonicalTypeName

        public static java.lang.String _getCanonicalTypeName()
        Returns the canonical type name. See _getCanonicalName().
        Returns:
        canonical type name
      • _newInstance

        public static ServiceDefinition _newInstance​(com.vmware.vapi.data.StructValue structValue)
        WARNING: Internal method, subject to change in future versions.
        Returns new instance of this binding class and injects the provided data value.
        WARNING: The returned object is not fully initialized.
        Parameters:
        structValue - the source of the data contained in the binding object. Could contain more data than fields of this class can describe i.e. newer version of the binding object. Could be null.
        Returns:
        the static bindings StructType
      • _newInstance2

        public static ServiceDefinition _newInstance2​(com.vmware.vapi.data.StructValue structValue)
        WARNING: Internal method, subject to change in future versions.
        Serves as a versioning mechanism.