Class DnsClient

  • All Implemented Interfaces:
    Dns, AutoCloseable

    @Generated(value="OracleSDKGenerator",
               comments="API Version: 20180115")
    public class DnsClient
    extends BaseSyncClient
    implements Dns
    • Field Detail

      • SERVICE

        public static final Service SERVICE
        Service instance for Dns.
      • clientCommonLibraryVersion

        public final String clientCommonLibraryVersion
        Compatible SDK version, provided by the codegen.
      • minimumClientCommonLibraryVersionFromClient

        public final Optional<String> minimumClientCommonLibraryVersionFromClient
        Minimum compatible SDK version, maybe provided by the codegen.
    • Method Detail

      • builder

        public static DnsClient.Builder builder()
        Create a builder for this client.
        Returns:
        builder
      • setRegion

        public void setRegion​(Region region)
        Description copied from interface: Dns
        Sets the region to call (ex, Region.US_PHOENIX_1).

        Note, this will call setEndpoint after resolving the endpoint. If the service is not available in this Region, however, an IllegalArgumentException will be raised.

        Specified by:
        setRegion in interface Dns
        Parameters:
        region - The region of the service.
      • setRegion

        public void setRegion​(String regionId)
        Description copied from interface: Dns
        Sets the region to call (ex, ‘us-phoenix-1’).

        Note, this will first try to map the region ID to a known Region and call setRegion.

        If no known Region could be determined, it will create an endpoint based on the default endpoint format (Region.formatDefaultRegionEndpoint(Service, String) and then call setEndpoint.

        Specified by:
        setRegion in interface Dns
        Parameters:
        regionId - The public region ID.
      • changeResolverCompartment

        public ChangeResolverCompartmentResponse changeResolverCompartment​(ChangeResolverCompartmentRequest request)
        Description copied from interface: Dns
        Moves a resolver into a different compartment along with its protected default view and any endpoints.

        Zones in the default view are not moved. VCN-dedicated resolvers are initially created in the same compartment as their corresponding VCN, but can then be moved to a different compartment.

        Specified by:
        changeResolverCompartment in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • changeViewCompartment

        public ChangeViewCompartmentResponse changeViewCompartment​(ChangeViewCompartmentRequest request)
        Description copied from interface: Dns
        Moves a view into a different compartment.

        To change the compartment of a protected view, change the compartment of its corresponding resolver.

        Specified by:
        changeViewCompartment in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • changeZoneCompartment

        public ChangeZoneCompartmentResponse changeZoneCompartment​(ChangeZoneCompartmentRequest request)
        Description copied from interface: Dns
        Moves a zone into a different compartment.

        Protected zones cannot have their compartment changed. When the zone name is provided as a path parameter and `PRIVATE` is used for the scope query parameter then the viewId query parameter is required.

        *Note:** All SteeringPolicyAttachment objects associated with this zone will also be moved into the provided compartment.

        Specified by:
        changeZoneCompartment in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • createResolverEndpoint

        public CreateResolverEndpointResponse createResolverEndpoint​(CreateResolverEndpointRequest request)
        Description copied from interface: Dns
        Creates a new resolver endpoint in the same compartment as the resolver.
        Specified by:
        createResolverEndpoint in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • createSteeringPolicyAttachment

        public CreateSteeringPolicyAttachmentResponse createSteeringPolicyAttachment​(CreateSteeringPolicyAttachmentRequest request)
        Description copied from interface: Dns
        Creates a new attachment between a steering policy and a domain, giving the policy permission to answer queries for the specified domain.

        A steering policy must be attached to a domain for the policy to answer DNS queries for that domain.

        For the purposes of access control, the attachment is automatically placed into the same compartment as the domain's zone.

        Specified by:
        createSteeringPolicyAttachment in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • createTsigKey

        public CreateTsigKeyResponse createTsigKey​(CreateTsigKeyRequest request)
        Description copied from interface: Dns
        Creates a new TSIG key in the specified compartment.

        There is no opc-retry-token header since TSIG key names must be globally unique.

        Specified by:
        createTsigKey in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • createView

        public CreateViewResponse createView​(CreateViewRequest request)
        Description copied from interface: Dns
        Creates a new view in the specified compartment.
        Specified by:
        createView in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • createZone

        public CreateZoneResponse createZone​(CreateZoneRequest request)
        Description copied from interface: Dns
        Creates a new zone in the specified compartment.

        Private zones must have a zone type of `PRIMARY`. Creating a private zone at or under `oraclevcn.com` within the default protected view of a VCN-dedicated resolver is not permitted.

        Specified by:
        createZone in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • createZoneFromZoneFile

        public CreateZoneFromZoneFileResponse createZoneFromZoneFile​(CreateZoneFromZoneFileRequest request)
        Description copied from interface: Dns
        Creates a new zone from a zone file in the specified compartment.

        Not supported for private zones.

        Note: This operation consumes a stream.

        If the stream supports InputStream.mark(int) and InputStream.reset(), when a retry is necessary, the stream is reset so it starts at the beginning (or whatever the stream's position was at the time this operation is called}.

        Note this means that if the caller has used InputStream.mark(int) before, then the mark will not be the same anymore after this operation, and a subsequent call to InputStream.reset() by the caller will reset the stream not to the caller's mark, but to the position the stream was in when this operation was called.

        If the stream is a FileInputStream, and the stream's FileChannel position can be changed (like for a regular file), the stream will be wrapped in such a way that it does provide support for InputStream.mark(int) and InputStream.reset(). Then the same procedure as above is followed. If the stream's FileChannel position cannot be changed (like for a named pipe), then the stream's contents will be buffered in memory, as described below.

        If the stream does not support InputStream.mark(int) and InputStream.reset(), then the stream is wrapped in a BufferedInputStream, which means the entire contents may be buffered in memory. Then the same procedure as above is followed.

        The contents of the stream, except when the stream is a FileInputStream whose FileChannel position can be changed, should be less than 2 GiB in size if retries are used. This is because streams 2 GiB in size or larger do no guarantee that mark-and-reset can be performed. If the stream is larger, do not use built-in retries and manage retries yourself.

        Specified by:
        createZoneFromZoneFile in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • deleteDomainRecords

        public DeleteDomainRecordsResponse deleteDomainRecords​(DeleteDomainRecordsRequest request)
        Description copied from interface: Dns
        Deletes all records at the specified zone and domain.

        When the zone name is provided as a path parameter and `PRIVATE` is used for the scope query parameter then the viewId query parameter is required.

        Specified by:
        deleteDomainRecords in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • deleteRRSet

        public DeleteRRSetResponse deleteRRSet​(DeleteRRSetRequest request)
        Description copied from interface: Dns
        Deletes all records in the specified RRSet.

        When the zone name is provided as a path parameter and `PRIVATE` is used for the scope query parameter then the viewId query parameter is required.

        Specified by:
        deleteRRSet in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • deleteResolverEndpoint

        public DeleteResolverEndpointResponse deleteResolverEndpoint​(DeleteResolverEndpointRequest request)
        Description copied from interface: Dns
        Deletes the specified resolver endpoint.

        Note that attempting to delete a resolver endpoint in the DELETED lifecycle state will result in a `404` response to be consistent with other operations of the API. Resolver endpoints may not be deleted if they are referenced by a resolver rule.

        Specified by:
        deleteResolverEndpoint in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • deleteSteeringPolicy

        public DeleteSteeringPolicyResponse deleteSteeringPolicy​(DeleteSteeringPolicyRequest request)
        Description copied from interface: Dns
        Deletes the specified steering policy.

        A `204` response indicates that the delete has been successful. Deletion will fail if the policy is attached to any zones. To detach a policy from a zone, see `DeleteSteeringPolicyAttachment`.

        Specified by:
        deleteSteeringPolicy in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • deleteTsigKey

        public DeleteTsigKeyResponse deleteTsigKey​(DeleteTsigKeyRequest request)
        Description copied from interface: Dns
        Deletes the specified TSIG key.
        Specified by:
        deleteTsigKey in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • deleteView

        public DeleteViewResponse deleteView​(DeleteViewRequest request)
        Description copied from interface: Dns
        Deletes the specified view.

        Note that attempting to delete a view in the DELETED lifecycleState will result in a `404` response to be consistent with other operations of the API. Views cannot be deleted if they are referenced by non-deleted zones or resolvers. Protected views cannot be deleted.

        Specified by:
        deleteView in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • deleteZone

        public DeleteZoneResponse deleteZone​(DeleteZoneRequest request)
        Description copied from interface: Dns
        Deletes the specified zone and all its steering policy attachments.

        A `204` response indicates that the zone has been successfully deleted. Protected zones cannot be deleted. When the zone name is provided as a path parameter and `PRIVATE` is used for the scope query parameter then the viewId query parameter is required.

        Specified by:
        deleteZone in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • getDomainRecords

        public GetDomainRecordsResponse getDomainRecords​(GetDomainRecordsRequest request)
        Description copied from interface: Dns
        Gets a list of all records at the specified zone and domain.

        The results are sorted by `rtype` in alphabetical order by default. You can optionally filter and/or sort the results using the listed parameters. When the zone name is provided as a path parameter and `PRIVATE` is used for the scope query parameter then the viewId query parameter is required.

        Specified by:
        getDomainRecords in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • getRRSet

        public GetRRSetResponse getRRSet​(GetRRSetRequest request)
        Description copied from interface: Dns
        Gets a list of all records in the specified RRSet.

        The results are sorted by `recordHash` by default. When the zone name is provided as a path parameter and `PRIVATE` is used for the scope query parameter then the viewId query parameter is required.

        Specified by:
        getRRSet in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • getResolver

        public GetResolverResponse getResolver​(GetResolverRequest request)
        Description copied from interface: Dns
        Gets information about a specific resolver.

        Note that attempting to get a resolver in the DELETED lifecycleState will result in a `404` response to be consistent with other operations of the API.

        Specified by:
        getResolver in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • getResolverEndpoint

        public GetResolverEndpointResponse getResolverEndpoint​(GetResolverEndpointRequest request)
        Description copied from interface: Dns
        Gets information about a specific resolver endpoint.

        Note that attempting to get a resolver endpoint in the DELETED lifecycle state will result in a `404` response to be consistent with other operations of the API.

        Specified by:
        getResolverEndpoint in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • getSteeringPolicy

        public GetSteeringPolicyResponse getSteeringPolicy​(GetSteeringPolicyRequest request)
        Description copied from interface: Dns
        Gets information about the specified steering policy.
        Specified by:
        getSteeringPolicy in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • getTsigKey

        public GetTsigKeyResponse getTsigKey​(GetTsigKeyRequest request)
        Description copied from interface: Dns
        Gets information about the specified TSIG key.
        Specified by:
        getTsigKey in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • getView

        public GetViewResponse getView​(GetViewRequest request)
        Description copied from interface: Dns
        Gets information about a specific view.

        Note that attempting to get a view in the DELETED lifecycleState will result in a `404` response to be consistent with other operations of the API.

        Specified by:
        getView in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • getZone

        public GetZoneResponse getZone​(GetZoneRequest request)
        Description copied from interface: Dns
        Gets information about the specified zone, including its creation date, zone type, and serial.

        When the zone name is provided as a path parameter and `PRIVATE` is used for the scope query parameter then the viewId query parameter is required.

        Specified by:
        getZone in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • getZoneContent

        public GetZoneContentResponse getZoneContent​(GetZoneContentRequest request)
        Description copied from interface: Dns
        Gets the requested zone’s zone file.
        Specified by:
        getZoneContent in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • getZoneRecords

        public GetZoneRecordsResponse getZoneRecords​(GetZoneRecordsRequest request)
        Description copied from interface: Dns
        Gets all records in the specified zone.

        The results are sorted by `domain` in alphabetical order by default. For more information about records, see [Resource Record (RR) TYPEs](https://www.iana.org/assignments/dns-parameters/dns-parameters.xhtml#dns-parameters-4). When the zone name is provided as a path parameter and `PRIVATE` is used for the scope query parameter then the viewId query parameter is required.

        Specified by:
        getZoneRecords in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • listResolverEndpoints

        public ListResolverEndpointsResponse listResolverEndpoints​(ListResolverEndpointsRequest request)
        Description copied from interface: Dns
        Gets a list of all endpoints within a resolver.

        The collection can be filtered by name or lifecycle state. It can be sorted on creation time or name both in ASC or DESC order. Note that when no lifecycleState query parameter is provided, the collection does not include resolver endpoints in the DELETED lifecycle state to be consistent with other operations of the API.

        Specified by:
        listResolverEndpoints in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • listResolvers

        public ListResolversResponse listResolvers​(ListResolversRequest request)
        Description copied from interface: Dns
        Gets a list of all resolvers within a compartment.

        The collection can be filtered by display name, id, or lifecycle state. It can be sorted on creation time or displayName both in ASC or DESC order. Note that when no lifecycleState query parameter is provided, the collection does not include resolvers in the DELETED lifecycleState to be consistent with other operations of the API.

        Specified by:
        listResolvers in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • listSteeringPolicies

        public ListSteeringPoliciesResponse listSteeringPolicies​(ListSteeringPoliciesRequest request)
        Description copied from interface: Dns
        Gets a list of all steering policies in the specified compartment.
        Specified by:
        listSteeringPolicies in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • listTsigKeys

        public ListTsigKeysResponse listTsigKeys​(ListTsigKeysRequest request)
        Description copied from interface: Dns
        Gets a list of all TSIG keys in the specified compartment.
        Specified by:
        listTsigKeys in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • listViews

        public ListViewsResponse listViews​(ListViewsRequest request)
        Description copied from interface: Dns
        Gets a list of all views within a compartment.

        The collection can be filtered by display name, id, or lifecycle state. It can be sorted on creation time or displayName both in ASC or DESC order. Note that when no lifecycleState query parameter is provided, the collection does not include views in the DELETED lifecycleState to be consistent with other operations of the API.

        Specified by:
        listViews in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • listZoneTransferServers

        public ListZoneTransferServersResponse listZoneTransferServers​(ListZoneTransferServersRequest request)
        Description copied from interface: Dns
        Gets a list of IP addresses of OCI nameservers for inbound and outbound transfer of zones in the specified compartment (which must be the root compartment of a tenancy) that transfer zone data with external master or downstream nameservers.
        Specified by:
        listZoneTransferServers in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • listZones

        public ListZonesResponse listZones​(ListZonesRequest request)
        Description copied from interface: Dns
        Gets a list of all zones in the specified compartment.

        The collection can be filtered by name, time created, scope, associated view, and zone type. Filtering by view is only supported for private zones.

        Specified by:
        listZones in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • patchDomainRecords

        public PatchDomainRecordsResponse patchDomainRecords​(PatchDomainRecordsRequest request)
        Description copied from interface: Dns
        Updates records in the specified zone at a domain.

        You can update one record or all records for the specified zone depending on the changes provided in the request body. You can also add or remove records using this function. When the zone name is provided as a path parameter and `PRIVATE` is used for the scope query parameter then the viewId query parameter is required.

        Specified by:
        patchDomainRecords in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • patchRRSet

        public PatchRRSetResponse patchRRSet​(PatchRRSetRequest request)
        Description copied from interface: Dns
        Updates records in the specified RRSet.

        When the zone name is provided as a path parameter and `PRIVATE` is used for the scope query parameter then the viewId query parameter is required.

        Specified by:
        patchRRSet in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • patchZoneRecords

        public PatchZoneRecordsResponse patchZoneRecords​(PatchZoneRecordsRequest request)
        Description copied from interface: Dns
        Updates a collection of records in the specified zone.

        You can update one record or all records for the specified zone depending on the changes provided in the request body. You can also add or remove records using this function. When the zone name is provided as a path parameter and `PRIVATE` is used for the scope query parameter then the viewId query parameter is required.

        Specified by:
        patchZoneRecords in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • promoteZoneDnssecKeyVersion

        public PromoteZoneDnssecKeyVersionResponse promoteZoneDnssecKeyVersion​(PromoteZoneDnssecKeyVersionRequest request)
        Description copied from interface: Dns
        Promotes a specified DnssecKeyVersion on the zone.

        If the `DnssecKeyVersion` identified in the request body is a key signing key (KSK) that is replacing another `DnssecKeyVersion`, then the old `DnssecKeyVersion` is scheduled for removal from the zone.

        For key signing keys (KSKs), you must create the DS record with the new key information **before** promoting the new key to establish a chain of trust. To avoid a service disruption, remove the old DS record as soon as its TTL (time to live) expires.

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

        Specified by:
        promoteZoneDnssecKeyVersion in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • stageZoneDnssecKeyVersion

        public StageZoneDnssecKeyVersionResponse stageZoneDnssecKeyVersion​(StageZoneDnssecKeyVersionRequest request)
        Description copied from interface: Dns
        Stages a new DnssecKeyVersion on the zone.

        Staging is a process that generates a new "successor" key version that replaces an existing "predecessor" key version. Note: A new key-signing key (KSK) version is inert until you update the parent zone DS records.

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

        Specified by:
        stageZoneDnssecKeyVersion in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • updateDomainRecords

        public UpdateDomainRecordsResponse updateDomainRecords​(UpdateDomainRecordsRequest request)
        Description copied from interface: Dns
        Replaces records in the specified zone at a domain with the records specified in the request body.

        If a specified record does not exist, it will be created. If the record exists, then it will be updated to represent the record in the body of the request. If a record in the zone does not exist in the request body, the record will be removed from the zone. When the zone name is provided as a path parameter and `PRIVATE` is used for the scope query parameter then the viewId query parameter is required.

        Specified by:
        updateDomainRecords in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • updateRRSet

        public UpdateRRSetResponse updateRRSet​(UpdateRRSetRequest request)
        Description copied from interface: Dns
        Replaces records in the specified RRSet.

        When the zone name is provided as a path parameter and `PRIVATE` is used for the scope query parameter then the viewId query parameter is required.

        Specified by:
        updateRRSet in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • updateResolver

        public UpdateResolverResponse updateResolver​(UpdateResolverRequest request)
        Description copied from interface: Dns
        Updates the specified resolver with your new information.
        Specified by:
        updateResolver in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • updateResolverEndpoint

        public UpdateResolverEndpointResponse updateResolverEndpoint​(UpdateResolverEndpointRequest request)
        Description copied from interface: Dns
        Updates the specified resolver endpoint with your new information.
        Specified by:
        updateResolverEndpoint in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • updateSteeringPolicy

        public UpdateSteeringPolicyResponse updateSteeringPolicy​(UpdateSteeringPolicyRequest request)
        Description copied from interface: Dns
        Updates the configuration of the specified steering policy.
        Specified by:
        updateSteeringPolicy in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • updateTsigKey

        public UpdateTsigKeyResponse updateTsigKey​(UpdateTsigKeyRequest request)
        Description copied from interface: Dns
        Updates the specified TSIG key.
        Specified by:
        updateTsigKey in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • updateView

        public UpdateViewResponse updateView​(UpdateViewRequest request)
        Description copied from interface: Dns
        Updates the specified view with your new information.
        Specified by:
        updateView in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • updateZone

        public UpdateZoneResponse updateZone​(UpdateZoneRequest request)
        Description copied from interface: Dns
        Updates the zone with the specified information.

        Global secondary zones may have their external masters updated. For more information about secondary zones, see [Manage DNS Service Zone](https://docs.oracle.com/iaas/Content/DNS/Tasks/managingdnszones.htm). When the zone name is provided as a path parameter and `PRIVATE` is used for the scope query parameter then the viewId query parameter is required.

        Specified by:
        updateZone in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • updateZoneRecords

        public UpdateZoneRecordsResponse updateZoneRecords​(UpdateZoneRecordsRequest request)
        Description copied from interface: Dns
        Replaces records in the specified zone with the records specified in the request body.

        If a specified record does not exist, it will be created. If the record exists, then it will be updated to represent the record in the body of the request. If a record in the zone does not exist in the request body, the record will be removed from the zone. When the zone name is provided as a path parameter and `PRIVATE` is used for the scope query parameter then the viewId query parameter is required.

        Specified by:
        updateZoneRecords in interface Dns
        Parameters:
        request - The request object containing the details to send
        Returns:
        A response object containing details about the completed operation
      • getWaiters

        public DnsWaiters getWaiters()
        Description copied from interface: Dns
        Gets the pre-configured waiters available for resources for this service.
        Specified by:
        getWaiters in interface Dns
        Returns:
        The service waiters.
      • newWaiters

        public DnsWaiters newWaiters​(WorkRequest workRequestClient)
        Description copied from interface: Dns
        Creates a new DnsWaiters for resources for this service.
        Specified by:
        newWaiters in interface Dns
        Parameters:
        workRequestClient - The work request service client used to query for work request status
        Returns:
        The service waiters.
      • getPaginators

        public DnsPaginators getPaginators()
        Description copied from interface: Dns
        Gets the pre-configured paginators available for list operations in this service which may return multiple pages of data.

        These paginators provide an Iterable interface so that service responses, or resources/records, can be iterated through without having to manually deal with pagination and page tokens.

        Specified by:
        getPaginators in interface Dns
        Returns:
        The service paginators.
      • useRealmSpecificEndpointTemplate

        public void useRealmSpecificEndpointTemplate​(boolean useOfRealmSpecificEndpointTemplateEnabled)
        This method should be used to enable or disable the use of realm-specific endpoint template.

        The default value is null. To enable the use of endpoint template defined for the realm in use, set the flag to true To disable the use of endpoint template defined for the realm in use, set the flag to false

        Parameters:
        useOfRealmSpecificEndpointTemplateEnabled - This flag can be set to true or false to enable or disable the use of realm-specific endpoint template respectively
      • populateServiceParametersInEndpoint

        public final void populateServiceParametersInEndpoint​(String endpoint,
                                                              Map<String,​Object> requiredParametersMap)
        Populate the parameters in the endpoint with its corresponding value and update the base endpoint.

        The value will be populated iff the parameter in endpoint is a required request path parameter or a required request query parameter. If not, the parameter in the endpoint will be ignored and left blank.

        Parameters:
        endpoint - The endpoint template in use
        requiredParametersMap - Map of parameter name as key and value set in request path or query parameter as value
      • updateBaseEndpoint

        public final void updateBaseEndpoint​(String endpoint)
        This method should be used for parameterized endpoint templates only.

        This does not include {region} and {secondLevelDomain} parameters.

        Parameters:
        endpoint - The updated endpoint to use
      • setEndpoint

        public final void setEndpoint​(String endpoint)
      • getEndpoint

        public final String getEndpoint()
      • refreshClient

        public final void refreshClient()
        Rebuild the backing HttpClient.

        This will call ClientConfigurators again, and can be used to e.g. refresh the SSL certificate.

      • getClientCommonLibraryVersion

        public String getClientCommonLibraryVersion()
      • getMinimumClientCommonLibraryVersionFromClient

        public Optional<String> getMinimumClientCommonLibraryVersionFromClient()