module Pione::Util::TaskID

ID is a set of ID generators.

Public Class Methods

generate(inputs, params) click to toggle source

Make a task id by input data names and parameters.

# File lib/pione/util/id.rb, line 6
def generate(inputs, params)
  # NOTE: auto variables are ignored
  param_set = params.delete_all(["I", "INPUT", "O", "OUTPUT", "*"])
  inputs = inputs.map {|t| t.is_a?(TupleSpace::DataTuple) ? t.name : t}
  Digest::MD5.hexdigest("%s::%s" % [inputs.join(":"), param_set.textize])
end

Private Instance Methods

generate(inputs, params) click to toggle source

Make a task id by input data names and parameters.

# File lib/pione/util/id.rb, line 6
def generate(inputs, params)
  # NOTE: auto variables are ignored
  param_set = params.delete_all(["I", "INPUT", "O", "OUTPUT", "*"])
  inputs = inputs.map {|t| t.is_a?(TupleSpace::DataTuple) ? t.name : t}
  Digest::MD5.hexdigest("%s::%s" % [inputs.join(":"), param_set.textize])
end