# 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.NetworkConnectivity.V1.Model.RoutingVPC do
  @moduledoc """
  RoutingVPC contains information about the VPC networks associated with the spokes of a Network Connectivity Center hub.

  ## Attributes

  *   `requiredForNewSiteToSiteDataTransferSpokes` (*type:* `boolean()`, *default:* `nil`) - Output only. If true, indicates that this VPC network is currently associated with spokes that use the data transfer feature (spokes where the site_to_site_data_transfer field is set to true). If you create new spokes that use data transfer, they must be associated with this VPC network. At most, one VPC network will have this field set to true.
  *   `uri` (*type:* `String.t`, *default:* `nil`) - The URI of the VPC network.
  """

  use GoogleApi.Gax.ModelBase

  @type t :: %__MODULE__{
          :requiredForNewSiteToSiteDataTransferSpokes => boolean() | nil,
          :uri => String.t() | nil
        }

  field(:requiredForNewSiteToSiteDataTransferSpokes)
  field(:uri)
end

defimpl Poison.Decoder, for: GoogleApi.NetworkConnectivity.V1.Model.RoutingVPC do
  def decode(value, options) do
    GoogleApi.NetworkConnectivity.V1.Model.RoutingVPC.decode(value, options)
  end
end

defimpl Poison.Encoder, for: GoogleApi.NetworkConnectivity.V1.Model.RoutingVPC do
  def encode(value, options) do
    GoogleApi.Gax.ModelBase.encode(value, options)
  end
end
