Class: Overapp::Load::Factory

Inherits:
Object
  • Object
show all
Includes:
FromHash
Defined in:
lib/overapp/load/factory.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#descriptorObject

Returns the value of attribute descriptor.



5
6
7
# File 'lib/overapp/load/factory.rb', line 5

def descriptor
  @descriptor
end

#entry_opsObject

Returns the value of attribute entry_ops.



5
6
7
# File 'lib/overapp/load/factory.rb', line 5

def entry_ops
  @entry_ops
end

#typeObject

Returns the value of attribute type.



5
6
7
# File 'lib/overapp/load/factory.rb', line 5

def type
  @type
end

Instance Method Details

#loaderObject



7
8
9
10
11
12
13
14
15
16
# File 'lib/overapp/load/factory.rb', line 7

def loader
  raise "bad #{descriptor}" if descriptor.blank?
  if type.to_s.to_sym == :command
    Command.new(:descriptor => descriptor).tap { |x| x.relative_output_path = entry_ops[:path] if entry_ops[:path].present? }
  elsif Git.repo?(descriptor)
    Repo.new(:descriptor => descriptor)
  else
    LocalDir.new(:descriptor => descriptor)
  end
end