summaryrefslogtreecommitdiffstats
path: root/lib/puppet/application/indirection_base.rb
blob: e6d172ced79c2c410de5e9b48199cc1472ce98c8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
require 'puppet/application/interface_base'
require 'puppet/interface'

class Puppet::Application::IndirectionBase < Puppet::Application::InterfaceBase
  option("--from TERMINUS", "-f") do |arg|
    @from = arg
  end

  attr_accessor :from, :indirection

  def setup
    super

    if interface.respond_to?(:indirection)
      raise "Could not find data type #{type} for application #{self.class.name}" unless interface.indirection

      interface.set_terminus(from) if from
    end
  end
end