/**
 * RoverCloudService API
 * A description of the RoverCloudService API.
 * OpenAPI spec version: 20201210
 *
 *
 * NOTE: This class is auto generated by OracleSDKGenerator.
 * Do not edit the class manually.
 *
 * Copyright (c) 2020, 2022, Oracle and/or its affiliates.  All rights reserved.
 * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
 */ import common = require ( "oci-common" ) ; import * as requests from "./request" ; import * as model from "./model" ; import * as responses from "./response" ; import { RoverClusterWaiter } from "./rovercluster-waiter" ; import { RoverEntitlementWaiter } from "./roverentitlement-waiter" ; import { RoverNodeWaiter } from "./rovernode-waiter" ; import { composeResponse , composeRequest , GenericRetrier } from "oci-common" ; export enum RoverClusterApiKeys { } /**
 * This service client uses  common . CircuitBreaker . DefaultConfiguration for all the operations by default if no circuit breaker configuration is defined by the user.
  export class RoverClusterClient { protected static serviceEndpointTemplate = "https://rover.{region}.oci.{secondLevelDomain}" ; protected "_endpoint" : string = "" ; protected "_defaultHeaders" : any = { } ; protected "_waiters" : RoverClusterWaiter ; protected "_clientConfiguration" : common . ClientConfiguration ; protected _circuitBreaker = null ; protected _httpClient : common . HttpClient ; constructor ( params , clientConfiguration ? ) { const requestSigner = params . authenticationDetailsProvider ? new common . DefaultRequestSigner ( params . authenticationDetailsProvider ) : null ; if ( clientConfiguration ) { this . _clientConfiguration = clientConfiguration ; this . _circuitBreaker = clientConfiguration . circuitBreaker ? clientConfiguration . circuitBreaker ! . circuit : null ; } const specCircuitBreakerEnabled = true ; if ( ! this . _circuitBreaker && common . utils . isCircuitBreakerSystemEnabled ( clientConfiguration ! ) && ( specCircuitBreakerEnabled || common . CircuitBreaker . DefaultCircuitBreakerOverriden ) ) { this . _circuitBreaker = new common . CircuitBreaker ( ) . circuit ; } this . _httpClient = params . httpClient || new common . FetchHttpClient ( requestSigner , this . _circuitBreaker ) ; if ( params . authenticationDetailsProvider && common . isRegionProvider ( params . authenticationDetailsProvider ) ) { const provider = params . authenticationDetailsProvider ; if ( provider . getRegion ( ) ) { this . region = provider . getRegion ( ) ; } } } /**
     * Get the endpoint that is being used to call (ex, https://www.example.com).
     */ public get endpoint ( ) { return this . _endpoint ; } param endpoint public set endpoint ( endpoint ) { this . _endpoint = endpoint ; this . _endpoint = this . _endpoint + "/20201210" ; if ( this . logger ) this . logger . info ( `RoverClusterClient endpoint set to ${ this . _endpoint }` ) ; } public get logger ( ) { return common . LOG . logger ; } /**
     * Sets the region to call (ex, Region.US_PHOENIX_1).
     * Note, this will call  {@link #endpoint(String) endpoint} after resolving the endpoint.
     *  param region public set region ( region ) { this . endpoint = common . EndpointBuilder . createEndpointFromRegion ( RoverClusterClient . serviceEndpointTemplate , region ) ; } /**
     * Sets the regionId to call (ex, 'us-phoenix-1').
     *
     * Note, this will first try to map the region ID to a known Region and call  {@link #region(Region) region} .
     * If no known Region could be determined, it will create an endpoint assuming its in default Realm OC1
     * and then call  {@link #endpoint(String) endpoint} .
     *  param regionId public set regionId ( regionId ) { this . endpoint = common . EndpointBuilder . createEndpointFromRegionId ( RoverClusterClient . serviceEndpointTemplate , regionId ) ; } param config return public createWaiters ( config ? ) { this . _waiters = new RoverClusterWaiter ( this , config ) ; return this . _waiters ; } return public getWaiters ( ) { if ( this . _waiters ) { return this . _waiters ; } throw Error ( "Waiters do not exist. Please create waiters." ) ; } /**
     * Moves a cluster into a different compartment.
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param ChangeRoverClusterCompartmentRequest return throws example Click  https to see how to use ChangeRoverClusterCompartment API.
      public async changeRoverClusterCompartment ( changeRoverClusterCompartmentRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverClusterClient#changeRoverClusterCompartment." ) ; const pathParams = { "{roverClusterId}" : changeRoverClusterCompartmentRequest . roverClusterId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "if-match" : changeRoverClusterCompartmentRequest . ifMatch , "opc-request-id" : changeRoverClusterCompartmentRequest . opcRequestId , "opc-retry-token" : changeRoverClusterCompartmentRequest . opcRetryToken } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , changeRoverClusterCompartmentRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverClusters/{roverClusterId}/actions/changeCompartment" , method : "POST" , bodyContent : common . ObjectSerializer . serialize ( changeRoverClusterCompartmentRequest . changeRoverClusterCompartmentDetails , "ChangeRoverClusterCompartmentDetails" , model . ChangeRoverClusterCompartmentDetails . getJsonObj ) , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . ChangeRoverClusterCompartmentResponse > { } , responseHeaders : [ { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Creates a new RoverCluster.
     *
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param CreateRoverClusterRequest return throws example Click  https to see how to use CreateRoverCluster API.
      public async createRoverCluster ( createRoverClusterRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverClusterClient#createRoverCluster." ) ; const pathParams = { } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "opc-retry-token" : createRoverClusterRequest . opcRetryToken , "opc-request-id" : createRoverClusterRequest . opcRequestId } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , createRoverClusterRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverClusters" , method : "POST" , bodyContent : common . ObjectSerializer . serialize ( createRoverClusterRequest . createRoverClusterDetails , "CreateRoverClusterDetails" , model . CreateRoverClusterDetails . getJsonObj ) , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . CreateRoverClusterResponse > { } , body : await response . json ( ) , bodyKey : "roverCluster" , bodyModel : model . RoverCluster , type : "model.RoverCluster" , responseHeaders : [ { value : response . headers . get ( "etag" ) , key : "etag" , dataType : "string" } , { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Deletes a RoverCluster resource by identifier
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param DeleteRoverClusterRequest return throws example Click  https to see how to use DeleteRoverCluster API.
      public async deleteRoverCluster ( deleteRoverClusterRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverClusterClient#deleteRoverCluster." ) ; const pathParams = { "{roverClusterId}" : deleteRoverClusterRequest . roverClusterId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "if-match" : deleteRoverClusterRequest . ifMatch , "opc-request-id" : deleteRoverClusterRequest . opcRequestId , "opc-retry-token" : deleteRoverClusterRequest . opcRetryToken } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , deleteRoverClusterRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverClusters/{roverClusterId}" , method : "DELETE" , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . DeleteRoverClusterResponse > { } , responseHeaders : [ { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Gets a RoverCluster by identifier
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param GetRoverClusterRequest return throws example Click  https to see how to use GetRoverCluster API.
      public async getRoverCluster ( getRoverClusterRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverClusterClient#getRoverCluster." ) ; const pathParams = { "{roverClusterId}" : getRoverClusterRequest . roverClusterId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "opc-request-id" : getRoverClusterRequest . opcRequestId } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , getRoverClusterRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverClusters/{roverClusterId}" , method : "GET" , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . GetRoverClusterResponse > { } , body : await response . json ( ) , bodyKey : "roverCluster" , bodyModel : model . RoverCluster , type : "model.RoverCluster" , responseHeaders : [ { value : response . headers . get ( "etag" ) , key : "etag" , dataType : "string" } , { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Get the certificate for a rover cluster
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param GetRoverClusterCertificateRequest return throws example Click  https to see how to use GetRoverClusterCertificate API.
      public async getRoverClusterCertificate ( getRoverClusterCertificateRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverClusterClient#getRoverClusterCertificate." ) ; const pathParams = { "{roverClusterId}" : getRoverClusterCertificateRequest . roverClusterId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "opc-request-id" : getRoverClusterCertificateRequest . opcRequestId } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , getRoverClusterCertificateRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverClusters/{roverClusterId}/certificate" , method : "GET" , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . GetRoverClusterCertificateResponse > { } , body : await response . json ( ) , bodyKey : "roverClusterCertificate" , bodyModel : model . RoverClusterCertificate , type : "model.RoverClusterCertificate" , responseHeaders : [ { value : response . headers . get ( "etag" ) , key : "etag" , dataType : "string" } , { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Returns a list of RoverClusters.
     *
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param ListRoverClustersRequest return throws example Click  https to see how to use ListRoverClusters API.
      public async listRoverClusters ( listRoverClustersRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverClusterClient#listRoverClusters." ) ; const pathParams = { } ; const queryParams = { "compartmentId" : listRoverClustersRequest . compartmentId , "displayName" : listRoverClustersRequest . displayName , "limit" : listRoverClustersRequest . limit , "page" : listRoverClustersRequest . page , "lifecycleState" : listRoverClustersRequest . lifecycleState , "sortOrder" : listRoverClustersRequest . sortOrder , "sortBy" : listRoverClustersRequest . sortBy } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "opc-request-id" : listRoverClustersRequest . opcRequestId } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , listRoverClustersRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverClusters" , method : "GET" , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . ListRoverClustersResponse > { } , body : await response . json ( ) , bodyKey : "roverClusterCollection" , bodyModel : model . RoverClusterCollection , type : "model.RoverClusterCollection" , responseHeaders : [ { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } , { value : response . headers . get ( "opc-next-page" ) , key : "opcNextPage" , dataType : "string" } , { value : response . headers . get ( "opc-prev-page" ) , key : "opcPrevPage" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Updates the RoverCluster
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param UpdateRoverClusterRequest return throws example Click  https to see how to use UpdateRoverCluster API.
      public async updateRoverCluster ( updateRoverClusterRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverClusterClient#updateRoverCluster." ) ; const pathParams = { "{roverClusterId}" : updateRoverClusterRequest . roverClusterId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "if-match" : updateRoverClusterRequest . ifMatch , "opc-request-id" : updateRoverClusterRequest . opcRequestId } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , updateRoverClusterRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverClusters/{roverClusterId}" , method : "PUT" , bodyContent : common . ObjectSerializer . serialize ( updateRoverClusterRequest . updateRoverClusterDetails , "UpdateRoverClusterDetails" , model . UpdateRoverClusterDetails . getJsonObj ) , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . UpdateRoverClusterResponse > { } , body : await response . json ( ) , bodyKey : "roverCluster" , bodyModel : model . RoverCluster , type : "model.RoverCluster" , responseHeaders : [ { value : response . headers . get ( "etag" ) , key : "etag" , dataType : "string" } , { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } } export enum RoverEntitlementApiKeys { } /**
 * This service client uses  common . CircuitBreaker . DefaultConfiguration for all the operations by default if no circuit breaker configuration is defined by the user.
  export class RoverEntitlementClient { protected static serviceEndpointTemplate = "https://rover.{region}.oci.{secondLevelDomain}" ; protected "_endpoint" : string = "" ; protected "_defaultHeaders" : any = { } ; protected "_waiters" : RoverEntitlementWaiter ; protected "_clientConfiguration" : common . ClientConfiguration ; protected _circuitBreaker = null ; protected _httpClient : common . HttpClient ; constructor ( params , clientConfiguration ? ) { const requestSigner = params . authenticationDetailsProvider ? new common . DefaultRequestSigner ( params . authenticationDetailsProvider ) : null ; if ( clientConfiguration ) { this . _clientConfiguration = clientConfiguration ; this . _circuitBreaker = clientConfiguration . circuitBreaker ? clientConfiguration . circuitBreaker ! . circuit : null ; } const specCircuitBreakerEnabled = true ; if ( ! this . _circuitBreaker && common . utils . isCircuitBreakerSystemEnabled ( clientConfiguration ! ) && ( specCircuitBreakerEnabled || common . CircuitBreaker . DefaultCircuitBreakerOverriden ) ) { this . _circuitBreaker = new common . CircuitBreaker ( ) . circuit ; } this . _httpClient = params . httpClient || new common . FetchHttpClient ( requestSigner , this . _circuitBreaker ) ; if ( params . authenticationDetailsProvider && common . isRegionProvider ( params . authenticationDetailsProvider ) ) { const provider = params . authenticationDetailsProvider ; if ( provider . getRegion ( ) ) { this . region = provider . getRegion ( ) ; } } } /**
     * Get the endpoint that is being used to call (ex, https://www.example.com).
     */ public get endpoint ( ) { return this . _endpoint ; } param endpoint public set endpoint ( endpoint ) { this . _endpoint = endpoint ; this . _endpoint = this . _endpoint + "/20201210" ; if ( this . logger ) this . logger . info ( `RoverEntitlementClient endpoint set to ${ this . _endpoint }` ) ; } public get logger ( ) { return common . LOG . logger ; } /**
     * Sets the region to call (ex, Region.US_PHOENIX_1).
     * Note, this will call  {@link #endpoint(String) endpoint} after resolving the endpoint.
     *  param region public set region ( region ) { this . endpoint = common . EndpointBuilder . createEndpointFromRegion ( RoverEntitlementClient . serviceEndpointTemplate , region ) ; } /**
     * Sets the regionId to call (ex, 'us-phoenix-1').
     *
     * Note, this will first try to map the region ID to a known Region and call  {@link #region(Region) region} .
     * If no known Region could be determined, it will create an endpoint assuming its in default Realm OC1
     * and then call  {@link #endpoint(String) endpoint} .
     *  param regionId public set regionId ( regionId ) { this . endpoint = common . EndpointBuilder . createEndpointFromRegionId ( RoverEntitlementClient . serviceEndpointTemplate , regionId ) ; } param config return public createWaiters ( config ? ) { this . _waiters = new RoverEntitlementWaiter ( this , config ) ; return this . _waiters ; } return public getWaiters ( ) { if ( this . _waiters ) { return this . _waiters ; } throw Error ( "Waiters do not exist. Please create waiters." ) ; } /**
     * Moves an entitlement into a different compartment.
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param ChangeRoverEntitlementCompartmentRequest return throws example Click  https to see how to use ChangeRoverEntitlementCompartment API.
      public async changeRoverEntitlementCompartment ( changeRoverEntitlementCompartmentRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverEntitlementClient#changeRoverEntitlementCompartment." ) ; const pathParams = { "{roverEntitlementId}" : changeRoverEntitlementCompartmentRequest . roverEntitlementId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "if-match" : changeRoverEntitlementCompartmentRequest . ifMatch , "opc-request-id" : changeRoverEntitlementCompartmentRequest . opcRequestId , "opc-retry-token" : changeRoverEntitlementCompartmentRequest . opcRetryToken } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , changeRoverEntitlementCompartmentRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverEntitlements/{roverEntitlementId}/actions/changeCompartment" , method : "POST" , bodyContent : common . ObjectSerializer . serialize ( changeRoverEntitlementCompartmentRequest . changeRoverEntitlementCompartmentDetails , "ChangeRoverEntitlementCompartmentDetails" , model . ChangeRoverEntitlementCompartmentDetails . getJsonObj ) , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . ChangeRoverEntitlementCompartmentResponse > { } , responseHeaders : [ { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Create the Entitlement to use a Rover Device. It requires some offline process of review and signatures before request is granted.
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param CreateRoverEntitlementRequest return throws example Click  https to see how to use CreateRoverEntitlement API.
      public async createRoverEntitlement ( createRoverEntitlementRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverEntitlementClient#createRoverEntitlement." ) ; const pathParams = { } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "opc-retry-token" : createRoverEntitlementRequest . opcRetryToken , "opc-request-id" : createRoverEntitlementRequest . opcRequestId } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , createRoverEntitlementRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverEntitlements" , method : "POST" , bodyContent : common . ObjectSerializer . serialize ( createRoverEntitlementRequest . createRoverEntitlementDetails , "CreateRoverEntitlementDetails" , model . CreateRoverEntitlementDetails . getJsonObj ) , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . CreateRoverEntitlementResponse > { } , body : await response . json ( ) , bodyKey : "roverEntitlement" , bodyModel : model . RoverEntitlement , type : "model.RoverEntitlement" , responseHeaders : [ { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } , { value : response . headers . get ( "etag" ) , key : "etag" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Deletes a rover entitlement
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param DeleteRoverEntitlementRequest return throws example Click  https to see how to use DeleteRoverEntitlement API.
      public async deleteRoverEntitlement ( deleteRoverEntitlementRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverEntitlementClient#deleteRoverEntitlement." ) ; const pathParams = { "{roverEntitlementId}" : deleteRoverEntitlementRequest . roverEntitlementId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "opc-retry-token" : deleteRoverEntitlementRequest . opcRetryToken , "opc-request-id" : deleteRoverEntitlementRequest . opcRequestId , "if-match" : deleteRoverEntitlementRequest . ifMatch } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , deleteRoverEntitlementRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverEntitlements/{roverEntitlementId}" , method : "DELETE" , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . DeleteRoverEntitlementResponse > { } , responseHeaders : [ { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Describes the Rover Device Entitlement in detail
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param GetRoverEntitlementRequest return throws example Click  https to see how to use GetRoverEntitlement API.
      public async getRoverEntitlement ( getRoverEntitlementRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverEntitlementClient#getRoverEntitlement." ) ; const pathParams = { "{roverEntitlementId}" : getRoverEntitlementRequest . roverEntitlementId } ; const queryParams = { "compartmentId" : getRoverEntitlementRequest . compartmentId } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "opc-retry-token" : getRoverEntitlementRequest . opcRetryToken , "opc-request-id" : getRoverEntitlementRequest . opcRequestId } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , getRoverEntitlementRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverEntitlements/{roverEntitlementId}" , method : "GET" , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . GetRoverEntitlementResponse > { } , body : await response . json ( ) , bodyKey : "roverEntitlement" , bodyModel : model . RoverEntitlement , type : "model.RoverEntitlement" , responseHeaders : [ { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } , { value : response . headers . get ( "etag" ) , key : "etag" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Returns a list of RoverEntitlements.
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param ListRoverEntitlementsRequest return throws example Click  https to see how to use ListRoverEntitlements API.
      public async listRoverEntitlements ( listRoverEntitlementsRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverEntitlementClient#listRoverEntitlements." ) ; const pathParams = { } ; const queryParams = { "id" : listRoverEntitlementsRequest . id , "compartmentId" : listRoverEntitlementsRequest . compartmentId , "displayName" : listRoverEntitlementsRequest . displayName , "lifecycleState" : listRoverEntitlementsRequest . lifecycleState , "limit" : listRoverEntitlementsRequest . limit , "page" : listRoverEntitlementsRequest . page , "sortOrder" : listRoverEntitlementsRequest . sortOrder , "sortBy" : listRoverEntitlementsRequest . sortBy } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "opc-request-id" : listRoverEntitlementsRequest . opcRequestId } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , listRoverEntitlementsRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverEntitlements" , method : "GET" , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . ListRoverEntitlementsResponse > { } , body : await response . json ( ) , bodyKey : "roverEntitlementCollection" , bodyModel : model . RoverEntitlementCollection , type : "model.RoverEntitlementCollection" , responseHeaders : [ { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } , { value : response . headers . get ( "opc-next-page" ) , key : "opcNextPage" , dataType : "string" } , { value : response . headers . get ( "opc-prev-page" ) , key : "opcPrevPage" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Updates the RoverEntitlement
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param UpdateRoverEntitlementRequest return throws example Click  https to see how to use UpdateRoverEntitlement API.
      public async updateRoverEntitlement ( updateRoverEntitlementRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverEntitlementClient#updateRoverEntitlement." ) ; const pathParams = { "{roverEntitlementId}" : updateRoverEntitlementRequest . roverEntitlementId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "if-match" : updateRoverEntitlementRequest . ifMatch , "opc-request-id" : updateRoverEntitlementRequest . opcRequestId } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , updateRoverEntitlementRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverEntitlements/{roverEntitlementId}" , method : "PUT" , bodyContent : common . ObjectSerializer . serialize ( updateRoverEntitlementRequest . updateRoverEntitlementDetails , "UpdateRoverEntitlementDetails" , model . UpdateRoverEntitlementDetails . getJsonObj ) , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . UpdateRoverEntitlementResponse > { } , body : await response . json ( ) , bodyKey : "roverEntitlement" , bodyModel : model . RoverEntitlement , type : "model.RoverEntitlement" , responseHeaders : [ { value : response . headers . get ( "etag" ) , key : "etag" , dataType : "string" } , { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } } export enum RoverNodeApiKeys { } /**
 * This service client uses  common . CircuitBreaker . DefaultConfiguration for all the operations by default if no circuit breaker configuration is defined by the user.
  export class RoverNodeClient { protected static serviceEndpointTemplate = "https://rover.{region}.oci.{secondLevelDomain}" ; protected "_endpoint" : string = "" ; protected "_defaultHeaders" : any = { } ; protected "_waiters" : RoverNodeWaiter ; protected "_clientConfiguration" : common . ClientConfiguration ; protected _circuitBreaker = null ; protected _httpClient : common . HttpClient ; constructor ( params , clientConfiguration ? ) { const requestSigner = params . authenticationDetailsProvider ? new common . DefaultRequestSigner ( params . authenticationDetailsProvider ) : null ; if ( clientConfiguration ) { this . _clientConfiguration = clientConfiguration ; this . _circuitBreaker = clientConfiguration . circuitBreaker ? clientConfiguration . circuitBreaker ! . circuit : null ; } const specCircuitBreakerEnabled = true ; if ( ! this . _circuitBreaker && common . utils . isCircuitBreakerSystemEnabled ( clientConfiguration ! ) && ( specCircuitBreakerEnabled || common . CircuitBreaker . DefaultCircuitBreakerOverriden ) ) { this . _circuitBreaker = new common . CircuitBreaker ( ) . circuit ; } this . _httpClient = params . httpClient || new common . FetchHttpClient ( requestSigner , this . _circuitBreaker ) ; if ( params . authenticationDetailsProvider && common . isRegionProvider ( params . authenticationDetailsProvider ) ) { const provider = params . authenticationDetailsProvider ; if ( provider . getRegion ( ) ) { this . region = provider . getRegion ( ) ; } } } /**
     * Get the endpoint that is being used to call (ex, https://www.example.com).
     */ public get endpoint ( ) { return this . _endpoint ; } param endpoint public set endpoint ( endpoint ) { this . _endpoint = endpoint ; this . _endpoint = this . _endpoint + "/20201210" ; if ( this . logger ) this . logger . info ( `RoverNodeClient endpoint set to ${ this . _endpoint }` ) ; } public get logger ( ) { return common . LOG . logger ; } /**
     * Sets the region to call (ex, Region.US_PHOENIX_1).
     * Note, this will call  {@link #endpoint(String) endpoint} after resolving the endpoint.
     *  param region public set region ( region ) { this . endpoint = common . EndpointBuilder . createEndpointFromRegion ( RoverNodeClient . serviceEndpointTemplate , region ) ; } /**
     * Sets the regionId to call (ex, 'us-phoenix-1').
     *
     * Note, this will first try to map the region ID to a known Region and call  {@link #region(Region) region} .
     * If no known Region could be determined, it will create an endpoint assuming its in default Realm OC1
     * and then call  {@link #endpoint(String) endpoint} .
     *  param regionId public set regionId ( regionId ) { this . endpoint = common . EndpointBuilder . createEndpointFromRegionId ( RoverNodeClient . serviceEndpointTemplate , regionId ) ; } param config return public createWaiters ( config ? ) { this . _waiters = new RoverNodeWaiter ( this , config ) ; return this . _waiters ; } return public getWaiters ( ) { if ( this . _waiters ) { return this . _waiters ; } throw Error ( "Waiters do not exist. Please create waiters." ) ; } /**
     * Moves a rover node into a different compartment.
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param ChangeRoverNodeCompartmentRequest return throws example Click  https to see how to use ChangeRoverNodeCompartment API.
      public async changeRoverNodeCompartment ( changeRoverNodeCompartmentRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverNodeClient#changeRoverNodeCompartment." ) ; const pathParams = { "{roverNodeId}" : changeRoverNodeCompartmentRequest . roverNodeId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "if-match" : changeRoverNodeCompartmentRequest . ifMatch , "opc-request-id" : changeRoverNodeCompartmentRequest . opcRequestId , "opc-retry-token" : changeRoverNodeCompartmentRequest . opcRetryToken } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , changeRoverNodeCompartmentRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverNodes/{roverNodeId}/actions/changeCompartment" , method : "POST" , bodyContent : common . ObjectSerializer . serialize ( changeRoverNodeCompartmentRequest . changeRoverNodeCompartmentDetails , "ChangeRoverNodeCompartmentDetails" , model . ChangeRoverNodeCompartmentDetails . getJsonObj ) , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . ChangeRoverNodeCompartmentResponse > { } , responseHeaders : [ { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Creates a new RoverNode.
     *
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param CreateRoverNodeRequest return throws example Click  https to see how to use CreateRoverNode API.
      public async createRoverNode ( createRoverNodeRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverNodeClient#createRoverNode." ) ; const pathParams = { } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "opc-retry-token" : createRoverNodeRequest . opcRetryToken , "opc-request-id" : createRoverNodeRequest . opcRequestId } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , createRoverNodeRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverNodes" , method : "POST" , bodyContent : common . ObjectSerializer . serialize ( createRoverNodeRequest . createRoverNodeDetails , "CreateRoverNodeDetails" , model . CreateRoverNodeDetails . getJsonObj ) , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . CreateRoverNodeResponse > { } , body : await response . json ( ) , bodyKey : "roverNode" , bodyModel : model . RoverNode , type : "model.RoverNode" , responseHeaders : [ { value : response . headers . get ( "etag" ) , key : "etag" , dataType : "string" } , { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Deletes a RoverNode resource by identifier
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param DeleteRoverNodeRequest return throws example Click  https to see how to use DeleteRoverNode API.
      public async deleteRoverNode ( deleteRoverNodeRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverNodeClient#deleteRoverNode." ) ; const pathParams = { "{roverNodeId}" : deleteRoverNodeRequest . roverNodeId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "if-match" : deleteRoverNodeRequest . ifMatch , "opc-request-id" : deleteRoverNodeRequest . opcRequestId , "opc-retry-token" : deleteRoverNodeRequest . opcRetryToken } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , deleteRoverNodeRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverNodes/{roverNodeId}" , method : "DELETE" , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . DeleteRoverNodeResponse > { } , responseHeaders : [ { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Gets a RoverNode by identifier.
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param GetRoverNodeRequest return throws example Click  https to see how to use GetRoverNode API.
      public async getRoverNode ( getRoverNodeRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverNodeClient#getRoverNode." ) ; const pathParams = { "{roverNodeId}" : getRoverNodeRequest . roverNodeId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "opc-request-id" : getRoverNodeRequest . opcRequestId } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , getRoverNodeRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverNodes/{roverNodeId}" , method : "GET" , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . GetRoverNodeResponse > { } , body : await response . json ( ) , bodyKey : "roverNode" , bodyModel : model . RoverNode , type : "model.RoverNode" , responseHeaders : [ { value : response . headers . get ( "etag" ) , key : "etag" , dataType : "string" } , { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Get the certificate for a rover node
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param GetRoverNodeCertificateRequest return throws example Click  https to see how to use GetRoverNodeCertificate API.
      public async getRoverNodeCertificate ( getRoverNodeCertificateRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverNodeClient#getRoverNodeCertificate." ) ; const pathParams = { "{roverNodeId}" : getRoverNodeCertificateRequest . roverNodeId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "opc-request-id" : getRoverNodeCertificateRequest . opcRequestId } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , getRoverNodeCertificateRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverNodes/{roverNodeId}/certificate" , method : "GET" , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . GetRoverNodeCertificateResponse > { } , body : await response . json ( ) , bodyKey : "roverNodeCertificate" , bodyModel : model . RoverNodeCertificate , type : "model.RoverNodeCertificate" , responseHeaders : [ { value : response . headers . get ( "etag" ) , key : "etag" , dataType : "string" } , { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Get the data encryption key for a rover node.
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param GetRoverNodeEncryptionKeyRequest return throws example Click  https to see how to use GetRoverNodeEncryptionKey API.
      public async getRoverNodeEncryptionKey ( getRoverNodeEncryptionKeyRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverNodeClient#getRoverNodeEncryptionKey." ) ; const pathParams = { "{roverNodeId}" : getRoverNodeEncryptionKeyRequest . roverNodeId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "opc-request-id" : getRoverNodeEncryptionKeyRequest . opcRequestId } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , getRoverNodeEncryptionKeyRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverNodes/{roverNodeId}/encryptionKey" , method : "GET" , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . GetRoverNodeEncryptionKeyResponse > { } , body : await response . json ( ) , bodyKey : "roverNodeEncryptionKey" , bodyModel : model . RoverNodeEncryptionKey , type : "model.RoverNodeEncryptionKey" , responseHeaders : [ { value : response . headers . get ( "etag" ) , key : "etag" , dataType : "string" } , { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Get the resource principal token for a rover node
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param GetRoverNodeGetRptRequest return throws example Click  https to see how to use GetRoverNodeGetRpt API.
      public async getRoverNodeGetRpt ( getRoverNodeGetRptRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverNodeClient#getRoverNodeGetRpt." ) ; const pathParams = { "{roverNodeId}" : getRoverNodeGetRptRequest . roverNodeId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "jwt" : getRoverNodeGetRptRequest . jwt , "opc-request-id" : getRoverNodeGetRptRequest . opcRequestId } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , getRoverNodeGetRptRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverNodes/{roverNodeId}/getRpt" , method : "GET" , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . GetRoverNodeGetRptResponse > { } , body : await response . json ( ) , bodyKey : "roverNodeGetRpt" , bodyModel : model . RoverNodeGetRpt , type : "model.RoverNodeGetRpt" , responseHeaders : [ { value : response . headers . get ( "etag" ) , key : "etag" , dataType : "string" } , { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Returns a list of RoverNodes.
     *
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param ListRoverNodesRequest return throws example Click  https to see how to use ListRoverNodes API.
      public async listRoverNodes ( listRoverNodesRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverNodeClient#listRoverNodes." ) ; const pathParams = { } ; const queryParams = { "compartmentId" : listRoverNodesRequest . compartmentId , "displayName" : listRoverNodesRequest . displayName , "limit" : listRoverNodesRequest . limit , "page" : listRoverNodesRequest . page , "lifecycleState" : listRoverNodesRequest . lifecycleState , "sortOrder" : listRoverNodesRequest . sortOrder , "sortBy" : listRoverNodesRequest . sortBy } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "opc-request-id" : listRoverNodesRequest . opcRequestId } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , listRoverNodesRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverNodes" , method : "GET" , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . ListRoverNodesResponse > { } , body : await response . json ( ) , bodyKey : "roverNodeCollection" , bodyModel : model . RoverNodeCollection , type : "model.RoverNodeCollection" , responseHeaders : [ { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } , { value : response . headers . get ( "opc-next-page" ) , key : "opcNextPage" , dataType : "string" } , { value : response . headers . get ( "opc-prev-page" ) , key : "opcPrevPage" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Get the resource principal public key for a rover node
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param RoverNodeActionSetKeyRequest return throws example Click  https to see how to use RoverNodeActionSetKey API.
      public async roverNodeActionSetKey ( roverNodeActionSetKeyRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverNodeClient#roverNodeActionSetKey." ) ; const pathParams = { "{roverNodeId}" : roverNodeActionSetKeyRequest . roverNodeId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "jwt" : roverNodeActionSetKeyRequest . jwt , "if-match" : roverNodeActionSetKeyRequest . ifMatch , "opc-request-id" : roverNodeActionSetKeyRequest . opcRequestId , "opc-retry-token" : roverNodeActionSetKeyRequest . opcRetryToken } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , roverNodeActionSetKeyRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverNodes/{roverNodeId}/actions/setKey" , method : "POST" , bodyContent : common . ObjectSerializer . serialize ( roverNodeActionSetKeyRequest . roverNodeActionSetKeyDetails , "RoverNodeActionSetKeyDetails" , model . RoverNodeActionSetKeyDetails . getJsonObj ) , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . RoverNodeActionSetKeyResponse > { } , body : await response . json ( ) , bodyKey : "roverNodeSetKey" , bodyModel : model . RoverNodeSetKey , type : "model.RoverNodeSetKey" , responseHeaders : [ { value : response . headers . get ( "etag" ) , key : "etag" , dataType : "string" } , { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } /**
     * Updates the RoverNode
     * This operation uses  common . OciSdkDefaultRetryConfiguration by default if no retry configuration is defined by the user.
     *  param UpdateRoverNodeRequest return throws example Click  https to see how to use UpdateRoverNode API.
      public async updateRoverNode ( updateRoverNodeRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation RoverNodeClient#updateRoverNode." ) ; const pathParams = { "{roverNodeId}" : updateRoverNodeRequest . roverNodeId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "if-match" : updateRoverNodeRequest . ifMatch , "opc-request-id" : updateRoverNodeRequest . opcRequestId } ; const specRetryConfiguration = common . OciSdkDefaultRetryConfiguration ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , updateRoverNodeRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/roverNodes/{roverNodeId}" , method : "PUT" , bodyContent : common . ObjectSerializer . serialize ( updateRoverNodeRequest . updateRoverNodeDetails , "UpdateRoverNodeDetails" , model . UpdateRoverNodeDetails . getJsonObj ) , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . UpdateRoverNodeResponse > { } , body : await response . json ( ) , bodyKey : "roverNode" , bodyModel : model . RoverNode , type : "model.RoverNode" , responseHeaders : [ { value : response . headers . get ( "etag" ) , key : "etag" , dataType : "string" } , { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } }