# File lib/puppet/indirector.rb, line 20 20: def indirects(indirection, options = {}) 21: raise(ArgumentError, "Already handling indirection for #{@indirection.name}; cannot also handle #{indirection}") if @indirection 22: # populate this class with the various new methods 23: extend ClassMethods 24: include InstanceMethods 25: include Puppet::Indirector::Envelope 26: extend Puppet::Network::FormatHandler 27: 28: # instantiate the actual Terminus for that type and this name (:ldap, w/ args :node) 29: # & hook the instantiated Terminus into this class (Node: @indirection = terminus) 30: @indirection = Puppet::Indirector::Indirection.new(self, indirection, options) 31: end