class Bricolage::JobNet::Ref

Attributes

location[R]
name[R]
subsystem[R]

Public Class Methods

new(subsys, name, location) click to toggle source
# File lib/bricolage/jobnet.rb, line 357
def initialize(subsys, name, location)
  @subsystem = subsys
  @name = name
  @location = location
end
parse(ref, curr_subsys = nil, location = Location.dummy) click to toggle source
# File lib/bricolage/jobnet.rb, line 345
def Ref.parse(ref, curr_subsys = nil, location = Location.dummy)
  m = %r<\A(\*)?(?:(\w[\w\-]*)/)?(@?\w[\w\-]*)\z>.match(ref) or
      raise ParameterError, "bad job name: #{ref.inspect}"
  is_net, subsys, name = m.captures
  ref_class = (is_net ? JobNetRef : JobRef)
  node_subsys = subsys || curr_subsys
  unless node_subsys
    raise ParameterError, "missing subsystem: #{ref}"
  end
  ref_class.new(node_subsys, name, location)
end

Public Instance Methods

==(other) click to toggle source
# File lib/bricolage/jobnet.rb, line 375
def ==(other)
  to_s == other.to_s
end
Also aliased as: eql?
dummy?() click to toggle source
# File lib/bricolage/jobnet.rb, line 385
def dummy?
  @name[0] == '@'
end
eql?(other)
Alias for: ==
hash() click to toggle source
# File lib/bricolage/jobnet.rb, line 381
def hash
  to_s.hash
end
inspect() click to toggle source
# File lib/bricolage/jobnet.rb, line 367
def inspect
  "\#<#{self.class} #{to_s}>"
end
to_s() click to toggle source
# File lib/bricolage/jobnet.rb, line 371
def to_s
  @ref ||= [@subsystem, @name].compact.join('/')
end