Class PublicIp.Builder

  • Enclosing class:
    PublicIp

    public static class PublicIp.Builder
    extends Object
    • Constructor Detail

      • Builder

        public Builder()
    • Method Detail

      • assignedEntityId

        public PublicIp.Builder assignedEntityId​(String assignedEntityId)
        The OCID of the entity the public IP is assigned to, or in the process of being assigned to.
        Parameters:
        assignedEntityId - the value to set
        Returns:
        this builder
      • assignedEntityType

        public PublicIp.Builder assignedEntityType​(PublicIp.AssignedEntityType assignedEntityType)
        The type of entity the public IP is assigned to, or in the process of being assigned to.
        Parameters:
        assignedEntityType - the value to set
        Returns:
        this builder
      • availabilityDomain

        public PublicIp.Builder availabilityDomain​(String availabilityDomain)
        The public IP’s availability domain.

        This property is set only for ephemeral public IPs that are assigned to a private IP (that is, when the scope of the public IP is set to AVAILABILITY_DOMAIN). The value is the availability domain of the assigned private IP.

        Example: Uocm:PHX-AD-1

        Parameters:
        availabilityDomain - the value to set
        Returns:
        this builder
      • compartmentId

        public PublicIp.Builder compartmentId​(String compartmentId)
        The OCID of the compartment containing the public IP.

        For an ephemeral public IP, this is the compartment of its assigned entity (which can be a private IP or a regional entity such as a NAT gateway). For a reserved public IP that is currently assigned, its compartment can be different from the assigned private IP’s.

        Parameters:
        compartmentId - the value to set
        Returns:
        this builder
      • definedTags

        public PublicIp.Builder definedTags​(Map<String,​Map<String,​Object>> definedTags)
        Defined tags for this resource.

        Each key is predefined and scoped to a namespace. Example: {“foo-namespace”: {“bar-key”: “value”}}

        Parameters:
        definedTags - the value to set
        Returns:
        this builder
      • displayName

        public PublicIp.Builder displayName​(String displayName)
        A user-friendly name.

        Does not have to be unique, and it’s changeable. Avoid entering confidential information.

        Parameters:
        displayName - the value to set
        Returns:
        this builder
      • freeformTags

        public PublicIp.Builder freeformTags​(Map<String,​String> freeformTags)
        Simple key-value pair that is applied without any predefined name, type or scope.

        Exists for cross-compatibility only. Example: {“bar-key”: “value”}

        Parameters:
        freeformTags - the value to set
        Returns:
        this builder
      • id

        public PublicIp.Builder id​(String id)
        The public IP’s Oracle ID (OCID).
        Parameters:
        id - the value to set
        Returns:
        this builder
      • ipAddress

        public PublicIp.Builder ipAddress​(String ipAddress)
        The public IP address of the publicIp object.

        Example: 203.0.113.2

        Parameters:
        ipAddress - the value to set
        Returns:
        this builder
      • lifecycleState

        public PublicIp.Builder lifecycleState​(PublicIp.LifecycleState lifecycleState)
        The public IP’s current state.
        Parameters:
        lifecycleState - the value to set
        Returns:
        this builder
      • lifetime

        public PublicIp.Builder lifetime​(PublicIp.Lifetime lifetime)
        Defines when the public IP is deleted and released back to Oracle’s public IP pool.

        EPHEMERAL: The lifetime is tied to the lifetime of its assigned entity. An ephemeral public IP must always be assigned to an entity. If the assigned entity is a private IP, the ephemeral public IP is automatically deleted when the private IP is deleted, when the VNIC is terminated, or when the instance is terminated. If the assigned entity is a NatGateway, the ephemeral public IP is automatically deleted when the NAT gateway is terminated.

        RESERVED: You control the public IP's lifetime. You can delete a reserved public IP whenever you like. It does not need to be assigned to a private IP at all times.

        For more information and comparison of the two types, see [Public IP Addresses](https://docs.oracle.com/iaas/Content/Network/Tasks/managingpublicIPs.htm).

        Parameters:
        lifetime - the value to set
        Returns:
        this builder
      • privateIpId

        public PublicIp.Builder privateIpId​(String privateIpId)
        Deprecated.

        Use assignedEntityId instead.

        The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the private IP that the public IP is currently assigned to, or in the process of being assigned to.

        *Note:** This is null if the public IP is not assigned to a private IP, or is in the process of being assigned to one.

        Parameters:
        privateIpId - the value to set
        Returns:
        this builder
      • scope

        public PublicIp.Builder scope​(PublicIp.Scope scope)
        Whether the public IP is regional or specific to a particular availability domain.

        REGION: The public IP exists within a region and is assigned to a regional entity (such as a NatGateway), or can be assigned to a private IP in any availability domain in the region. Reserved public IPs and ephemeral public IPs assigned to a regional entity have scope = REGION.

        AVAILABILITY_DOMAIN: The public IP exists within the availability domain of the entity it's assigned to, which is specified by the availabilityDomain property of the public IP object. Ephemeral public IPs that are assigned to private IPs have scope = AVAILABILITY_DOMAIN.

        Parameters:
        scope - the value to set
        Returns:
        this builder
      • timeCreated

        public PublicIp.Builder timeCreated​(Date timeCreated)
        The date and time the public IP was created, in the format defined by RFC3339.

        Example: 2016-08-25T21:10:29.600Z

        Parameters:
        timeCreated - the value to set
        Returns:
        this builder
      • publicIpPoolId

        public PublicIp.Builder publicIpPoolId​(String publicIpPoolId)
        The OCID of the pool object created in the current tenancy.
        Parameters:
        publicIpPoolId - the value to set
        Returns:
        this builder