/**
 * Secrets Management API
 * API for managing secrets.
 * OpenAPI spec version: 20180608
 *
 *
 * 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 { paginateRecords , paginateResponses } from "oci-common" ; import { VaultsWaiter } from "./vaults-waiter" ; import { composeResponse , composeRequest , GenericRetrier } from "oci-common" ; export enum VaultsApiKeys { } /**
 * 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 VaultsClient { protected static serviceEndpointTemplate = "https://vaults.{region}.oci.{secondLevelDomain}" ; protected "_endpoint" : string = "" ; protected "_defaultHeaders" : any = { } ; protected "_waiters" : VaultsWaiter ; 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 + "/20180608" ; if ( this . logger ) this . logger . info ( `VaultsClient 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 ( VaultsClient . 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 ( VaultsClient . serviceEndpointTemplate , regionId ) ; } param config return public createWaiters ( config ? ) { this . _waiters = new VaultsWaiter ( this , config ) ; return this . _waiters ; } return public getWaiters ( ) { if ( this . _waiters ) { return this . _waiters ; } throw Error ( "Waiters do not exist. Please create waiters." ) ; } param CancelSecretDeletionRequest return throws example Click  https to see how to use CancelSecretDeletion API.
      public async cancelSecretDeletion ( cancelSecretDeletionRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation VaultsClient#cancelSecretDeletion." ) ; const pathParams = { "{secretId}" : cancelSecretDeletionRequest . secretId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "if-match" : cancelSecretDeletionRequest . ifMatch , "opc-request-id" : cancelSecretDeletionRequest . opcRequestId } ; const specRetryConfiguration = common . NoRetryConfigurationDetails ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , cancelSecretDeletionRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/secrets/{secretId}/actions/cancelDeletion" , method : "POST" , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . CancelSecretDeletionResponse > { } , 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 ; } } param CancelSecretVersionDeletionRequest return throws example Click  https to see how to use CancelSecretVersionDeletion API.
      public async cancelSecretVersionDeletion ( cancelSecretVersionDeletionRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation VaultsClient#cancelSecretVersionDeletion." ) ; const pathParams = { "{secretId}" : cancelSecretVersionDeletionRequest . secretId , "{secretVersionNumber}" : cancelSecretVersionDeletionRequest . secretVersionNumber } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "if-match" : cancelSecretVersionDeletionRequest . ifMatch , "opc-request-id" : cancelSecretVersionDeletionRequest . opcRequestId } ; const specRetryConfiguration = common . NoRetryConfigurationDetails ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , cancelSecretVersionDeletionRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/secrets/{secretId}/version/{secretVersionNumber}/actions/cancelDeletion" , method : "POST" , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . CancelSecretVersionDeletionResponse > { } , 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 ; } } param ChangeSecretCompartmentRequest return throws example Click  https to see how to use ChangeSecretCompartment API.
        public async changeSecretCompartment ( changeSecretCompartmentRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation VaultsClient#changeSecretCompartment." ) ; const pathParams = { "{secretId}" : changeSecretCompartmentRequest . secretId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "if-match" : changeSecretCompartmentRequest . ifMatch , "opc-request-id" : changeSecretCompartmentRequest . opcRequestId , "opc-retry-token" : changeSecretCompartmentRequest . opcRetryToken } ; const specRetryConfiguration = common . NoRetryConfigurationDetails ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , changeSecretCompartmentRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/secrets/{secretId}/actions/changeCompartment" , method : "POST" , bodyContent : common . ObjectSerializer . serialize ( changeSecretCompartmentRequest . changeSecretCompartmentDetails , "ChangeSecretCompartmentDetails" , model . ChangeSecretCompartmentDetails . getJsonObj ) , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . ChangeSecretCompartmentResponse > { } , 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 ; } } param CreateSecretRequest return throws example Click  https to see how to use CreateSecret API.
        public async createSecret ( createSecretRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation VaultsClient#createSecret." ) ; const pathParams = { } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "opc-request-id" : createSecretRequest . opcRequestId , "opc-retry-token" : createSecretRequest . opcRetryToken } ; const specRetryConfiguration = common . NoRetryConfigurationDetails ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , createSecretRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/secrets" , method : "POST" , bodyContent : common . ObjectSerializer . serialize ( createSecretRequest . createSecretDetails , "CreateSecretDetails" , model . CreateSecretDetails . getJsonObj ) , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . CreateSecretResponse > { } , body : await response . json ( ) , bodyKey : "secret" , bodyModel : model . Secret , type : "model.Secret" , 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 ; } } param GetSecretRequest return throws example Click  https to see how to use GetSecret API.
      public async getSecret ( getSecretRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation VaultsClient#getSecret." ) ; const pathParams = { "{secretId}" : getSecretRequest . secretId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "opc-request-id" : getSecretRequest . opcRequestId } ; const specRetryConfiguration = common . NoRetryConfigurationDetails ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , getSecretRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/secrets/{secretId}" , method : "GET" , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . GetSecretResponse > { } , body : await response . json ( ) , bodyKey : "secret" , bodyModel : model . Secret , type : "model.Secret" , 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 ; } } param GetSecretVersionRequest return throws example Click  https to see how to use GetSecretVersion API.
      public async getSecretVersion ( getSecretVersionRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation VaultsClient#getSecretVersion." ) ; const pathParams = { "{secretId}" : getSecretVersionRequest . secretId , "{secretVersionNumber}" : getSecretVersionRequest . secretVersionNumber } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "opc-request-id" : getSecretVersionRequest . opcRequestId } ; const specRetryConfiguration = common . NoRetryConfigurationDetails ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , getSecretVersionRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/secrets/{secretId}/version/{secretVersionNumber}" , method : "GET" , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . GetSecretVersionResponse > { } , body : await response . json ( ) , bodyKey : "secretVersion" , bodyModel : model . SecretVersion , type : "model.SecretVersion" , 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 ; } } param ListSecretVersionsRequest return throws example Click  https to see how to use ListSecretVersions API.
      public async listSecretVersions ( listSecretVersionsRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation VaultsClient#listSecretVersions." ) ; const pathParams = { "{secretId}" : listSecretVersionsRequest . secretId } ; const queryParams = { "limit" : listSecretVersionsRequest . limit , "page" : listSecretVersionsRequest . page , "sortBy" : listSecretVersionsRequest . sortBy , "sortOrder" : listSecretVersionsRequest . sortOrder } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "opc-request-id" : listSecretVersionsRequest . opcRequestId } ; const specRetryConfiguration = common . NoRetryConfigurationDetails ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , listSecretVersionsRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/secrets/{secretId}/versions" , method : "GET" , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . ListSecretVersionsResponse > { } , body : await response . json ( ) , bodyKey : "items" , bodyModel : model . SecretVersionSummary , type : "Array<model.SecretVersionSummary>" , responseHeaders : [ { value : response . headers . get ( "opc-next-page" ) , key : "opcNextPage" , dataType : "string" } , { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } param request public listAllSecretVersions ( request ) { return paginateRecords ( request , req => this . listSecretVersions ( req ) ) ; } param request public listAllSecretVersionsResponses ( request ) { return paginateResponses ( request , req => this . listSecretVersions ( req ) ) ; } param request public listSecretVersionsRecordIterator ( request ) { return paginateRecords ( request , req => this . listSecretVersions ( req ) ) ; } param request public listSecretVersionsResponseIterator ( request ) { return paginateResponses ( request , req => this . listSecretVersions ( req ) ) ; } param ListSecretsRequest return throws example Click  https to see how to use ListSecrets API.
      public async listSecrets ( listSecretsRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation VaultsClient#listSecrets." ) ; const pathParams = { } ; const queryParams = { "compartmentId" : listSecretsRequest . compartmentId , "name" : listSecretsRequest . name , "limit" : listSecretsRequest . limit , "page" : listSecretsRequest . page , "sortBy" : listSecretsRequest . sortBy , "sortOrder" : listSecretsRequest . sortOrder , "vaultId" : listSecretsRequest . vaultId , "lifecycleState" : listSecretsRequest . lifecycleState } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "opc-request-id" : listSecretsRequest . opcRequestId } ; const specRetryConfiguration = common . NoRetryConfigurationDetails ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , listSecretsRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/secrets" , method : "GET" , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . ListSecretsResponse > { } , body : await response . json ( ) , bodyKey : "items" , bodyModel : model . SecretSummary , type : "Array<model.SecretSummary>" , responseHeaders : [ { value : response . headers . get ( "opc-next-page" ) , key : "opcNextPage" , dataType : "string" } , { value : response . headers . get ( "opc-request-id" ) , key : "opcRequestId" , dataType : "string" } ] } ) ; return sdkResponse ; } catch ( err ) { throw err ; } } param request public listAllSecrets ( request ) { return paginateRecords ( request , req => this . listSecrets ( req ) ) ; } param request public listAllSecretsResponses ( request ) { return paginateResponses ( request , req => this . listSecrets ( req ) ) ; } param request public listSecretsRecordIterator ( request ) { return paginateRecords ( request , req => this . listSecrets ( req ) ) ; } param request public listSecretsResponseIterator ( request ) { return paginateResponses ( request , req => this . listSecrets ( req ) ) ; } param ScheduleSecretDeletionRequest return throws example Click  https to see how to use ScheduleSecretDeletion API.
      public async scheduleSecretDeletion ( scheduleSecretDeletionRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation VaultsClient#scheduleSecretDeletion." ) ; const pathParams = { "{secretId}" : scheduleSecretDeletionRequest . secretId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "if-match" : scheduleSecretDeletionRequest . ifMatch , "opc-request-id" : scheduleSecretDeletionRequest . opcRequestId } ; const specRetryConfiguration = common . NoRetryConfigurationDetails ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , scheduleSecretDeletionRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/secrets/{secretId}/actions/scheduleDeletion" , method : "POST" , bodyContent : common . ObjectSerializer . serialize ( scheduleSecretDeletionRequest . scheduleSecretDeletionDetails , "ScheduleSecretDeletionDetails" , model . ScheduleSecretDeletionDetails . getJsonObj ) , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . ScheduleSecretDeletionResponse > { } , 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 ; } } param ScheduleSecretVersionDeletionRequest return throws example Click  https to see how to use ScheduleSecretVersionDeletion API.
      public async scheduleSecretVersionDeletion ( scheduleSecretVersionDeletionRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation VaultsClient#scheduleSecretVersionDeletion." ) ; const pathParams = { "{secretId}" : scheduleSecretVersionDeletionRequest . secretId , "{secretVersionNumber}" : scheduleSecretVersionDeletionRequest . secretVersionNumber } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "if-match" : scheduleSecretVersionDeletionRequest . ifMatch , "opc-request-id" : scheduleSecretVersionDeletionRequest . opcRequestId } ; const specRetryConfiguration = common . NoRetryConfigurationDetails ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , scheduleSecretVersionDeletionRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/secrets/{secretId}/version/{secretVersionNumber}/actions/scheduleDeletion" , method : "POST" , bodyContent : common . ObjectSerializer . serialize ( scheduleSecretVersionDeletionRequest . scheduleSecretVersionDeletionDetails , "ScheduleSecretVersionDeletionDetails" , model . ScheduleSecretVersionDeletionDetails . getJsonObj ) , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . ScheduleSecretVersionDeletionResponse > { } , 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 ; } } param UpdateSecretRequest return throws example Click  https to see how to use UpdateSecret API.
        public async updateSecret ( updateSecretRequest ) { if ( this . logger ) this . logger . debug ( "Calling operation VaultsClient#updateSecret." ) ; const pathParams = { "{secretId}" : updateSecretRequest . secretId } ; const queryParams = { } ; let headerParams = { "Content-Type" : common . Constants . APPLICATION_JSON , "if-match" : updateSecretRequest . ifMatch , "opc-request-id" : updateSecretRequest . opcRequestId } ; const specRetryConfiguration = common . NoRetryConfigurationDetails ; const retrier = GenericRetrier . createPreferredRetrier ( this . _clientConfiguration ? this . _clientConfiguration . retryConfiguration : undefined , updateSecretRequest . retryConfiguration , specRetryConfiguration ) ; if ( this . logger ) retrier . logger = this . logger ; const request = await composeRequest ( { baseEndpoint : this . _endpoint , defaultHeaders : this . _defaultHeaders , path : "/secrets/{secretId}" , method : "PUT" , bodyContent : common . ObjectSerializer . serialize ( updateSecretRequest . updateSecretDetails , "UpdateSecretDetails" , model . UpdateSecretDetails . getJsonObj ) , pathParams : pathParams , headerParams : headerParams , queryParams : queryParams } ) ; try { const response = await retrier . makeServiceCall ( this . _httpClient , request ) ; const sdkResponse = composeResponse ( { responseObject : < responses . UpdateSecretResponse > { } , body : await response . json ( ) , bodyKey : "secret" , bodyModel : model . Secret , type : "model.Secret" , 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 ; } } }