UNPKG

@google-cloud/datastream

Version:
713 lines 136 kB
import type * as gax from 'google-gax'; import type { Callback, CallOptions, Descriptors, ClientOptions, LROperation, PaginationCallback, IamClient, IamProtos, LocationsClient, LocationProtos } from 'google-gax'; import { Transform } from 'stream'; import * as protos from '../../protos/protos'; /** * Datastream service * @class * @memberof v1 */ export declare class DatastreamClient { private _terminated; private _opts; private _providedCustomServicePath; private _gaxModule; private _gaxGrpc; private _protos; private _defaults; private _universeDomain; private _servicePath; private _log; auth: gax.GoogleAuth; descriptors: Descriptors; warn: (code: string, message: string, warnType?: string) => void; innerApiCalls: { [name: string]: Function; }; iamClient: IamClient; locationsClient: LocationsClient; pathTemplates: { [name: string]: gax.PathTemplate; }; operationsClient: gax.OperationsClient; datastreamStub?: Promise<{ [name: string]: Function; }>; /** * Construct an instance of DatastreamClient. * * @param {object} [options] - The configuration object. * The options accepted by the constructor are described in detail * in [this document](https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#creating-the-client-instance). * The common options are: * @param {object} [options.credentials] - Credentials object. * @param {string} [options.credentials.client_email] * @param {string} [options.credentials.private_key] * @param {string} [options.email] - Account email address. Required when * using a .pem or .p12 keyFilename. * @param {string} [options.keyFilename] - Full path to the a .json, .pem, or * .p12 key downloaded from the Google Developers Console. If you provide * a path to a JSON file, the projectId option below is not necessary. * NOTE: .pem and .p12 require you to specify options.email as well. * @param {number} [options.port] - The port on which to connect to * the remote host. * @param {string} [options.projectId] - The project ID from the Google * Developer's Console, e.g. 'grape-spaceship-123'. We will also check * the environment variable GCLOUD_PROJECT for your project ID. If your * app is running in an environment which supports * {@link https://cloud.google.com/docs/authentication/application-default-credentials Application Default Credentials}, * your project ID will be detected automatically. * @param {string} [options.apiEndpoint] - The domain name of the * API remote host. * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override. * Follows the structure of {@link gapicConfig}. * @param {boolean} [options.fallback] - Use HTTP/1.1 REST mode. * For more information, please check the * {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}. * @param {gax} [gaxInstance]: loaded instance of `google-gax`. Useful if you * need to avoid loading the default gRPC version and want to use the fallback * HTTP implementation. Load only fallback version and pass it to the constructor: * ``` * const gax = require('google-gax/build/src/fallback'); // avoids loading google-gax with gRPC * const client = new DatastreamClient({fallback: true}, gax); * ``` */ constructor(opts?: ClientOptions, gaxInstance?: typeof gax | typeof gax.fallback); /** * Initialize the client. * Performs asynchronous operations (such as authentication) and prepares the client. * This function will be called automatically when any class method is called for the * first time, but if you need to initialize it before calling an actual method, * feel free to call initialize() directly. * * You can await on this method if you want to make sure the client is initialized. * * @returns {Promise} A promise that resolves to an authenticated service stub. */ initialize(): Promise<{ [name: string]: Function; }>; /** * The DNS address for this API service. * @deprecated Use the apiEndpoint method of the client instance. * @returns {string} The DNS address for this service. */ static get servicePath(): string; /** * The DNS address for this API service - same as servicePath. * @deprecated Use the apiEndpoint method of the client instance. * @returns {string} The DNS address for this service. */ static get apiEndpoint(): string; /** * The DNS address for this API service. * @returns {string} The DNS address for this service. */ get apiEndpoint(): string; get universeDomain(): string; /** * The port for this API service. * @returns {number} The default port for this service. */ static get port(): number; /** * The scopes needed to make gRPC calls for every method defined * in this service. * @returns {string[]} List of default scopes. */ static get scopes(): string[]; getProjectId(): Promise<string>; getProjectId(callback: Callback<string, undefined, undefined>): void; /** * Use this method to get details about a connection profile. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. The name of the connection profile resource to get. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.cloud.datastream.v1.ConnectionProfile|ConnectionProfile}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.get_connection_profile.js</caption> * region_tag:datastream_v1_generated_Datastream_GetConnectionProfile_async */ getConnectionProfile(request?: protos.google.cloud.datastream.v1.IGetConnectionProfileRequest, options?: CallOptions): Promise<[ protos.google.cloud.datastream.v1.IConnectionProfile, protos.google.cloud.datastream.v1.IGetConnectionProfileRequest | undefined, {} | undefined ]>; getConnectionProfile(request: protos.google.cloud.datastream.v1.IGetConnectionProfileRequest, options: CallOptions, callback: Callback<protos.google.cloud.datastream.v1.IConnectionProfile, protos.google.cloud.datastream.v1.IGetConnectionProfileRequest | null | undefined, {} | null | undefined>): void; getConnectionProfile(request: protos.google.cloud.datastream.v1.IGetConnectionProfileRequest, callback: Callback<protos.google.cloud.datastream.v1.IConnectionProfile, protos.google.cloud.datastream.v1.IGetConnectionProfileRequest | null | undefined, {} | null | undefined>): void; /** * Use this method to discover a connection profile. * The discover API call exposes the data objects and metadata belonging to * the profile. Typically, a request returns children data objects of a * parent data object that's optionally supplied in the request. * * @param {Object} request * The request object that will be sent. * @param {string} request.parent * Required. The parent resource of the connection profile type. Must be in * the format `projects/* /locations/*`. * @param {google.cloud.datastream.v1.ConnectionProfile} request.connectionProfile * An ad-hoc connection profile configuration. * @param {string} request.connectionProfileName * A reference to an existing connection profile. * @param {boolean} request.fullHierarchy * Whether to retrieve the full hierarchy of data objects (TRUE) or only the * current level (FALSE). * @param {number} request.hierarchyDepth * The number of hierarchy levels below the current level to be retrieved. * @param {google.cloud.datastream.v1.OracleRdbms} request.oracleRdbms * Oracle RDBMS to enrich with child data objects and metadata. * @param {google.cloud.datastream.v1.MysqlRdbms} request.mysqlRdbms * MySQL RDBMS to enrich with child data objects and metadata. * @param {google.cloud.datastream.v1.PostgresqlRdbms} request.postgresqlRdbms * PostgreSQL RDBMS to enrich with child data objects and metadata. * @param {google.cloud.datastream.v1.SqlServerRdbms} request.sqlServerRdbms * SQLServer RDBMS to enrich with child data objects and metadata. * @param {google.cloud.datastream.v1.SalesforceOrg} request.salesforceOrg * Salesforce organization to enrich with child data objects and metadata. * @param {google.cloud.datastream.v1.MongodbCluster} request.mongodbCluster * MongoDB cluster to enrich with child data objects and metadata. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.cloud.datastream.v1.DiscoverConnectionProfileResponse|DiscoverConnectionProfileResponse}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.discover_connection_profile.js</caption> * region_tag:datastream_v1_generated_Datastream_DiscoverConnectionProfile_async */ discoverConnectionProfile(request?: protos.google.cloud.datastream.v1.IDiscoverConnectionProfileRequest, options?: CallOptions): Promise<[ protos.google.cloud.datastream.v1.IDiscoverConnectionProfileResponse, protos.google.cloud.datastream.v1.IDiscoverConnectionProfileRequest | undefined, {} | undefined ]>; discoverConnectionProfile(request: protos.google.cloud.datastream.v1.IDiscoverConnectionProfileRequest, options: CallOptions, callback: Callback<protos.google.cloud.datastream.v1.IDiscoverConnectionProfileResponse, protos.google.cloud.datastream.v1.IDiscoverConnectionProfileRequest | null | undefined, {} | null | undefined>): void; discoverConnectionProfile(request: protos.google.cloud.datastream.v1.IDiscoverConnectionProfileRequest, callback: Callback<protos.google.cloud.datastream.v1.IDiscoverConnectionProfileResponse, protos.google.cloud.datastream.v1.IDiscoverConnectionProfileRequest | null | undefined, {} | null | undefined>): void; /** * Use this method to get details about a stream. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. The name of the stream resource to get. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.cloud.datastream.v1.Stream|Stream}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.get_stream.js</caption> * region_tag:datastream_v1_generated_Datastream_GetStream_async */ getStream(request?: protos.google.cloud.datastream.v1.IGetStreamRequest, options?: CallOptions): Promise<[ protos.google.cloud.datastream.v1.IStream, protos.google.cloud.datastream.v1.IGetStreamRequest | undefined, {} | undefined ]>; getStream(request: protos.google.cloud.datastream.v1.IGetStreamRequest, options: CallOptions, callback: Callback<protos.google.cloud.datastream.v1.IStream, protos.google.cloud.datastream.v1.IGetStreamRequest | null | undefined, {} | null | undefined>): void; getStream(request: protos.google.cloud.datastream.v1.IGetStreamRequest, callback: Callback<protos.google.cloud.datastream.v1.IStream, protos.google.cloud.datastream.v1.IGetStreamRequest | null | undefined, {} | null | undefined>): void; /** * Use this method to get details about a stream object. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. The name of the stream object resource to get. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.cloud.datastream.v1.StreamObject|StreamObject}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.get_stream_object.js</caption> * region_tag:datastream_v1_generated_Datastream_GetStreamObject_async */ getStreamObject(request?: protos.google.cloud.datastream.v1.IGetStreamObjectRequest, options?: CallOptions): Promise<[ protos.google.cloud.datastream.v1.IStreamObject, protos.google.cloud.datastream.v1.IGetStreamObjectRequest | undefined, {} | undefined ]>; getStreamObject(request: protos.google.cloud.datastream.v1.IGetStreamObjectRequest, options: CallOptions, callback: Callback<protos.google.cloud.datastream.v1.IStreamObject, protos.google.cloud.datastream.v1.IGetStreamObjectRequest | null | undefined, {} | null | undefined>): void; getStreamObject(request: protos.google.cloud.datastream.v1.IGetStreamObjectRequest, callback: Callback<protos.google.cloud.datastream.v1.IStreamObject, protos.google.cloud.datastream.v1.IGetStreamObjectRequest | null | undefined, {} | null | undefined>): void; /** * Use this method to look up a stream object by its source object identifier. * * @param {Object} request * The request object that will be sent. * @param {string} request.parent * Required. The parent stream that owns the collection of objects. * @param {google.cloud.datastream.v1.SourceObjectIdentifier} request.sourceObjectIdentifier * Required. The source object identifier which maps to the stream object. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.cloud.datastream.v1.StreamObject|StreamObject}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.lookup_stream_object.js</caption> * region_tag:datastream_v1_generated_Datastream_LookupStreamObject_async */ lookupStreamObject(request?: protos.google.cloud.datastream.v1.ILookupStreamObjectRequest, options?: CallOptions): Promise<[ protos.google.cloud.datastream.v1.IStreamObject, protos.google.cloud.datastream.v1.ILookupStreamObjectRequest | undefined, {} | undefined ]>; lookupStreamObject(request: protos.google.cloud.datastream.v1.ILookupStreamObjectRequest, options: CallOptions, callback: Callback<protos.google.cloud.datastream.v1.IStreamObject, protos.google.cloud.datastream.v1.ILookupStreamObjectRequest | null | undefined, {} | null | undefined>): void; lookupStreamObject(request: protos.google.cloud.datastream.v1.ILookupStreamObjectRequest, callback: Callback<protos.google.cloud.datastream.v1.IStreamObject, protos.google.cloud.datastream.v1.ILookupStreamObjectRequest | null | undefined, {} | null | undefined>): void; /** * Use this method to start a backfill job for the specified stream object. * * @param {Object} request * The request object that will be sent. * @param {string} request.object * Required. The name of the stream object resource to start a backfill job * for. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.cloud.datastream.v1.StartBackfillJobResponse|StartBackfillJobResponse}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.start_backfill_job.js</caption> * region_tag:datastream_v1_generated_Datastream_StartBackfillJob_async */ startBackfillJob(request?: protos.google.cloud.datastream.v1.IStartBackfillJobRequest, options?: CallOptions): Promise<[ protos.google.cloud.datastream.v1.IStartBackfillJobResponse, protos.google.cloud.datastream.v1.IStartBackfillJobRequest | undefined, {} | undefined ]>; startBackfillJob(request: protos.google.cloud.datastream.v1.IStartBackfillJobRequest, options: CallOptions, callback: Callback<protos.google.cloud.datastream.v1.IStartBackfillJobResponse, protos.google.cloud.datastream.v1.IStartBackfillJobRequest | null | undefined, {} | null | undefined>): void; startBackfillJob(request: protos.google.cloud.datastream.v1.IStartBackfillJobRequest, callback: Callback<protos.google.cloud.datastream.v1.IStartBackfillJobResponse, protos.google.cloud.datastream.v1.IStartBackfillJobRequest | null | undefined, {} | null | undefined>): void; /** * Use this method to stop a backfill job for the specified stream object. * * @param {Object} request * The request object that will be sent. * @param {string} request.object * Required. The name of the stream object resource to stop the backfill job * for. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.cloud.datastream.v1.StopBackfillJobResponse|StopBackfillJobResponse}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.stop_backfill_job.js</caption> * region_tag:datastream_v1_generated_Datastream_StopBackfillJob_async */ stopBackfillJob(request?: protos.google.cloud.datastream.v1.IStopBackfillJobRequest, options?: CallOptions): Promise<[ protos.google.cloud.datastream.v1.IStopBackfillJobResponse, protos.google.cloud.datastream.v1.IStopBackfillJobRequest | undefined, {} | undefined ]>; stopBackfillJob(request: protos.google.cloud.datastream.v1.IStopBackfillJobRequest, options: CallOptions, callback: Callback<protos.google.cloud.datastream.v1.IStopBackfillJobResponse, protos.google.cloud.datastream.v1.IStopBackfillJobRequest | null | undefined, {} | null | undefined>): void; stopBackfillJob(request: protos.google.cloud.datastream.v1.IStopBackfillJobRequest, callback: Callback<protos.google.cloud.datastream.v1.IStopBackfillJobResponse, protos.google.cloud.datastream.v1.IStopBackfillJobRequest | null | undefined, {} | null | undefined>): void; /** * Use this method to get details about a private connectivity configuration. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. The name of the private connectivity configuration to get. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.cloud.datastream.v1.PrivateConnection|PrivateConnection}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.get_private_connection.js</caption> * region_tag:datastream_v1_generated_Datastream_GetPrivateConnection_async */ getPrivateConnection(request?: protos.google.cloud.datastream.v1.IGetPrivateConnectionRequest, options?: CallOptions): Promise<[ protos.google.cloud.datastream.v1.IPrivateConnection, protos.google.cloud.datastream.v1.IGetPrivateConnectionRequest | undefined, {} | undefined ]>; getPrivateConnection(request: protos.google.cloud.datastream.v1.IGetPrivateConnectionRequest, options: CallOptions, callback: Callback<protos.google.cloud.datastream.v1.IPrivateConnection, protos.google.cloud.datastream.v1.IGetPrivateConnectionRequest | null | undefined, {} | null | undefined>): void; getPrivateConnection(request: protos.google.cloud.datastream.v1.IGetPrivateConnectionRequest, callback: Callback<protos.google.cloud.datastream.v1.IPrivateConnection, protos.google.cloud.datastream.v1.IGetPrivateConnectionRequest | null | undefined, {} | null | undefined>): void; /** * Use this method to get details about a route. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. The name of the Route resource to get. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.cloud.datastream.v1.Route|Route}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.get_route.js</caption> * region_tag:datastream_v1_generated_Datastream_GetRoute_async */ getRoute(request?: protos.google.cloud.datastream.v1.IGetRouteRequest, options?: CallOptions): Promise<[ protos.google.cloud.datastream.v1.IRoute, protos.google.cloud.datastream.v1.IGetRouteRequest | undefined, {} | undefined ]>; getRoute(request: protos.google.cloud.datastream.v1.IGetRouteRequest, options: CallOptions, callback: Callback<protos.google.cloud.datastream.v1.IRoute, protos.google.cloud.datastream.v1.IGetRouteRequest | null | undefined, {} | null | undefined>): void; getRoute(request: protos.google.cloud.datastream.v1.IGetRouteRequest, callback: Callback<protos.google.cloud.datastream.v1.IRoute, protos.google.cloud.datastream.v1.IGetRouteRequest | null | undefined, {} | null | undefined>): void; /** * Use this method to create a connection profile in a project and location. * * @param {Object} request * The request object that will be sent. * @param {string} request.parent * Required. The parent that owns the collection of ConnectionProfiles. * @param {string} request.connectionProfileId * Required. The connection profile identifier. * @param {google.cloud.datastream.v1.ConnectionProfile} request.connectionProfile * Required. The connection profile resource to create. * @param {string} [request.requestId] * Optional. A request ID to identify requests. Specify a unique request ID * so that if you must retry your request, the server will know to ignore * the request if it has already been completed. The server will guarantee * that for at least 60 minutes since the first request. * * For example, consider a situation where you make an initial request and the * request times out. If you make the request again with the same request ID, * the server can check if original operation with the same request ID was * received, and if so, will ignore the second request. This prevents clients * from accidentally creating duplicate commitments. * * The request ID must be a valid UUID with the exception that zero UUID is * not supported (00000000-0000-0000-0000-000000000000). * @param {boolean} [request.validateOnly] * Optional. Only validate the connection profile, but don't create any * resources. The default is false. * @param {boolean} [request.force] * Optional. Create the connection profile without validating it. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing * a long running operation. Its `promise()` method returns a promise * you can `await` for. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.create_connection_profile.js</caption> * region_tag:datastream_v1_generated_Datastream_CreateConnectionProfile_async */ createConnectionProfile(request?: protos.google.cloud.datastream.v1.ICreateConnectionProfileRequest, options?: CallOptions): Promise<[ LROperation<protos.google.cloud.datastream.v1.IConnectionProfile, protos.google.cloud.datastream.v1.IOperationMetadata>, protos.google.longrunning.IOperation | undefined, {} | undefined ]>; createConnectionProfile(request: protos.google.cloud.datastream.v1.ICreateConnectionProfileRequest, options: CallOptions, callback: Callback<LROperation<protos.google.cloud.datastream.v1.IConnectionProfile, protos.google.cloud.datastream.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void; createConnectionProfile(request: protos.google.cloud.datastream.v1.ICreateConnectionProfileRequest, callback: Callback<LROperation<protos.google.cloud.datastream.v1.IConnectionProfile, protos.google.cloud.datastream.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void; /** * Check the status of the long running operation returned by `createConnectionProfile()`. * @param {String} name * The operation name that will be passed. * @returns {Promise} - The promise which resolves to an object. * The decoded operation object has result and metadata field to get information from. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.create_connection_profile.js</caption> * region_tag:datastream_v1_generated_Datastream_CreateConnectionProfile_async */ checkCreateConnectionProfileProgress(name: string): Promise<LROperation<protos.google.cloud.datastream.v1.ConnectionProfile, protos.google.cloud.datastream.v1.OperationMetadata>>; /** * Use this method to update the parameters of a connection profile. * * @param {Object} request * The request object that will be sent. * @param {google.protobuf.FieldMask} [request.updateMask] * Optional. Field mask is used to specify the fields to be overwritten in the * ConnectionProfile resource by the update. * The fields specified in the update_mask are relative to the resource, not * the full request. A field will be overwritten if it is in the mask. If the * user does not provide a mask then all fields will be overwritten. * @param {google.cloud.datastream.v1.ConnectionProfile} request.connectionProfile * Required. The connection profile to update. * @param {string} [request.requestId] * Optional. A request ID to identify requests. Specify a unique request ID * so that if you must retry your request, the server will know to ignore * the request if it has already been completed. The server will guarantee * that for at least 60 minutes since the first request. * * For example, consider a situation where you make an initial request and the * request times out. If you make the request again with the same request ID, * the server can check if original operation with the same request ID was * received, and if so, will ignore the second request. This prevents clients * from accidentally creating duplicate commitments. * * The request ID must be a valid UUID with the exception that zero UUID is * not supported (00000000-0000-0000-0000-000000000000). * @param {boolean} [request.validateOnly] * Optional. Only validate the connection profile, but don't update any * resources. The default is false. * @param {boolean} [request.force] * Optional. Update the connection profile without validating it. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing * a long running operation. Its `promise()` method returns a promise * you can `await` for. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.update_connection_profile.js</caption> * region_tag:datastream_v1_generated_Datastream_UpdateConnectionProfile_async */ updateConnectionProfile(request?: protos.google.cloud.datastream.v1.IUpdateConnectionProfileRequest, options?: CallOptions): Promise<[ LROperation<protos.google.cloud.datastream.v1.IConnectionProfile, protos.google.cloud.datastream.v1.IOperationMetadata>, protos.google.longrunning.IOperation | undefined, {} | undefined ]>; updateConnectionProfile(request: protos.google.cloud.datastream.v1.IUpdateConnectionProfileRequest, options: CallOptions, callback: Callback<LROperation<protos.google.cloud.datastream.v1.IConnectionProfile, protos.google.cloud.datastream.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void; updateConnectionProfile(request: protos.google.cloud.datastream.v1.IUpdateConnectionProfileRequest, callback: Callback<LROperation<protos.google.cloud.datastream.v1.IConnectionProfile, protos.google.cloud.datastream.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void; /** * Check the status of the long running operation returned by `updateConnectionProfile()`. * @param {String} name * The operation name that will be passed. * @returns {Promise} - The promise which resolves to an object. * The decoded operation object has result and metadata field to get information from. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.update_connection_profile.js</caption> * region_tag:datastream_v1_generated_Datastream_UpdateConnectionProfile_async */ checkUpdateConnectionProfileProgress(name: string): Promise<LROperation<protos.google.cloud.datastream.v1.ConnectionProfile, protos.google.cloud.datastream.v1.OperationMetadata>>; /** * Use this method to delete a connection profile. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. The name of the connection profile resource to delete. * @param {string} [request.requestId] * Optional. A request ID to identify requests. Specify a unique request ID * so that if you must retry your request, the server will know to ignore * the request if it has already been completed. The server will guarantee * that for at least 60 minutes after the first request. * * For example, consider a situation where you make an initial request and the * request times out. If you make the request again with the same request ID, * the server can check if original operation with the same request ID was * received, and if so, will ignore the second request. This prevents clients * from accidentally creating duplicate commitments. * * The request ID must be a valid UUID with the exception that zero UUID is * not supported (00000000-0000-0000-0000-000000000000). * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing * a long running operation. Its `promise()` method returns a promise * you can `await` for. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.delete_connection_profile.js</caption> * region_tag:datastream_v1_generated_Datastream_DeleteConnectionProfile_async */ deleteConnectionProfile(request?: protos.google.cloud.datastream.v1.IDeleteConnectionProfileRequest, options?: CallOptions): Promise<[ LROperation<protos.google.protobuf.IEmpty, protos.google.cloud.datastream.v1.IOperationMetadata>, protos.google.longrunning.IOperation | undefined, {} | undefined ]>; deleteConnectionProfile(request: protos.google.cloud.datastream.v1.IDeleteConnectionProfileRequest, options: CallOptions, callback: Callback<LROperation<protos.google.protobuf.IEmpty, protos.google.cloud.datastream.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void; deleteConnectionProfile(request: protos.google.cloud.datastream.v1.IDeleteConnectionProfileRequest, callback: Callback<LROperation<protos.google.protobuf.IEmpty, protos.google.cloud.datastream.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void; /** * Check the status of the long running operation returned by `deleteConnectionProfile()`. * @param {String} name * The operation name that will be passed. * @returns {Promise} - The promise which resolves to an object. * The decoded operation object has result and metadata field to get information from. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.delete_connection_profile.js</caption> * region_tag:datastream_v1_generated_Datastream_DeleteConnectionProfile_async */ checkDeleteConnectionProfileProgress(name: string): Promise<LROperation<protos.google.protobuf.Empty, protos.google.cloud.datastream.v1.OperationMetadata>>; /** * Use this method to create a stream. * * @param {Object} request * The request object that will be sent. * @param {string} request.parent * Required. The parent that owns the collection of streams. * @param {string} request.streamId * Required. The stream identifier. * @param {google.cloud.datastream.v1.Stream} request.stream * Required. The stream resource to create. * @param {string} [request.requestId] * Optional. A request ID to identify requests. Specify a unique request ID * so that if you must retry your request, the server will know to ignore * the request if it has already been completed. The server will guarantee * that for at least 60 minutes since the first request. * * For example, consider a situation where you make an initial request and the * request times out. If you make the request again with the same request ID, * the server can check if original operation with the same request ID was * received, and if so, will ignore the second request. This prevents clients * from accidentally creating duplicate commitments. * * The request ID must be a valid UUID with the exception that zero UUID is * not supported (00000000-0000-0000-0000-000000000000). * @param {boolean} [request.validateOnly] * Optional. Only validate the stream, but don't create any resources. * The default is false. * @param {boolean} [request.force] * Optional. Create the stream without validating it. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing * a long running operation. Its `promise()` method returns a promise * you can `await` for. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.create_stream.js</caption> * region_tag:datastream_v1_generated_Datastream_CreateStream_async */ createStream(request?: protos.google.cloud.datastream.v1.ICreateStreamRequest, options?: CallOptions): Promise<[ LROperation<protos.google.cloud.datastream.v1.IStream, protos.google.cloud.datastream.v1.IOperationMetadata>, protos.google.longrunning.IOperation | undefined, {} | undefined ]>; createStream(request: protos.google.cloud.datastream.v1.ICreateStreamRequest, options: CallOptions, callback: Callback<LROperation<protos.google.cloud.datastream.v1.IStream, protos.google.cloud.datastream.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void; createStream(request: protos.google.cloud.datastream.v1.ICreateStreamRequest, callback: Callback<LROperation<protos.google.cloud.datastream.v1.IStream, protos.google.cloud.datastream.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void; /** * Check the status of the long running operation returned by `createStream()`. * @param {String} name * The operation name that will be passed. * @returns {Promise} - The promise which resolves to an object. * The decoded operation object has result and metadata field to get information from. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.create_stream.js</caption> * region_tag:datastream_v1_generated_Datastream_CreateStream_async */ checkCreateStreamProgress(name: string): Promise<LROperation<protos.google.cloud.datastream.v1.Stream, protos.google.cloud.datastream.v1.OperationMetadata>>; /** * Use this method to update the configuration of a stream. * * @param {Object} request * The request object that will be sent. * @param {google.protobuf.FieldMask} [request.updateMask] * Optional. Field mask is used to specify the fields to be overwritten in the * stream resource by the update. * The fields specified in the update_mask are relative to the resource, not * the full request. A field will be overwritten if it is in the mask. If the * user does not provide a mask then all fields will be overwritten. * @param {google.cloud.datastream.v1.Stream} request.stream * Required. The stream resource to update. * @param {string} [request.requestId] * Optional. A request ID to identify requests. Specify a unique request ID * so that if you must retry your request, the server will know to ignore * the request if it has already been completed. The server will guarantee * that for at least 60 minutes since the first request. * * For example, consider a situation where you make an initial request and the * request times out. If you make the request again with the same request ID, * the server can check if original operation with the same request ID was * received, and if so, will ignore the second request. This prevents clients * from accidentally creating duplicate commitments. * * The request ID must be a valid UUID with the exception that zero UUID is * not supported (00000000-0000-0000-0000-000000000000). * @param {boolean} [request.validateOnly] * Optional. Only validate the stream with the changes, without actually * updating it. The default is false. * @param {boolean} [request.force] * Optional. Update the stream without validating it. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing * a long running operation. Its `promise()` method returns a promise * you can `await` for. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.update_stream.js</caption> * region_tag:datastream_v1_generated_Datastream_UpdateStream_async */ updateStream(request?: protos.google.cloud.datastream.v1.IUpdateStreamRequest, options?: CallOptions): Promise<[ LROperation<protos.google.cloud.datastream.v1.IStream, protos.google.cloud.datastream.v1.IOperationMetadata>, protos.google.longrunning.IOperation | undefined, {} | undefined ]>; updateStream(request: protos.google.cloud.datastream.v1.IUpdateStreamRequest, options: CallOptions, callback: Callback<LROperation<protos.google.cloud.datastream.v1.IStream, protos.google.cloud.datastream.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void; updateStream(request: protos.google.cloud.datastream.v1.IUpdateStreamRequest, callback: Callback<LROperation<protos.google.cloud.datastream.v1.IStream, protos.google.cloud.datastream.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void; /** * Check the status of the long running operation returned by `updateStream()`. * @param {String} name * The operation name that will be passed. * @returns {Promise} - The promise which resolves to an object. * The decoded operation object has result and metadata field to get information from. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.update_stream.js</caption> * region_tag:datastream_v1_generated_Datastream_UpdateStream_async */ checkUpdateStreamProgress(name: string): Promise<LROperation<protos.google.cloud.datastream.v1.Stream, protos.google.cloud.datastream.v1.OperationMetadata>>; /** * Use this method to delete a stream. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. The name of the stream resource to delete. * @param {string} [request.requestId] * Optional. A request ID to identify requests. Specify a unique request ID * so that if you must retry your request, the server will know to ignore * the request if it has already been completed. The server will guarantee * that for at least 60 minutes after the first request. * * For example, consider a situation where you make an initial request and the * request times out. If you make the request again with the same request ID, * the server can check if original operation with the same request ID was * received, and if so, will ignore the second request. This prevents clients * from accidentally creating duplicate commitments. * * The request ID must be a valid UUID with the exception that zero UUID is * not supported (00000000-0000-0000-0000-000000000000). * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing * a long running operation. Its `promise()` method returns a promise * you can `await` for. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.delete_stream.js</caption> * region_tag:datastream_v1_generated_Datastream_DeleteStream_async */ deleteStream(request?: protos.google.cloud.datastream.v1.IDeleteStreamRequest, options?: CallOptions): Promise<[ LROperation<protos.google.protobuf.IEmpty, protos.google.cloud.datastream.v1.IOperationMetadata>, protos.google.longrunning.IOperation | undefined, {} | undefined ]>; deleteStream(request: protos.google.cloud.datastream.v1.IDeleteStreamRequest, options: CallOptions, callback: Callback<LROperation<protos.google.protobuf.IEmpty, protos.google.cloud.datastream.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void; deleteStream(request: protos.google.cloud.datastream.v1.IDeleteStreamRequest, callback: Callback<LROperation<protos.google.protobuf.IEmpty, protos.google.cloud.datastream.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void; /** * Check the status of the long running operation returned by `deleteStream()`. * @param {String} name * The operation name that will be passed. * @returns {Promise} - The promise which resolves to an object. * The decoded operation object has result and metadata field to get information from. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation } * for more details and examples. * @example <caption>include:samples/generated/v1/datastream.delete_stream.js</caption> * region_tag:datastream_v1_generated_Datastream_DeleteStream_async */ checkDeleteStreamProgress(name: string): Promise<LROperation<protos.google.protobuf.Empty, protos.google.cloud.datastream.v1.OperationMetadata>>; /** * Use this method to start, resume or recover a stream with a non default CDC * strategy. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. Name of the stream resource to start, in the format: * projects/{project_id}/locations/{location}/streams/{stream_name} * @param {google.cloud.datastream.v1.CdcStrategy} [request.cdcStrategy] * Optional. The CDC strategy of the stre