Index: tools/telemetry/telemetry/value/histogram.py |
diff --git a/tools/telemetry/telemetry/value/histogram.py b/tools/telemetry/telemetry/value/histogram.py |
index fa70445c7232f70c936af0d14773401521128c0e..7b1c69a25869336f703ceb3de4b154ebf2c16337 100644 |
--- a/tools/telemetry/telemetry/value/histogram.py |
+++ b/tools/telemetry/telemetry/value/histogram.py |
@@ -32,7 +32,8 @@ class HistogramValue(value_module.Value): |
super(HistogramValue, self).__init__(page, name, units, important, |
description) |
if raw_value_json: |
- assert raw_value == None, 'Dont specify both raw_value and raw_value_json' |
+ assert raw_value == None, \ |
+ 'Don\'t specify both raw_value and raw_value_json' |
raw_value = json.loads(raw_value_json) |
if raw_value: |
assert 'buckets' in raw_value |
@@ -89,7 +90,8 @@ class HistogramValue(value_module.Value): |
def GetRepresentativeString(self): |
return self.GetBuildbotValue() |
- def GetJSONTypeName(self): |
+ @staticmethod |
+ def GetJSONTypeName(): |
return 'histogram' |
def AsDict(self): |
@@ -97,6 +99,13 @@ class HistogramValue(value_module.Value): |
d['buckets'] = [b.AsDict() for b in self.buckets] |
return d |
+ @staticmethod |
+ def FromDict(value_dict, page_dict): |
+ kwargs = value_module.Value.GetConstructorKwArgs(value_dict, page_dict) |
+ kwargs['raw_value'] = value_dict |
+ |
+ return HistogramValue(**kwargs) |
+ |
@classmethod |
def MergeLikeValuesFromSamePage(cls, values): |
assert len(values) > 0 |