Class CreateZoneDetails


  • @Generated(value="OracleSDKGenerator",
               comments="API Version: 20180115")
    public final class CreateZoneDetails
    extends CreateZoneBaseDetails
    The body for defining a new zone.

    *Warning:** Oracle recommends that you avoid using any confidential information when you supply string values using the API.
    Note: Objects should always be created or deserialized using the CreateZoneDetails.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 CreateZoneDetails.Builder, which maintain a set of all explicitly set fields called CreateZoneDetails.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

      • getZoneType

        public CreateZoneDetails.ZoneType getZoneType()
        The type of the zone.

        Must be either PRIMARY or SECONDARY. SECONDARY is only supported for GLOBAL zones.

        Returns:
        the value
      • getViewId

        public String getViewId()
        This value will be null for zones in the global DNS.
        Returns:
        the value
      • getScope

        public Scope getScope()
        The scope of the zone.
        Returns:
        the value
      • getExternalMasters

        public List<ExternalMaster> getExternalMasters()
        External master servers for the zone.

        externalMasters becomes a required parameter when the zoneType value is SECONDARY.

        Returns:
        the value
      • getExternalDownstreams

        public List<ExternalDownstream> getExternalDownstreams()
        External secondary servers for the zone.

        This field is currently not supported when zoneType is SECONDARY or scope is PRIVATE.

        Returns:
        the value
      • getDnssecState

        public ZoneDnssecState getDnssecState()
        The state of DNSSEC on the zone.

        For DNSSEC to function, every parent zone in the DNS tree up to the top-level domain (or an independent trust anchor) must also have DNSSEC correctly set up. After enabling DNSSEC, you must add a DS record to the zone's parent zone containing the KskDnssecKeyVersion data. You can find the DS data in the dsData attribute of the KskDnssecKeyVersion. Then, use the PromoteZoneDnssecKeyVersion operation to promote the KskDnssecKeyVersion.

        New KskDnssecKeyVersions are generated annually, a week before the existing KskDnssecKeyVersion's expiration. To rollover a KskDnssecKeyVersion, you must replace the parent zone's DS record containing the old KskDnssecKeyVersion data with the data from the new KskDnssecKeyVersion.

        To remove the old DS record without causing service disruption, wait until the old DS record's TTL has expired, and the new DS record has propagated. After the DS replacement has been completed, then the PromoteZoneDnssecKeyVersion operation must be called.

        Metrics are emitted in the oci_dns namespace daily for each KskDnssecKeyVersion indicating how many days are left until expiration. We recommend that you set up alarms and notifications for KskDnssecKeyVersion expiration so that the necessary parent zone updates can be made and the PromoteZoneDnssecKeyVersion operation can be called.

        Enabling DNSSEC results in additional records in DNS responses which increases their size and can cause higher response latency.

        For more information, see [DNSSEC](https://docs.oracle.com/iaas/Content/DNS/Concepts/dnssec.htm).

        Returns:
        the value
      • toString

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