# 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 class is auto generated by the elixir code generator program. # Do not edit the class manually. defmodule GoogleApi.Discovery.V1.Model.RestMethod do @moduledoc """ ## Attributes * `description` (*type:* `String.t`, *default:* `nil`) - Description of this method. * `etagRequired` (*type:* `boolean()`, *default:* `nil`) - Whether this method requires an ETag to be specified. The ETag is sent as an HTTP If-Match or If-None-Match header. * `httpMethod` (*type:* `String.t`, *default:* `nil`) - HTTP method used by this method. * `id` (*type:* `String.t`, *default:* `nil`) - A unique ID for this method. This property can be used to match methods between different versions of Discovery. * `mediaUpload` (*type:* `GoogleApi.Discovery.V1.Model.RestMethodMediaUpload.t`, *default:* `nil`) - Media upload parameters. * `parameterOrder` (*type:* `list(String.t)`, *default:* `nil`) - Ordered list of required parameters, serves as a hint to clients on how to structure their method signatures. The array is ordered such that the "most-significant" parameter appears first. * `parameters` (*type:* `%{optional(String.t) => GoogleApi.Discovery.V1.Model.JsonSchema.t}`, *default:* `nil`) - Details for all parameters in this method. * `path` (*type:* `String.t`, *default:* `nil`) - The URI path of this REST method. Should be used in conjunction with the basePath property at the api-level. * `request` (*type:* `GoogleApi.Discovery.V1.Model.RestMethodRequest.t`, *default:* `nil`) - The schema for the request. * `response` (*type:* `GoogleApi.Discovery.V1.Model.RestMethodResponse.t`, *default:* `nil`) - The schema for the response. * `scopes` (*type:* `list(String.t)`, *default:* `nil`) - OAuth 2.0 scopes applicable to this method. * `supportsMediaDownload` (*type:* `boolean()`, *default:* `nil`) - Whether this method supports media downloads. * `supportsMediaUpload` (*type:* `boolean()`, *default:* `nil`) - Whether this method supports media uploads. * `supportsSubscription` (*type:* `boolean()`, *default:* `nil`) - Whether this method supports subscriptions. * `useMediaDownloadService` (*type:* `boolean()`, *default:* `nil`) - Indicates that downloads from this method should use the download service URL (i.e. "/download"). Only applies if the method supports media download. """ use GoogleApi.Gax.ModelBase @type t :: %__MODULE__{ :description => String.t(), :etagRequired => boolean(), :httpMethod => String.t(), :id => String.t(), :mediaUpload => GoogleApi.Discovery.V1.Model.RestMethodMediaUpload.t(), :parameterOrder => list(String.t()), :parameters => %{optional(String.t()) => GoogleApi.Discovery.V1.Model.JsonSchema.t()}, :path => String.t(), :request => GoogleApi.Discovery.V1.Model.RestMethodRequest.t(), :response => GoogleApi.Discovery.V1.Model.RestMethodResponse.t(), :scopes => list(String.t()), :supportsMediaDownload => boolean(), :supportsMediaUpload => boolean(), :supportsSubscription => boolean(), :useMediaDownloadService => boolean() } field(:description) field(:etagRequired) field(:httpMethod) field(:id) field(:mediaUpload, as: GoogleApi.Discovery.V1.Model.RestMethodMediaUpload) field(:parameterOrder, type: :list) field(:parameters, as: GoogleApi.Discovery.V1.Model.JsonSchema, type: :map) field(:path) field(:request, as: GoogleApi.Discovery.V1.Model.RestMethodRequest) field(:response, as: GoogleApi.Discovery.V1.Model.RestMethodResponse) field(:scopes, type: :list) field(:supportsMediaDownload) field(:supportsMediaUpload) field(:supportsSubscription) field(:useMediaDownloadService) end defimpl Poison.Decoder, for: GoogleApi.Discovery.V1.Model.RestMethod do def decode(value, options) do GoogleApi.Discovery.V1.Model.RestMethod.decode(value, options) end end defimpl Poison.Encoder, for: GoogleApi.Discovery.V1.Model.RestMethod do def encode(value, options) do GoogleApi.Gax.ModelBase.encode(value, options) end end