252: def retrieve_value(resource_name, attribute)
253:
254: if not self.class.parsed_auth_db.has_key?(resource_name)
255: raise Puppet::Error.new("Cannot find #{resource_name} in auth db")
256: end
257:
258: if PuppetToNativeAttributeMap.has_key?(attribute)
259: native_attribute = PuppetToNativeAttributeMap[attribute]
260: else
261: native_attribute = attribute.to_s
262: end
263:
264: if self.class.parsed_auth_db[resource_name].has_key?(native_attribute)
265: value = self.class.parsed_auth_db[resource_name][native_attribute]
266: case value
267: when true, :true
268: value = :true
269: when false, :false
270: value = :false
271: end
272:
273: @property_hash[attribute] = value
274: return value
275: else
276: @property_hash.delete(attribute)
277: return ""
278: end
279: end