/**
 * Database Migration API
 * Use the Oracle Cloud Infrastructure Database Migration APIs to perform database migration operations.
 * OpenAPI spec version: 20210929
 *
 *
 * 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 * as model from "../model" ; import common = require ( "oci-common" ) ; /**
 * Details about Oracle GoldenGate Microservices.
 *
 */ export interface GoldenGateHub { "restAdminCredentials" : model . AdminCredentials ; "sourceDbAdminCredentials" : model . AdminCredentials ; "sourceContainerDbAdminCredentials" ? : model . AdminCredentials ; "targetDbAdminCredentials" : model . AdminCredentials ; /**
     * Oracle GoldenGate hub's REST endpoint.
     * Refer to https://docs.oracle.com/en/middleware/goldengate/core/19.1/securing/network.html#GUID-A709DA55-111D-455E-8942-C9BDD1E38CAA
     *
     */ "url" : string ; /**
     * Name of GoldenGate deployment to operate on source database
     *
     */ "sourceMicroservicesDeploymentName" : string ; /**
     * Name of GoldenGate deployment to operate on target database
     *
     */ "targetMicroservicesDeploymentName" : string ; /**
     * OCID of GoldenGate compute instance.
     *
     */ "computeId" ? : string ; } export namespace GoldenGateHub { export function getJsonObj ( obj ) { const jsonObj = { ... obj , ... { "restAdminCredentials" : obj . restAdminCredentials ? model . AdminCredentials . getJsonObj ( obj . restAdminCredentials ) : undefined , "sourceDbAdminCredentials" : obj . sourceDbAdminCredentials ? model . AdminCredentials . getJsonObj ( obj . sourceDbAdminCredentials ) : undefined , "sourceContainerDbAdminCredentials" : obj . sourceContainerDbAdminCredentials ? model . AdminCredentials . getJsonObj ( obj . sourceContainerDbAdminCredentials ) : undefined , "targetDbAdminCredentials" : obj . targetDbAdminCredentials ? model . AdminCredentials . getJsonObj ( obj . targetDbAdminCredentials ) : undefined } } ; return jsonObj ; } export function getDeserializedJsonObj ( obj ) { const jsonObj = { ... obj , ... { "restAdminCredentials" : obj . restAdminCredentials ? model . AdminCredentials . getDeserializedJsonObj ( obj . restAdminCredentials ) : undefined , "sourceDbAdminCredentials" : obj . sourceDbAdminCredentials ? model . AdminCredentials . getDeserializedJsonObj ( obj . sourceDbAdminCredentials ) : undefined , "sourceContainerDbAdminCredentials" : obj . sourceContainerDbAdminCredentials ? model . AdminCredentials . getDeserializedJsonObj ( obj . sourceContainerDbAdminCredentials ) : undefined , "targetDbAdminCredentials" : obj . targetDbAdminCredentials ? model . AdminCredentials . getDeserializedJsonObj ( obj . targetDbAdminCredentials ) : undefined } } ; return jsonObj ; } }