)]}'
{"ceilometer/dispatcher/gnocchi.py":[{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"cb0b9ae51ea0412c2c307d84567adea7e39f4062","unresolved":false,"context_lines":[{"line_number":325,"context_line":"        attribute_hash \u003d hash(frozenset(resource_info.items()))"},{"line_number":326,"context_line":"        cached_hash \u003d self.cache.get(resource_id)"},{"line_number":327,"context_line":"        if cached_hash !\u003d attribute_hash:"},{"line_number":328,"context_line":"            return attribute_hash"},{"line_number":329,"context_line":""},{"line_number":330,"context_line":"    def _ensure_resource_and_metric(self, resource_type, resource,"},{"line_number":331,"context_line":"                                    metric_name):"}],"source_content_type":"text/x-python","patch_set":1,"id":"da85f559_9f0ae888","line":328,"updated":"2015-11-12 10:18:02.000000000","message":"I\u0027m not super keen on the implicit return None, given that this is Python and all; land of the explicit.","commit_id":"55b2875e96e72bcd05f317a50d423942e8d957de"}]}
