# File lib/puppet/indirector.rb, line 20
20:     def indirects(indirection, options = {})
21:         raise(ArgumentError, "Already handling indirection for %s; cannot also handle %s" % [@indirection.name, indirection]) if defined?(@indirection) and @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:         @indirection
32:     end