# File lib/puppet/ssl/host.rb, line 45
45:   def self.configure_indirection(terminus, cache = nil)
46:     Certificate.terminus_class = terminus
47:     CertificateRequest.terminus_class = terminus
48:     CertificateRevocationList.terminus_class = terminus
49: 
50:     if cache
51:       # This is weird; we don't actually cache our keys, we
52:       # use what would otherwise be the cache as our normal
53:       # terminus.
54:       Key.terminus_class = cache
55:     else
56:       Key.terminus_class = terminus
57:     end
58: 
59:     if cache
60:       Certificate.cache_class = cache
61:       CertificateRequest.cache_class = cache
62:       CertificateRevocationList.cache_class = cache
63:     else
64:       # Make sure we have no cache configured.  puppet master
65:       # switches the configurations around a bit, so it's important
66:       # that we specify the configs for absolutely everything, every
67:       # time.
68:       Certificate.cache_class = nil
69:       CertificateRequest.cache_class = nil
70:       CertificateRevocationList.cache_class = nil
71:     end
72:   end