Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(246)

Side by Side Diff: tools/android/loading/loading_trace.py

Issue 1606903002: tools/android/loading: Archive tracks in LoadingTrace. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: . Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 # Copyright (c) 2016 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
4
5 """Represents the trace of a page load."""
6
7 import page_track
8 import request_track
9 import tracing
10
11 class LoadingTrace(object):
12 """Represents the trace of a page load."""
13 def __init__(self, url, metadata, page, request, tracing_track):
14 """Initializes a loading trace instance.
15
16 Args:
17 url: (str) URL that has been loaded
18 metadata: (dict) Metadata associated with the load.
19 page: (PageTrack) instance of PageTrack.
20 request: (RequestTrack) instance of RequestTrack.
21 tracing_track: (TracingTrack) instance of TracingTrack.
22 """
23 self.url = url
24 self.metadata = metadata
25 self.page_track = page
26 self.request_track = request
27 self.tracing_track = tracing_track
28
29 def ToJsonDict(self):
30 """Returns a dictionary representing this instance."""
31 result = {'url': self.url, 'metadata': self.metadata,
mattcary 2016/01/19 15:24:47 Turn the keys into class constants to avoid typos?
Benoit L 2016/01/19 15:54:50 Done.
32 'page_track': self.page_track.ToJsonDict(),
33 'request_track': self.request_track.ToJsonDict(),
34 'tracing_track': self.tracing_track.ToJsonDict()}
35 return result
36
37 @classmethod
38 def FromJsonDict(cls, json_dict):
39 """Returns an instance from a dictionary returned by ToJsonDict()."""
40 keys = ('url', 'metadata', 'page_track', 'request_track', 'tracing_track')
41 assert all(key in json_dict for key in keys)
42 page = page_track.PageTrack.FromJsonDict(json_dict['page_track'])
43 request = request_track.RequestTrack.FromJsonDict(
44 json_dict['request_track'])
45 tracing_track = tracing.TracingTrack.FromJsonDict(
46 json_dict['tracing_track'])
47 return LoadingTrace(json_dict['url'], json_dict['metadata'],
48 page, request, tracing_track)
OLDNEW
« no previous file with comments | « no previous file | tools/android/loading/request_track.py » ('j') | tools/android/loading/trace_recorder.py » ('J')

Powered by Google App Engine
This is Rietveld 408576698