# Copyright 2017 Google Inc. # # 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 swagger code generator program. # https://github.com/swagger-api/swagger-codegen.git # Do not edit the class manually. defmodule GoogleApi.Dataflow.V1b3.Model.ParallelInstruction do @moduledoc """ Describes a particular operation comprising a MapTask. ## Attributes - flatten (FlattenInstruction): Additional information for Flatten instructions. Defaults to: `null`. - name (String): User-provided name of this operation. Defaults to: `null`. - originalName (String): System-defined name for the operation in the original workflow graph. Defaults to: `null`. - outputs (List[InstructionOutput]): Describes the outputs of the instruction. Defaults to: `null`. - parDo (ParDoInstruction): Additional information for ParDo instructions. Defaults to: `null`. - partialGroupByKey (PartialGroupByKeyInstruction): Additional information for PartialGroupByKey instructions. Defaults to: `null`. - read (ReadInstruction): Additional information for Read instructions. Defaults to: `null`. - systemName (String): System-defined name of this operation. Unique across the workflow. Defaults to: `null`. - write (WriteInstruction): Additional information for Write instructions. Defaults to: `null`. """ defstruct [ :"flatten", :"name", :"originalName", :"outputs", :"parDo", :"partialGroupByKey", :"read", :"systemName", :"write" ] end defimpl Poison.Decoder, for: GoogleApi.Dataflow.V1b3.Model.ParallelInstruction do import GoogleApi.Dataflow.V1b3.Deserializer def decode(value, options) do value |> deserialize(:"flatten", :struct, GoogleApi.Dataflow.V1b3.Model.FlattenInstruction, options) |> deserialize(:"outputs", :list, GoogleApi.Dataflow.V1b3.Model.InstructionOutput, options) |> deserialize(:"parDo", :struct, GoogleApi.Dataflow.V1b3.Model.ParDoInstruction, options) |> deserialize(:"partialGroupByKey", :struct, GoogleApi.Dataflow.V1b3.Model.PartialGroupByKeyInstruction, options) |> deserialize(:"read", :struct, GoogleApi.Dataflow.V1b3.Model.ReadInstruction, options) |> deserialize(:"write", :struct, GoogleApi.Dataflow.V1b3.Model.WriteInstruction, options) end end defimpl Poison.Encoder, for: GoogleApi.Dataflow.V1b3.Model.ParallelInstruction do def encode(value, options) do GoogleApi.Dataflow.V1b3.Deserializer.serialize_non_nil(value, options) end end