module PrestoLegacy::Client::Models::TaskInfo

Public Class Methods

decode(hash) click to toggle source
# File lib/presto_legacy/client/models.rb, line 1325
def decode(hash)
  unless hash.is_a?(Hash)
    raise TypeError, "Can't convert #{hash.class} to Hash"
  end
  obj = allocate
  obj.send(:initialize_struct,
    hash["taskId"] && TaskId.new(hash["taskId"]),
    hash["taskInstanceId"],
    hash["version"],
    hash["state"] && hash["state"].downcase.to_sym,
    hash["self"],
    hash["lastHeartbeat"],
    hash["outputBuffers"] && SharedBufferInfo.decode(hash["outputBuffers"]),
    hash["noMoreSplits"],
    hash["stats"] && TaskStats.decode(hash["stats"]),
    hash["failures"] && hash["failures"].map {|h| ExecutionFailureInfo.decode(h) },
  )
  obj
end