diff --git a/clients/datastream/lib/google_api/datastream/v1/api/projects.ex b/clients/datastream/lib/google_api/datastream/v1/api/projects.ex index 7a08de81d0..77edb81c86 100644 --- a/clients/datastream/lib/google_api/datastream/v1/api/projects.ex +++ b/clients/datastream/lib/google_api/datastream/v1/api/projects.ex @@ -894,7 +894,7 @@ defmodule GoogleApi.Datastream.V1.Api.Projects do end @doc """ - Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to override the binding to use different resource name schemes, such as `users/*/operations`. To override the binding, API services can add a binding such as `"/v1/{name=users/*}/operations"` to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id. + Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. ## Parameters @@ -988,6 +988,7 @@ defmodule GoogleApi.Datastream.V1.Api.Projects do * `:quotaUser` (*type:* `String.t`) - Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:force` (*type:* `boolean()`) - Optional. If set to true, will skip validations. * `:privateConnectionId` (*type:* `String.t`) - Required. The private connectivity identifier. * `:requestId` (*type:* `String.t`) - 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). * `:body` (*type:* `GoogleApi.Datastream.V1.Model.PrivateConnection.t`) - @@ -1026,6 +1027,7 @@ defmodule GoogleApi.Datastream.V1.Api.Projects do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, + :force => :query, :privateConnectionId => :query, :requestId => :query, :body => :body @@ -1945,6 +1947,78 @@ defmodule GoogleApi.Datastream.V1.Api.Projects do |> Response.decode(opts ++ [struct: %GoogleApi.Datastream.V1.Model.Operation{}]) end + @doc """ + Use this method to start, resume or recover a stream with a non default CDC strategy. NOTE: This feature is currently experimental. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Datastream.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Name of the stream resource to start, in the format: projects/{project_id}/locations/{location}/streams/{stream_name} + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Datastream.V1.Model.RunStreamRequest.t`) - + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Datastream.V1.Model.Operation{}}` on success + * `{:error, info}` on failure + """ + @spec datastream_projects_locations_streams_run( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Datastream.V1.Model.Operation.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def datastream_projects_locations_streams_run( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :body => :body + } + + request = + Request.new() + |> Request.method(:post) + |> Request.url("/v1/{+name}:run", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode(opts ++ [struct: %GoogleApi.Datastream.V1.Model.Operation{}]) + end + @doc """ Use this method to get details about a stream object. diff --git a/clients/datastream/lib/google_api/datastream/v1/metadata.ex b/clients/datastream/lib/google_api/datastream/v1/metadata.ex index 047aac97b2..2975904b2e 100644 --- a/clients/datastream/lib/google_api/datastream/v1/metadata.ex +++ b/clients/datastream/lib/google_api/datastream/v1/metadata.ex @@ -20,7 +20,7 @@ defmodule GoogleApi.Datastream.V1 do API client metadata for GoogleApi.Datastream.V1. """ - @discovery_revision "20221019" + @discovery_revision "20240228" def discovery_revision(), do: @discovery_revision end diff --git a/clients/datastream/lib/google_api/datastream/v1/model/backfill_all_strategy.ex b/clients/datastream/lib/google_api/datastream/v1/model/backfill_all_strategy.ex index 26466750c1..fb0555e89f 100644 --- a/clients/datastream/lib/google_api/datastream/v1/model/backfill_all_strategy.ex +++ b/clients/datastream/lib/google_api/datastream/v1/model/backfill_all_strategy.ex @@ -24,6 +24,7 @@ defmodule GoogleApi.Datastream.V1.Model.BackfillAllStrategy do * `mysqlExcludedObjects` (*type:* `GoogleApi.Datastream.V1.Model.MysqlRdbms.t`, *default:* `nil`) - MySQL data source objects to avoid backfilling. * `oracleExcludedObjects` (*type:* `GoogleApi.Datastream.V1.Model.OracleRdbms.t`, *default:* `nil`) - Oracle data source objects to avoid backfilling. * `postgresqlExcludedObjects` (*type:* `GoogleApi.Datastream.V1.Model.PostgresqlRdbms.t`, *default:* `nil`) - PostgreSQL data source objects to avoid backfilling. + * `sqlServerExcludedObjects` (*type:* `GoogleApi.Datastream.V1.Model.SqlServerRdbms.t`, *default:* `nil`) - SQLServer data source objects to avoid backfilling """ use GoogleApi.Gax.ModelBase @@ -31,12 +32,14 @@ defmodule GoogleApi.Datastream.V1.Model.BackfillAllStrategy do @type t :: %__MODULE__{ :mysqlExcludedObjects => GoogleApi.Datastream.V1.Model.MysqlRdbms.t() | nil, :oracleExcludedObjects => GoogleApi.Datastream.V1.Model.OracleRdbms.t() | nil, - :postgresqlExcludedObjects => GoogleApi.Datastream.V1.Model.PostgresqlRdbms.t() | nil + :postgresqlExcludedObjects => GoogleApi.Datastream.V1.Model.PostgresqlRdbms.t() | nil, + :sqlServerExcludedObjects => GoogleApi.Datastream.V1.Model.SqlServerRdbms.t() | nil } field(:mysqlExcludedObjects, as: GoogleApi.Datastream.V1.Model.MysqlRdbms) field(:oracleExcludedObjects, as: GoogleApi.Datastream.V1.Model.OracleRdbms) field(:postgresqlExcludedObjects, as: GoogleApi.Datastream.V1.Model.PostgresqlRdbms) + field(:sqlServerExcludedObjects, as: GoogleApi.Datastream.V1.Model.SqlServerRdbms) end defimpl Poison.Decoder, for: GoogleApi.Datastream.V1.Model.BackfillAllStrategy do diff --git a/clients/datastream/lib/google_api/datastream/v1/model/backfill_job.ex b/clients/datastream/lib/google_api/datastream/v1/model/backfill_job.ex index d28e0e8b72..9dd41a30da 100644 --- a/clients/datastream/lib/google_api/datastream/v1/model/backfill_job.ex +++ b/clients/datastream/lib/google_api/datastream/v1/model/backfill_job.ex @@ -24,7 +24,7 @@ defmodule GoogleApi.Datastream.V1.Model.BackfillJob do * `errors` (*type:* `list(GoogleApi.Datastream.V1.Model.Error.t)`, *default:* `nil`) - Output only. Errors which caused the backfill job to fail. * `lastEndTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. Backfill job's end time. * `lastStartTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. Backfill job's start time. - * `state` (*type:* `String.t`, *default:* `nil`) - Backfill job state. + * `state` (*type:* `String.t`, *default:* `nil`) - Output only. Backfill job state. * `trigger` (*type:* `String.t`, *default:* `nil`) - Backfill job's triggering reason. """ diff --git a/clients/datastream/lib/google_api/datastream/v1/model/big_query_destination_config.ex b/clients/datastream/lib/google_api/datastream/v1/model/big_query_destination_config.ex index af41b17ec4..d75c99edc1 100644 --- a/clients/datastream/lib/google_api/datastream/v1/model/big_query_destination_config.ex +++ b/clients/datastream/lib/google_api/datastream/v1/model/big_query_destination_config.ex @@ -17,7 +17,7 @@ defmodule GoogleApi.Datastream.V1.Model.BigQueryDestinationConfig do @moduledoc """ - + BigQuery destination configuration ## Attributes diff --git a/clients/datastream/lib/google_api/datastream/v1/model/cdc_strategy.ex b/clients/datastream/lib/google_api/datastream/v1/model/cdc_strategy.ex new file mode 100644 index 0000000000..ca57fb66c1 --- /dev/null +++ b/clients/datastream/lib/google_api/datastream/v1/model/cdc_strategy.ex @@ -0,0 +1,54 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Datastream.V1.Model.CdcStrategy do + @moduledoc """ + The strategy that the stream uses for CDC replication. + + ## Attributes + + * `mostRecentStartPosition` (*type:* `GoogleApi.Datastream.V1.Model.MostRecentStartPosition.t`, *default:* `nil`) - Optional. Start replicating from the most recent position in the source. + * `nextAvailableStartPosition` (*type:* `GoogleApi.Datastream.V1.Model.NextAvailableStartPosition.t`, *default:* `nil`) - Optional. Resume replication from the next available position in the source. + * `specificStartPosition` (*type:* `GoogleApi.Datastream.V1.Model.SpecificStartPosition.t`, *default:* `nil`) - Optional. Start replicating from a specific position in the source. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :mostRecentStartPosition => + GoogleApi.Datastream.V1.Model.MostRecentStartPosition.t() | nil, + :nextAvailableStartPosition => + GoogleApi.Datastream.V1.Model.NextAvailableStartPosition.t() | nil, + :specificStartPosition => GoogleApi.Datastream.V1.Model.SpecificStartPosition.t() | nil + } + + field(:mostRecentStartPosition, as: GoogleApi.Datastream.V1.Model.MostRecentStartPosition) + field(:nextAvailableStartPosition, as: GoogleApi.Datastream.V1.Model.NextAvailableStartPosition) + field(:specificStartPosition, as: GoogleApi.Datastream.V1.Model.SpecificStartPosition) +end + +defimpl Poison.Decoder, for: GoogleApi.Datastream.V1.Model.CdcStrategy do + def decode(value, options) do + GoogleApi.Datastream.V1.Model.CdcStrategy.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Datastream.V1.Model.CdcStrategy do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/datastream/lib/google_api/datastream/v1/model/connection_profile.ex b/clients/datastream/lib/google_api/datastream/v1/model/connection_profile.ex index 6346056eb7..ad9b85d260 100644 --- a/clients/datastream/lib/google_api/datastream/v1/model/connection_profile.ex +++ b/clients/datastream/lib/google_api/datastream/v1/model/connection_profile.ex @@ -32,6 +32,7 @@ defmodule GoogleApi.Datastream.V1.Model.ConnectionProfile do * `oracleProfile` (*type:* `GoogleApi.Datastream.V1.Model.OracleProfile.t`, *default:* `nil`) - Oracle ConnectionProfile configuration. * `postgresqlProfile` (*type:* `GoogleApi.Datastream.V1.Model.PostgresqlProfile.t`, *default:* `nil`) - PostgreSQL Connection Profile configuration. * `privateConnectivity` (*type:* `GoogleApi.Datastream.V1.Model.PrivateConnectivity.t`, *default:* `nil`) - Private connectivity. + * `sqlServerProfile` (*type:* `GoogleApi.Datastream.V1.Model.SqlServerProfile.t`, *default:* `nil`) - SQLServer Connection Profile configuration. * `staticServiceIpConnectivity` (*type:* `GoogleApi.Datastream.V1.Model.StaticServiceIpConnectivity.t`, *default:* `nil`) - Static Service IP connectivity. * `updateTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The update time of the resource. """ @@ -51,6 +52,7 @@ defmodule GoogleApi.Datastream.V1.Model.ConnectionProfile do :oracleProfile => GoogleApi.Datastream.V1.Model.OracleProfile.t() | nil, :postgresqlProfile => GoogleApi.Datastream.V1.Model.PostgresqlProfile.t() | nil, :privateConnectivity => GoogleApi.Datastream.V1.Model.PrivateConnectivity.t() | nil, + :sqlServerProfile => GoogleApi.Datastream.V1.Model.SqlServerProfile.t() | nil, :staticServiceIpConnectivity => GoogleApi.Datastream.V1.Model.StaticServiceIpConnectivity.t() | nil, :updateTime => DateTime.t() | nil @@ -67,6 +69,7 @@ defmodule GoogleApi.Datastream.V1.Model.ConnectionProfile do field(:oracleProfile, as: GoogleApi.Datastream.V1.Model.OracleProfile) field(:postgresqlProfile, as: GoogleApi.Datastream.V1.Model.PostgresqlProfile) field(:privateConnectivity, as: GoogleApi.Datastream.V1.Model.PrivateConnectivity) + field(:sqlServerProfile, as: GoogleApi.Datastream.V1.Model.SqlServerProfile) field(:staticServiceIpConnectivity, as: GoogleApi.Datastream.V1.Model.StaticServiceIpConnectivity diff --git a/clients/datastream/lib/google_api/datastream/v1/model/gcs_destination_config.ex b/clients/datastream/lib/google_api/datastream/v1/model/gcs_destination_config.ex index dc95b5c128..01cab3e06d 100644 --- a/clients/datastream/lib/google_api/datastream/v1/model/gcs_destination_config.ex +++ b/clients/datastream/lib/google_api/datastream/v1/model/gcs_destination_config.ex @@ -22,7 +22,7 @@ defmodule GoogleApi.Datastream.V1.Model.GcsDestinationConfig do ## Attributes * `avroFileFormat` (*type:* `GoogleApi.Datastream.V1.Model.AvroFileFormat.t`, *default:* `nil`) - AVRO file format configuration. - * `fileRotationInterval` (*type:* `String.t`, *default:* `nil`) - The maximum duration for which new events are added before a file is closed and a new file is created. + * `fileRotationInterval` (*type:* `String.t`, *default:* `nil`) - The maximum duration for which new events are added before a file is closed and a new file is created. Values within the range of 15-60 seconds are allowed. * `fileRotationMb` (*type:* `integer()`, *default:* `nil`) - The maximum file size to be saved in the bucket. * `jsonFileFormat` (*type:* `GoogleApi.Datastream.V1.Model.JsonFileFormat.t`, *default:* `nil`) - JSON file format configuration. * `path` (*type:* `String.t`, *default:* `nil`) - Path inside the Cloud Storage bucket to write data to. diff --git a/clients/datastream/lib/google_api/datastream/v1/model/location.ex b/clients/datastream/lib/google_api/datastream/v1/model/location.ex index ed52d3a2f2..199fa31820 100644 --- a/clients/datastream/lib/google_api/datastream/v1/model/location.ex +++ b/clients/datastream/lib/google_api/datastream/v1/model/location.ex @@ -17,7 +17,7 @@ defmodule GoogleApi.Datastream.V1.Model.Location do @moduledoc """ - A resource that represents Google Cloud Platform location. + A resource that represents a Google Cloud location. ## Attributes diff --git a/clients/datastream/lib/google_api/datastream/v1/model/most_recent_start_position.ex b/clients/datastream/lib/google_api/datastream/v1/model/most_recent_start_position.ex new file mode 100644 index 0000000000..f1a0b1a23c --- /dev/null +++ b/clients/datastream/lib/google_api/datastream/v1/model/most_recent_start_position.ex @@ -0,0 +1,41 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Datastream.V1.Model.MostRecentStartPosition do + @moduledoc """ + CDC strategy to start replicating from the most recent position in the source. + + ## Attributes + + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{} +end + +defimpl Poison.Decoder, for: GoogleApi.Datastream.V1.Model.MostRecentStartPosition do + def decode(value, options) do + GoogleApi.Datastream.V1.Model.MostRecentStartPosition.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Datastream.V1.Model.MostRecentStartPosition do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/datastream/lib/google_api/datastream/v1/model/mysql_column.ex b/clients/datastream/lib/google_api/datastream/v1/model/mysql_column.ex index ac292f6c08..6be608893f 100644 --- a/clients/datastream/lib/google_api/datastream/v1/model/mysql_column.ex +++ b/clients/datastream/lib/google_api/datastream/v1/model/mysql_column.ex @@ -27,7 +27,9 @@ defmodule GoogleApi.Datastream.V1.Model.MysqlColumn do * `length` (*type:* `integer()`, *default:* `nil`) - Column length. * `nullable` (*type:* `boolean()`, *default:* `nil`) - Whether or not the column can accept a null value. * `ordinalPosition` (*type:* `integer()`, *default:* `nil`) - The ordinal position of the column in the table. + * `precision` (*type:* `integer()`, *default:* `nil`) - Column precision. * `primaryKey` (*type:* `boolean()`, *default:* `nil`) - Whether or not the column represents a primary key. + * `scale` (*type:* `integer()`, *default:* `nil`) - Column scale. """ use GoogleApi.Gax.ModelBase @@ -39,7 +41,9 @@ defmodule GoogleApi.Datastream.V1.Model.MysqlColumn do :length => integer() | nil, :nullable => boolean() | nil, :ordinalPosition => integer() | nil, - :primaryKey => boolean() | nil + :precision => integer() | nil, + :primaryKey => boolean() | nil, + :scale => integer() | nil } field(:collation) @@ -48,7 +52,9 @@ defmodule GoogleApi.Datastream.V1.Model.MysqlColumn do field(:length) field(:nullable) field(:ordinalPosition) + field(:precision) field(:primaryKey) + field(:scale) end defimpl Poison.Decoder, for: GoogleApi.Datastream.V1.Model.MysqlColumn do diff --git a/clients/datastream/lib/google_api/datastream/v1/model/mysql_log_position.ex b/clients/datastream/lib/google_api/datastream/v1/model/mysql_log_position.ex new file mode 100644 index 0000000000..10139eeedd --- /dev/null +++ b/clients/datastream/lib/google_api/datastream/v1/model/mysql_log_position.ex @@ -0,0 +1,49 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Datastream.V1.Model.MysqlLogPosition do + @moduledoc """ + MySQL log position + + ## Attributes + + * `logFile` (*type:* `String.t`, *default:* `nil`) - Required. The binary log file name. + * `logPosition` (*type:* `integer()`, *default:* `nil`) - Optional. The position within the binary log file. Default is head of file. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :logFile => String.t() | nil, + :logPosition => integer() | nil + } + + field(:logFile) + field(:logPosition) +end + +defimpl Poison.Decoder, for: GoogleApi.Datastream.V1.Model.MysqlLogPosition do + def decode(value, options) do + GoogleApi.Datastream.V1.Model.MysqlLogPosition.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Datastream.V1.Model.MysqlLogPosition do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/datastream/lib/google_api/datastream/v1/model/mysql_source_config.ex b/clients/datastream/lib/google_api/datastream/v1/model/mysql_source_config.ex index 1f7a614131..e27b5635d4 100644 --- a/clients/datastream/lib/google_api/datastream/v1/model/mysql_source_config.ex +++ b/clients/datastream/lib/google_api/datastream/v1/model/mysql_source_config.ex @@ -23,6 +23,7 @@ defmodule GoogleApi.Datastream.V1.Model.MysqlSourceConfig do * `excludeObjects` (*type:* `GoogleApi.Datastream.V1.Model.MysqlRdbms.t`, *default:* `nil`) - MySQL objects to exclude from the stream. * `includeObjects` (*type:* `GoogleApi.Datastream.V1.Model.MysqlRdbms.t`, *default:* `nil`) - MySQL objects to retrieve from the source. + * `maxConcurrentBackfillTasks` (*type:* `integer()`, *default:* `nil`) - Maximum number of concurrent backfill tasks. The number should be non negative. If not set (or set to 0), the system's default value will be used. * `maxConcurrentCdcTasks` (*type:* `integer()`, *default:* `nil`) - Maximum number of concurrent CDC tasks. The number should be non negative. If not set (or set to 0), the system's default value will be used. """ @@ -31,11 +32,13 @@ defmodule GoogleApi.Datastream.V1.Model.MysqlSourceConfig do @type t :: %__MODULE__{ :excludeObjects => GoogleApi.Datastream.V1.Model.MysqlRdbms.t() | nil, :includeObjects => GoogleApi.Datastream.V1.Model.MysqlRdbms.t() | nil, + :maxConcurrentBackfillTasks => integer() | nil, :maxConcurrentCdcTasks => integer() | nil } field(:excludeObjects, as: GoogleApi.Datastream.V1.Model.MysqlRdbms) field(:includeObjects, as: GoogleApi.Datastream.V1.Model.MysqlRdbms) + field(:maxConcurrentBackfillTasks) field(:maxConcurrentCdcTasks) end diff --git a/clients/datastream/lib/google_api/datastream/v1/model/next_available_start_position.ex b/clients/datastream/lib/google_api/datastream/v1/model/next_available_start_position.ex new file mode 100644 index 0000000000..638e79d665 --- /dev/null +++ b/clients/datastream/lib/google_api/datastream/v1/model/next_available_start_position.ex @@ -0,0 +1,41 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Datastream.V1.Model.NextAvailableStartPosition do + @moduledoc """ + CDC strategy to resume replication from the next available position in the source. + + ## Attributes + + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{} +end + +defimpl Poison.Decoder, for: GoogleApi.Datastream.V1.Model.NextAvailableStartPosition do + def decode(value, options) do + GoogleApi.Datastream.V1.Model.NextAvailableStartPosition.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Datastream.V1.Model.NextAvailableStartPosition do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/datastream/lib/google_api/datastream/v1/model/operation.ex b/clients/datastream/lib/google_api/datastream/v1/model/operation.ex index cda0323549..05183a22c5 100644 --- a/clients/datastream/lib/google_api/datastream/v1/model/operation.ex +++ b/clients/datastream/lib/google_api/datastream/v1/model/operation.ex @@ -25,7 +25,7 @@ defmodule GoogleApi.Datastream.V1.Model.Operation do * `error` (*type:* `GoogleApi.Datastream.V1.Model.Status.t`, *default:* `nil`) - The error result of the operation in case of failure or cancellation. * `metadata` (*type:* `map()`, *default:* `nil`) - Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any. * `name` (*type:* `String.t`, *default:* `nil`) - The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`. - * `response` (*type:* `map()`, *default:* `nil`) - The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. + * `response` (*type:* `map()`, *default:* `nil`) - The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. """ use GoogleApi.Gax.ModelBase diff --git a/clients/datastream/lib/google_api/datastream/v1/model/oracle_profile.ex b/clients/datastream/lib/google_api/datastream/v1/model/oracle_profile.ex index 1ce425a1cf..41954fe358 100644 --- a/clients/datastream/lib/google_api/datastream/v1/model/oracle_profile.ex +++ b/clients/datastream/lib/google_api/datastream/v1/model/oracle_profile.ex @@ -24,6 +24,7 @@ defmodule GoogleApi.Datastream.V1.Model.OracleProfile do * `connectionAttributes` (*type:* `map()`, *default:* `nil`) - Connection string attributes * `databaseService` (*type:* `String.t`, *default:* `nil`) - Required. Database for the Oracle connection. * `hostname` (*type:* `String.t`, *default:* `nil`) - Required. Hostname for the Oracle connection. + * `oracleSslConfig` (*type:* `GoogleApi.Datastream.V1.Model.OracleSslConfig.t`, *default:* `nil`) - Optional. SSL configuration for the Oracle connection. * `password` (*type:* `String.t`, *default:* `nil`) - Required. Password for the Oracle connection. * `port` (*type:* `integer()`, *default:* `nil`) - Port for the Oracle connection, default value is 1521. * `username` (*type:* `String.t`, *default:* `nil`) - Required. Username for the Oracle connection. @@ -35,6 +36,7 @@ defmodule GoogleApi.Datastream.V1.Model.OracleProfile do :connectionAttributes => map() | nil, :databaseService => String.t() | nil, :hostname => String.t() | nil, + :oracleSslConfig => GoogleApi.Datastream.V1.Model.OracleSslConfig.t() | nil, :password => String.t() | nil, :port => integer() | nil, :username => String.t() | nil @@ -43,6 +45,7 @@ defmodule GoogleApi.Datastream.V1.Model.OracleProfile do field(:connectionAttributes, type: :map) field(:databaseService) field(:hostname) + field(:oracleSslConfig, as: GoogleApi.Datastream.V1.Model.OracleSslConfig) field(:password) field(:port) field(:username) diff --git a/clients/datastream/lib/google_api/datastream/v1/model/oracle_scn_position.ex b/clients/datastream/lib/google_api/datastream/v1/model/oracle_scn_position.ex new file mode 100644 index 0000000000..e88e2a224c --- /dev/null +++ b/clients/datastream/lib/google_api/datastream/v1/model/oracle_scn_position.ex @@ -0,0 +1,46 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Datastream.V1.Model.OracleScnPosition do + @moduledoc """ + Oracle SCN position + + ## Attributes + + * `scn` (*type:* `String.t`, *default:* `nil`) - Required. SCN number from where Logs will be read + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :scn => String.t() | nil + } + + field(:scn) +end + +defimpl Poison.Decoder, for: GoogleApi.Datastream.V1.Model.OracleScnPosition do + def decode(value, options) do + GoogleApi.Datastream.V1.Model.OracleScnPosition.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Datastream.V1.Model.OracleScnPosition do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/datastream/lib/google_api/datastream/v1/model/oracle_source_config.ex b/clients/datastream/lib/google_api/datastream/v1/model/oracle_source_config.ex index 7de9d26968..41b020978e 100644 --- a/clients/datastream/lib/google_api/datastream/v1/model/oracle_source_config.ex +++ b/clients/datastream/lib/google_api/datastream/v1/model/oracle_source_config.ex @@ -24,8 +24,9 @@ defmodule GoogleApi.Datastream.V1.Model.OracleSourceConfig do * `dropLargeObjects` (*type:* `GoogleApi.Datastream.V1.Model.DropLargeObjects.t`, *default:* `nil`) - Drop large object values. * `excludeObjects` (*type:* `GoogleApi.Datastream.V1.Model.OracleRdbms.t`, *default:* `nil`) - Oracle objects to exclude from the stream. * `includeObjects` (*type:* `GoogleApi.Datastream.V1.Model.OracleRdbms.t`, *default:* `nil`) - Oracle objects to include in the stream. - * `maxConcurrentCdcTasks` (*type:* `integer()`, *default:* `nil`) - Maximum number of concurrent CDC tasks. The number should be non negative. If not set (or set to 0), the system's default value will be used. - * `streamLargeObjects` (*type:* `GoogleApi.Datastream.V1.Model.StreamLargeObjects.t`, *default:* `nil`) - Stream large object values. NOTE: This feature is currently experimental. + * `maxConcurrentBackfillTasks` (*type:* `integer()`, *default:* `nil`) - Maximum number of concurrent backfill tasks. The number should be non-negative. If not set (or set to 0), the system's default value is used. + * `maxConcurrentCdcTasks` (*type:* `integer()`, *default:* `nil`) - Maximum number of concurrent CDC tasks. The number should be non-negative. If not set (or set to 0), the system's default value is used. + * `streamLargeObjects` (*type:* `GoogleApi.Datastream.V1.Model.StreamLargeObjects.t`, *default:* `nil`) - Stream large object values. """ use GoogleApi.Gax.ModelBase @@ -34,6 +35,7 @@ defmodule GoogleApi.Datastream.V1.Model.OracleSourceConfig do :dropLargeObjects => GoogleApi.Datastream.V1.Model.DropLargeObjects.t() | nil, :excludeObjects => GoogleApi.Datastream.V1.Model.OracleRdbms.t() | nil, :includeObjects => GoogleApi.Datastream.V1.Model.OracleRdbms.t() | nil, + :maxConcurrentBackfillTasks => integer() | nil, :maxConcurrentCdcTasks => integer() | nil, :streamLargeObjects => GoogleApi.Datastream.V1.Model.StreamLargeObjects.t() | nil } @@ -41,6 +43,7 @@ defmodule GoogleApi.Datastream.V1.Model.OracleSourceConfig do field(:dropLargeObjects, as: GoogleApi.Datastream.V1.Model.DropLargeObjects) field(:excludeObjects, as: GoogleApi.Datastream.V1.Model.OracleRdbms) field(:includeObjects, as: GoogleApi.Datastream.V1.Model.OracleRdbms) + field(:maxConcurrentBackfillTasks) field(:maxConcurrentCdcTasks) field(:streamLargeObjects, as: GoogleApi.Datastream.V1.Model.StreamLargeObjects) end diff --git a/clients/datastream/lib/google_api/datastream/v1/model/oracle_ssl_config.ex b/clients/datastream/lib/google_api/datastream/v1/model/oracle_ssl_config.ex new file mode 100644 index 0000000000..90c51ca81a --- /dev/null +++ b/clients/datastream/lib/google_api/datastream/v1/model/oracle_ssl_config.ex @@ -0,0 +1,49 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Datastream.V1.Model.OracleSslConfig do + @moduledoc """ + Oracle SSL configuration information. + + ## Attributes + + * `caCertificate` (*type:* `String.t`, *default:* `nil`) - Input only. PEM-encoded certificate of the CA that signed the source database server's certificate. + * `caCertificateSet` (*type:* `boolean()`, *default:* `nil`) - Output only. Indicates whether the ca_certificate field has been set for this Connection-Profile. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :caCertificate => String.t() | nil, + :caCertificateSet => boolean() | nil + } + + field(:caCertificate) + field(:caCertificateSet) +end + +defimpl Poison.Decoder, for: GoogleApi.Datastream.V1.Model.OracleSslConfig do + def decode(value, options) do + GoogleApi.Datastream.V1.Model.OracleSslConfig.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Datastream.V1.Model.OracleSslConfig do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/datastream/lib/google_api/datastream/v1/model/postgresql_source_config.ex b/clients/datastream/lib/google_api/datastream/v1/model/postgresql_source_config.ex index 7ba2be8fc7..0437985059 100644 --- a/clients/datastream/lib/google_api/datastream/v1/model/postgresql_source_config.ex +++ b/clients/datastream/lib/google_api/datastream/v1/model/postgresql_source_config.ex @@ -23,6 +23,7 @@ defmodule GoogleApi.Datastream.V1.Model.PostgresqlSourceConfig do * `excludeObjects` (*type:* `GoogleApi.Datastream.V1.Model.PostgresqlRdbms.t`, *default:* `nil`) - PostgreSQL objects to exclude from the stream. * `includeObjects` (*type:* `GoogleApi.Datastream.V1.Model.PostgresqlRdbms.t`, *default:* `nil`) - PostgreSQL objects to include in the stream. + * `maxConcurrentBackfillTasks` (*type:* `integer()`, *default:* `nil`) - Maximum number of concurrent backfill tasks. The number should be non negative. If not set (or set to 0), the system's default value will be used. * `publication` (*type:* `String.t`, *default:* `nil`) - Required. The name of the publication that includes the set of all tables that are defined in the stream's include_objects. * `replicationSlot` (*type:* `String.t`, *default:* `nil`) - Required. Immutable. The name of the logical replication slot that's configured with the pgoutput plugin. """ @@ -32,12 +33,14 @@ defmodule GoogleApi.Datastream.V1.Model.PostgresqlSourceConfig do @type t :: %__MODULE__{ :excludeObjects => GoogleApi.Datastream.V1.Model.PostgresqlRdbms.t() | nil, :includeObjects => GoogleApi.Datastream.V1.Model.PostgresqlRdbms.t() | nil, + :maxConcurrentBackfillTasks => integer() | nil, :publication => String.t() | nil, :replicationSlot => String.t() | nil } field(:excludeObjects, as: GoogleApi.Datastream.V1.Model.PostgresqlRdbms) field(:includeObjects, as: GoogleApi.Datastream.V1.Model.PostgresqlRdbms) + field(:maxConcurrentBackfillTasks) field(:publication) field(:replicationSlot) end diff --git a/clients/datastream/lib/google_api/datastream/v1/model/run_stream_request.ex b/clients/datastream/lib/google_api/datastream/v1/model/run_stream_request.ex new file mode 100644 index 0000000000..4edde1305f --- /dev/null +++ b/clients/datastream/lib/google_api/datastream/v1/model/run_stream_request.ex @@ -0,0 +1,46 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Datastream.V1.Model.RunStreamRequest do + @moduledoc """ + Request message for running a stream. + + ## Attributes + + * `cdcStrategy` (*type:* `GoogleApi.Datastream.V1.Model.CdcStrategy.t`, *default:* `nil`) - Optional. The CDC strategy of the stream. If not set, the system's default value will be used. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :cdcStrategy => GoogleApi.Datastream.V1.Model.CdcStrategy.t() | nil + } + + field(:cdcStrategy, as: GoogleApi.Datastream.V1.Model.CdcStrategy) +end + +defimpl Poison.Decoder, for: GoogleApi.Datastream.V1.Model.RunStreamRequest do + def decode(value, options) do + GoogleApi.Datastream.V1.Model.RunStreamRequest.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Datastream.V1.Model.RunStreamRequest do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/datastream/lib/google_api/datastream/v1/model/single_target_dataset.ex b/clients/datastream/lib/google_api/datastream/v1/model/single_target_dataset.ex index 4d0abb5d58..058d117001 100644 --- a/clients/datastream/lib/google_api/datastream/v1/model/single_target_dataset.ex +++ b/clients/datastream/lib/google_api/datastream/v1/model/single_target_dataset.ex @@ -21,7 +21,7 @@ defmodule GoogleApi.Datastream.V1.Model.SingleTargetDataset do ## Attributes - * `datasetId` (*type:* `String.t`, *default:* `nil`) - + * `datasetId` (*type:* `String.t`, *default:* `nil`) - The dataset ID of the target dataset. DatasetIds allowed characters: https://cloud.google.com/bigquery/docs/reference/rest/v2/datasets#datasetreference. """ use GoogleApi.Gax.ModelBase diff --git a/clients/datastream/lib/google_api/datastream/v1/model/source_config.ex b/clients/datastream/lib/google_api/datastream/v1/model/source_config.ex index 2321e20cb3..5a9b4dafeb 100644 --- a/clients/datastream/lib/google_api/datastream/v1/model/source_config.ex +++ b/clients/datastream/lib/google_api/datastream/v1/model/source_config.ex @@ -25,6 +25,7 @@ defmodule GoogleApi.Datastream.V1.Model.SourceConfig do * `oracleSourceConfig` (*type:* `GoogleApi.Datastream.V1.Model.OracleSourceConfig.t`, *default:* `nil`) - Oracle data source configuration. * `postgresqlSourceConfig` (*type:* `GoogleApi.Datastream.V1.Model.PostgresqlSourceConfig.t`, *default:* `nil`) - PostgreSQL data source configuration. * `sourceConnectionProfile` (*type:* `String.t`, *default:* `nil`) - Required. Source connection profile resoource. Format: `projects/{project}/locations/{location}/connectionProfiles/{name}` + * `sqlServerSourceConfig` (*type:* `GoogleApi.Datastream.V1.Model.SqlServerSourceConfig.t`, *default:* `nil`) - SQLServer data source configuration. """ use GoogleApi.Gax.ModelBase @@ -34,13 +35,15 @@ defmodule GoogleApi.Datastream.V1.Model.SourceConfig do :oracleSourceConfig => GoogleApi.Datastream.V1.Model.OracleSourceConfig.t() | nil, :postgresqlSourceConfig => GoogleApi.Datastream.V1.Model.PostgresqlSourceConfig.t() | nil, - :sourceConnectionProfile => String.t() | nil + :sourceConnectionProfile => String.t() | nil, + :sqlServerSourceConfig => GoogleApi.Datastream.V1.Model.SqlServerSourceConfig.t() | nil } field(:mysqlSourceConfig, as: GoogleApi.Datastream.V1.Model.MysqlSourceConfig) field(:oracleSourceConfig, as: GoogleApi.Datastream.V1.Model.OracleSourceConfig) field(:postgresqlSourceConfig, as: GoogleApi.Datastream.V1.Model.PostgresqlSourceConfig) field(:sourceConnectionProfile) + field(:sqlServerSourceConfig, as: GoogleApi.Datastream.V1.Model.SqlServerSourceConfig) end defimpl Poison.Decoder, for: GoogleApi.Datastream.V1.Model.SourceConfig do diff --git a/clients/datastream/lib/google_api/datastream/v1/model/source_hierarchy_datasets.ex b/clients/datastream/lib/google_api/datastream/v1/model/source_hierarchy_datasets.ex index 321e6147f8..54474ac05f 100644 --- a/clients/datastream/lib/google_api/datastream/v1/model/source_hierarchy_datasets.ex +++ b/clients/datastream/lib/google_api/datastream/v1/model/source_hierarchy_datasets.ex @@ -21,7 +21,7 @@ defmodule GoogleApi.Datastream.V1.Model.SourceHierarchyDatasets do ## Attributes - * `datasetTemplate` (*type:* `GoogleApi.Datastream.V1.Model.DatasetTemplate.t`, *default:* `nil`) - + * `datasetTemplate` (*type:* `GoogleApi.Datastream.V1.Model.DatasetTemplate.t`, *default:* `nil`) - The dataset template to use for dynamic dataset creation. """ use GoogleApi.Gax.ModelBase diff --git a/clients/datastream/lib/google_api/datastream/v1/model/source_object_identifier.ex b/clients/datastream/lib/google_api/datastream/v1/model/source_object_identifier.ex index 701d2bd0b9..d13b937317 100644 --- a/clients/datastream/lib/google_api/datastream/v1/model/source_object_identifier.ex +++ b/clients/datastream/lib/google_api/datastream/v1/model/source_object_identifier.ex @@ -24,6 +24,7 @@ defmodule GoogleApi.Datastream.V1.Model.SourceObjectIdentifier do * `mysqlIdentifier` (*type:* `GoogleApi.Datastream.V1.Model.MysqlObjectIdentifier.t`, *default:* `nil`) - Mysql data source object identifier. * `oracleIdentifier` (*type:* `GoogleApi.Datastream.V1.Model.OracleObjectIdentifier.t`, *default:* `nil`) - Oracle data source object identifier. * `postgresqlIdentifier` (*type:* `GoogleApi.Datastream.V1.Model.PostgresqlObjectIdentifier.t`, *default:* `nil`) - PostgreSQL data source object identifier. + * `sqlServerIdentifier` (*type:* `GoogleApi.Datastream.V1.Model.SqlServerObjectIdentifier.t`, *default:* `nil`) - SQLServer data source object identifier. """ use GoogleApi.Gax.ModelBase @@ -32,12 +33,15 @@ defmodule GoogleApi.Datastream.V1.Model.SourceObjectIdentifier do :mysqlIdentifier => GoogleApi.Datastream.V1.Model.MysqlObjectIdentifier.t() | nil, :oracleIdentifier => GoogleApi.Datastream.V1.Model.OracleObjectIdentifier.t() | nil, :postgresqlIdentifier => - GoogleApi.Datastream.V1.Model.PostgresqlObjectIdentifier.t() | nil + GoogleApi.Datastream.V1.Model.PostgresqlObjectIdentifier.t() | nil, + :sqlServerIdentifier => + GoogleApi.Datastream.V1.Model.SqlServerObjectIdentifier.t() | nil } field(:mysqlIdentifier, as: GoogleApi.Datastream.V1.Model.MysqlObjectIdentifier) field(:oracleIdentifier, as: GoogleApi.Datastream.V1.Model.OracleObjectIdentifier) field(:postgresqlIdentifier, as: GoogleApi.Datastream.V1.Model.PostgresqlObjectIdentifier) + field(:sqlServerIdentifier, as: GoogleApi.Datastream.V1.Model.SqlServerObjectIdentifier) end defimpl Poison.Decoder, for: GoogleApi.Datastream.V1.Model.SourceObjectIdentifier do diff --git a/clients/datastream/lib/google_api/datastream/v1/model/specific_start_position.ex b/clients/datastream/lib/google_api/datastream/v1/model/specific_start_position.ex new file mode 100644 index 0000000000..f3e3a7d9da --- /dev/null +++ b/clients/datastream/lib/google_api/datastream/v1/model/specific_start_position.ex @@ -0,0 +1,49 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Datastream.V1.Model.SpecificStartPosition do + @moduledoc """ + CDC strategy to start replicating from a specific position in the source. + + ## Attributes + + * `mysqlLogPosition` (*type:* `GoogleApi.Datastream.V1.Model.MysqlLogPosition.t`, *default:* `nil`) - MySQL specific log position to start replicating from. + * `oracleScnPosition` (*type:* `GoogleApi.Datastream.V1.Model.OracleScnPosition.t`, *default:* `nil`) - Oracle SCN to start replicating from. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :mysqlLogPosition => GoogleApi.Datastream.V1.Model.MysqlLogPosition.t() | nil, + :oracleScnPosition => GoogleApi.Datastream.V1.Model.OracleScnPosition.t() | nil + } + + field(:mysqlLogPosition, as: GoogleApi.Datastream.V1.Model.MysqlLogPosition) + field(:oracleScnPosition, as: GoogleApi.Datastream.V1.Model.OracleScnPosition) +end + +defimpl Poison.Decoder, for: GoogleApi.Datastream.V1.Model.SpecificStartPosition do + def decode(value, options) do + GoogleApi.Datastream.V1.Model.SpecificStartPosition.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Datastream.V1.Model.SpecificStartPosition do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/datastream/lib/google_api/datastream/v1/model/sql_server_column.ex b/clients/datastream/lib/google_api/datastream/v1/model/sql_server_column.ex new file mode 100644 index 0000000000..5f62e65f94 --- /dev/null +++ b/clients/datastream/lib/google_api/datastream/v1/model/sql_server_column.ex @@ -0,0 +1,67 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Datastream.V1.Model.SqlServerColumn do + @moduledoc """ + SQLServer Column. + + ## Attributes + + * `column` (*type:* `String.t`, *default:* `nil`) - Column name. + * `dataType` (*type:* `String.t`, *default:* `nil`) - The SQLServer data type. + * `length` (*type:* `integer()`, *default:* `nil`) - Column length. + * `nullable` (*type:* `boolean()`, *default:* `nil`) - Whether or not the column can accept a null value. + * `ordinalPosition` (*type:* `integer()`, *default:* `nil`) - The ordinal position of the column in the table. + * `precision` (*type:* `integer()`, *default:* `nil`) - Column precision. + * `primaryKey` (*type:* `boolean()`, *default:* `nil`) - Whether or not the column represents a primary key. + * `scale` (*type:* `integer()`, *default:* `nil`) - Column scale. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :column => String.t() | nil, + :dataType => String.t() | nil, + :length => integer() | nil, + :nullable => boolean() | nil, + :ordinalPosition => integer() | nil, + :precision => integer() | nil, + :primaryKey => boolean() | nil, + :scale => integer() | nil + } + + field(:column) + field(:dataType) + field(:length) + field(:nullable) + field(:ordinalPosition) + field(:precision) + field(:primaryKey) + field(:scale) +end + +defimpl Poison.Decoder, for: GoogleApi.Datastream.V1.Model.SqlServerColumn do + def decode(value, options) do + GoogleApi.Datastream.V1.Model.SqlServerColumn.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Datastream.V1.Model.SqlServerColumn do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/datastream/lib/google_api/datastream/v1/model/sql_server_object_identifier.ex b/clients/datastream/lib/google_api/datastream/v1/model/sql_server_object_identifier.ex new file mode 100644 index 0000000000..793626604d --- /dev/null +++ b/clients/datastream/lib/google_api/datastream/v1/model/sql_server_object_identifier.ex @@ -0,0 +1,49 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Datastream.V1.Model.SqlServerObjectIdentifier do + @moduledoc """ + SQLServer data source object identifier. + + ## Attributes + + * `schema` (*type:* `String.t`, *default:* `nil`) - Required. The schema name. + * `table` (*type:* `String.t`, *default:* `nil`) - Required. The table name. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :schema => String.t() | nil, + :table => String.t() | nil + } + + field(:schema) + field(:table) +end + +defimpl Poison.Decoder, for: GoogleApi.Datastream.V1.Model.SqlServerObjectIdentifier do + def decode(value, options) do + GoogleApi.Datastream.V1.Model.SqlServerObjectIdentifier.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Datastream.V1.Model.SqlServerObjectIdentifier do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/datastream/lib/google_api/datastream/v1/model/sql_server_profile.ex b/clients/datastream/lib/google_api/datastream/v1/model/sql_server_profile.ex new file mode 100644 index 0000000000..9fb3a4e93e --- /dev/null +++ b/clients/datastream/lib/google_api/datastream/v1/model/sql_server_profile.ex @@ -0,0 +1,58 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Datastream.V1.Model.SqlServerProfile do + @moduledoc """ + SQLServer database profile + + ## Attributes + + * `database` (*type:* `String.t`, *default:* `nil`) - Required. Database for the SQLServer connection. + * `hostname` (*type:* `String.t`, *default:* `nil`) - Required. Hostname for the SQLServer connection. + * `password` (*type:* `String.t`, *default:* `nil`) - Required. Password for the SQLServer connection. + * `port` (*type:* `integer()`, *default:* `nil`) - Port for the SQLServer connection, default value is 1433. + * `username` (*type:* `String.t`, *default:* `nil`) - Required. Username for the SQLServer connection. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :database => String.t() | nil, + :hostname => String.t() | nil, + :password => String.t() | nil, + :port => integer() | nil, + :username => String.t() | nil + } + + field(:database) + field(:hostname) + field(:password) + field(:port) + field(:username) +end + +defimpl Poison.Decoder, for: GoogleApi.Datastream.V1.Model.SqlServerProfile do + def decode(value, options) do + GoogleApi.Datastream.V1.Model.SqlServerProfile.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Datastream.V1.Model.SqlServerProfile do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/datastream/lib/google_api/datastream/v1/model/sql_server_rdbms.ex b/clients/datastream/lib/google_api/datastream/v1/model/sql_server_rdbms.ex new file mode 100644 index 0000000000..c5692c7715 --- /dev/null +++ b/clients/datastream/lib/google_api/datastream/v1/model/sql_server_rdbms.ex @@ -0,0 +1,46 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Datastream.V1.Model.SqlServerRdbms do + @moduledoc """ + SQLServer database structure. + + ## Attributes + + * `schemas` (*type:* `list(GoogleApi.Datastream.V1.Model.SqlServerSchema.t)`, *default:* `nil`) - SQLServer schemas in the database server. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :schemas => list(GoogleApi.Datastream.V1.Model.SqlServerSchema.t()) | nil + } + + field(:schemas, as: GoogleApi.Datastream.V1.Model.SqlServerSchema, type: :list) +end + +defimpl Poison.Decoder, for: GoogleApi.Datastream.V1.Model.SqlServerRdbms do + def decode(value, options) do + GoogleApi.Datastream.V1.Model.SqlServerRdbms.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Datastream.V1.Model.SqlServerRdbms do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/datastream/lib/google_api/datastream/v1/model/sql_server_schema.ex b/clients/datastream/lib/google_api/datastream/v1/model/sql_server_schema.ex new file mode 100644 index 0000000000..e5ad6a5d33 --- /dev/null +++ b/clients/datastream/lib/google_api/datastream/v1/model/sql_server_schema.ex @@ -0,0 +1,49 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Datastream.V1.Model.SqlServerSchema do + @moduledoc """ + SQLServer schema. + + ## Attributes + + * `schema` (*type:* `String.t`, *default:* `nil`) - Schema name. + * `tables` (*type:* `list(GoogleApi.Datastream.V1.Model.SqlServerTable.t)`, *default:* `nil`) - Tables in the schema. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :schema => String.t() | nil, + :tables => list(GoogleApi.Datastream.V1.Model.SqlServerTable.t()) | nil + } + + field(:schema) + field(:tables, as: GoogleApi.Datastream.V1.Model.SqlServerTable, type: :list) +end + +defimpl Poison.Decoder, for: GoogleApi.Datastream.V1.Model.SqlServerSchema do + def decode(value, options) do + GoogleApi.Datastream.V1.Model.SqlServerSchema.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Datastream.V1.Model.SqlServerSchema do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/datastream/lib/google_api/datastream/v1/model/sql_server_source_config.ex b/clients/datastream/lib/google_api/datastream/v1/model/sql_server_source_config.ex new file mode 100644 index 0000000000..64947d8f7f --- /dev/null +++ b/clients/datastream/lib/google_api/datastream/v1/model/sql_server_source_config.ex @@ -0,0 +1,55 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Datastream.V1.Model.SqlServerSourceConfig do + @moduledoc """ + SQLServer data source configuration + + ## Attributes + + * `excludeObjects` (*type:* `GoogleApi.Datastream.V1.Model.SqlServerRdbms.t`, *default:* `nil`) - SQLServer objects to exclude from the stream. + * `includeObjects` (*type:* `GoogleApi.Datastream.V1.Model.SqlServerRdbms.t`, *default:* `nil`) - SQLServer objects to include in the stream. + * `maxConcurrentBackfillTasks` (*type:* `integer()`, *default:* `nil`) - Max concurrent backfill tasks. + * `maxConcurrentCdcTasks` (*type:* `integer()`, *default:* `nil`) - Max concurrent CDC tasks. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :excludeObjects => GoogleApi.Datastream.V1.Model.SqlServerRdbms.t() | nil, + :includeObjects => GoogleApi.Datastream.V1.Model.SqlServerRdbms.t() | nil, + :maxConcurrentBackfillTasks => integer() | nil, + :maxConcurrentCdcTasks => integer() | nil + } + + field(:excludeObjects, as: GoogleApi.Datastream.V1.Model.SqlServerRdbms) + field(:includeObjects, as: GoogleApi.Datastream.V1.Model.SqlServerRdbms) + field(:maxConcurrentBackfillTasks) + field(:maxConcurrentCdcTasks) +end + +defimpl Poison.Decoder, for: GoogleApi.Datastream.V1.Model.SqlServerSourceConfig do + def decode(value, options) do + GoogleApi.Datastream.V1.Model.SqlServerSourceConfig.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Datastream.V1.Model.SqlServerSourceConfig do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/datastream/lib/google_api/datastream/v1/model/sql_server_table.ex b/clients/datastream/lib/google_api/datastream/v1/model/sql_server_table.ex new file mode 100644 index 0000000000..9d89f12132 --- /dev/null +++ b/clients/datastream/lib/google_api/datastream/v1/model/sql_server_table.ex @@ -0,0 +1,49 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Datastream.V1.Model.SqlServerTable do + @moduledoc """ + SQLServer table. + + ## Attributes + + * `columns` (*type:* `list(GoogleApi.Datastream.V1.Model.SqlServerColumn.t)`, *default:* `nil`) - SQLServer columns in the schema. When unspecified as part of include/exclude objects, includes/excludes everything. + * `table` (*type:* `String.t`, *default:* `nil`) - Table name. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :columns => list(GoogleApi.Datastream.V1.Model.SqlServerColumn.t()) | nil, + :table => String.t() | nil + } + + field(:columns, as: GoogleApi.Datastream.V1.Model.SqlServerColumn, type: :list) + field(:table) +end + +defimpl Poison.Decoder, for: GoogleApi.Datastream.V1.Model.SqlServerTable do + def decode(value, options) do + GoogleApi.Datastream.V1.Model.SqlServerTable.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Datastream.V1.Model.SqlServerTable do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/datastream/lib/google_api/datastream/v1/model/static_service_ip_connectivity.ex b/clients/datastream/lib/google_api/datastream/v1/model/static_service_ip_connectivity.ex index 754508e2b1..09449c7839 100644 --- a/clients/datastream/lib/google_api/datastream/v1/model/static_service_ip_connectivity.ex +++ b/clients/datastream/lib/google_api/datastream/v1/model/static_service_ip_connectivity.ex @@ -17,7 +17,7 @@ defmodule GoogleApi.Datastream.V1.Model.StaticServiceIpConnectivity do @moduledoc """ - Static IP address connectivity. + Static IP address connectivity. Used when the source database is configured to allow incoming connections from the Datastream public IP addresses for the region specified in the connection profile. ## Attributes diff --git a/clients/datastream/lib/google_api/datastream/v1/model/stream.ex b/clients/datastream/lib/google_api/datastream/v1/model/stream.ex index e3f0fd80e3..d39a95fd7a 100644 --- a/clients/datastream/lib/google_api/datastream/v1/model/stream.ex +++ b/clients/datastream/lib/google_api/datastream/v1/model/stream.ex @@ -29,6 +29,7 @@ defmodule GoogleApi.Datastream.V1.Model.Stream do * `displayName` (*type:* `String.t`, *default:* `nil`) - Required. Display name. * `errors` (*type:* `list(GoogleApi.Datastream.V1.Model.Error.t)`, *default:* `nil`) - Output only. Errors on the Stream. * `labels` (*type:* `map()`, *default:* `nil`) - Labels. + * `lastRecoveryTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. If the stream was recovered, the time of the last recovery. Note: This field is currently experimental. * `name` (*type:* `String.t`, *default:* `nil`) - Output only. The stream's name. * `sourceConfig` (*type:* `GoogleApi.Datastream.V1.Model.SourceConfig.t`, *default:* `nil`) - Required. Source connection profile configuration. * `state` (*type:* `String.t`, *default:* `nil`) - The state of the stream. @@ -46,6 +47,7 @@ defmodule GoogleApi.Datastream.V1.Model.Stream do :displayName => String.t() | nil, :errors => list(GoogleApi.Datastream.V1.Model.Error.t()) | nil, :labels => map() | nil, + :lastRecoveryTime => DateTime.t() | nil, :name => String.t() | nil, :sourceConfig => GoogleApi.Datastream.V1.Model.SourceConfig.t() | nil, :state => String.t() | nil, @@ -60,6 +62,7 @@ defmodule GoogleApi.Datastream.V1.Model.Stream do field(:displayName) field(:errors, as: GoogleApi.Datastream.V1.Model.Error, type: :list) field(:labels, type: :map) + field(:lastRecoveryTime, as: DateTime) field(:name) field(:sourceConfig, as: GoogleApi.Datastream.V1.Model.SourceConfig) field(:state) diff --git a/clients/datastream/lib/google_api/datastream/v1/model/validation.ex b/clients/datastream/lib/google_api/datastream/v1/model/validation.ex index 8d44649969..c957574497 100644 --- a/clients/datastream/lib/google_api/datastream/v1/model/validation.ex +++ b/clients/datastream/lib/google_api/datastream/v1/model/validation.ex @@ -24,7 +24,7 @@ defmodule GoogleApi.Datastream.V1.Model.Validation do * `code` (*type:* `String.t`, *default:* `nil`) - A custom code identifying this validation. * `description` (*type:* `String.t`, *default:* `nil`) - A short description of the validation. * `message` (*type:* `list(GoogleApi.Datastream.V1.Model.ValidationMessage.t)`, *default:* `nil`) - Messages reflecting the validation results. - * `state` (*type:* `String.t`, *default:* `nil`) - Validation execution status. + * `state` (*type:* `String.t`, *default:* `nil`) - Output only. Validation execution status. """ use GoogleApi.Gax.ModelBase