Class PublicIp


  • @Generated(value="OracleSDKGenerator",
               comments="API Version: 20160918")
    public final class PublicIp
    extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel
    A public IP is a conceptual term that refers to a public IP address and related properties.

    The publicIp object is the API representation of a public IP.

    There are two types of public IPs: 1. Ephemeral 2. Reserved

    For more information and comparison of the two types, see [Public IP Addresses](https://docs.oracle.com/iaas/Content/Network/Tasks/managingpublicIPs.htm).
    Note: Objects should always be created or deserialized using the PublicIp.Builder. This model distinguishes fields that are null because they are unset from fields that are explicitly set to null. This is done in the setter methods of the PublicIp.Builder, which maintain a set of all explicitly set fields called PublicIp.Builder.__explicitlySet__. The hashCode() and equals(Object) methods are implemented to take the explicitly set fields into account. The constructor, on the other hand, does not take the explicitly set fields into account (since the constructor cannot distinguish explicit null from unset null).

    • Method Detail

      • getAvailabilityDomain

        public String getAvailabilityDomain()
        The public IP’s availability domain.

        This property is set only for ephemeral public IPs (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

        Returns:
        the value
      • getCompartmentId

        public String getCompartmentId()
        The OCID of the compartment containing the public IP.

        For an ephemeral public IP, this is the same compartment as the private IP’s. For a reserved public IP that is currently assigned, this can be a different compartment than the assigned private IP’s.

        Returns:
        the value
      • getDefinedTags

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

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

        Returns:
        the value
      • getDisplayName

        public String getDisplayName()
        A user-friendly name.

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

        Returns:
        the value
      • getFreeformTags

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

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

        Returns:
        the value
      • getId

        public String getId()
        The public IP’s Oracle ID (OCID).
        Returns:
        the value
      • getIpAddress

        public String getIpAddress()
        The public IP address of the publicIp object.

        Example: 203.0.113.2

        Returns:
        the value
      • getLifecycleState

        public PublicIp.LifecycleState getLifecycleState()
        The public IP’s current state.
        Returns:
        the value
      • getLifetime

        public PublicIp.Lifetime getLifetime()
        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 private IP. The ephemeral public IP is automatically deleted when its private IP is deleted, when the VNIC is terminated, or when the instance is terminated. An ephemeral public IP must always be assigned to a private IP.

        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).

        Returns:
        the value
      • getPrivateIpId

        public String getPrivateIpId()
        The OCID of the private IP that the public IP is currently assigned to, or in the process of being assigned to.
        Returns:
        the value
      • getScope

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

        REGION: The public IP exists within a region and can be assigned to a private IP in any availability domain in the region. Reserved public IPs have scope = REGION.

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

        Returns:
        the value
      • getTimeCreated

        public Date getTimeCreated()
        The date and time the public IP was created, in the format defined by RFC3339.

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

        Returns:
        the value
      • toString

        public String toString()
        Overrides:
        toString in class com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel
      • toString

        public String toString​(boolean includeByteArrayContents)
        Return a string representation of the object.
        Parameters:
        includeByteArrayContents - true to include the full contents of byte arrays
        Returns:
        string representation
      • equals

        public boolean equals​(Object o)
        Overrides:
        equals in class com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel