# File lib/puppet/type/file/checksum.rb, line 68
68:     def cache(type, sum = nil)
69:         return unless c = resource.catalog and c.host_config?
70:         unless type
71:             raise ArgumentError, "A type must be specified to cache a checksum"
72:         end
73:         type = symbolize(type)
74:         type = :mtime if type == :timestamp
75:         type = :ctime if type == :time
76: 
77:         unless state = @resource.cached(:checksums)
78:             self.debug "Initializing checksum hash"
79:             state = {}
80:             @resource.cache(:checksums, state)
81:         end
82: 
83:         if sum
84:             unless sum =~ /\{\w+\}/
85:                 sum = "{%s}%s" % [type, sum]
86:             end
87:             state[type] = sum
88:         else
89:             return state[type]
90:         end
91:     end