Chromium Code Reviews| Index: tools/android/loading/loading_model.py |
| diff --git a/tools/android/loading/loading_model.py b/tools/android/loading/loading_model.py |
| index 7ba75fc79b4bfa41a8e738d23bd71fa99d3484d0..e1d6a66ce4276c8e0bc3e0f57b534bd37f4e16aa 100644 |
| --- a/tools/android/loading/loading_model.py |
| +++ b/tools/android/loading/loading_model.py |
| @@ -290,9 +290,26 @@ class ResourceGraph(object): |
| ## Internal items |
| ## |
| - _CONTENT_TYPE_TO_COLOR = {'html': 'red', 'css': 'green', 'script': 'blue', |
| - 'json': 'purple', 'gif_image': 'grey', |
| - 'image': 'orange', 'other': 'white'} |
| + _CONTENT_KIND_TO_COLOR = { |
|
blundell
2016/01/21 14:11:38
Worth documenting what these mean?
mattcary
2016/01/21 16:11:35
Done.
|
| + 'application': 'blue', |
| + 'font': 'grey2', |
| + 'image': 'orange', # This probably catches gifs? |
|
Benoit L
2016/01/21 14:14:38
it does.
mattcary
2016/01/21 16:11:35
Then this isn't what we want. Well, let me land th
Benoit L
2016/01/21 16:20:03
About as high as deciding on the bike shed color.
|
| + } |
| + |
| + _CONTENT_TYPE_TO_COLOR = { |
| + 'html': 'red', |
| + 'css': 'green', |
| + 'script': 'blue', |
| + 'javascript': 'blue', |
| + 'json': 'purple', |
| + 'gif': 'grey', |
| + 'image': 'orange', |
| + 'jpeg': 'orange', |
| + 'png': 'orange', |
| + 'plain': 'brown3', |
| + 'octet-stream': 'brown3', |
| + 'other': 'white', |
| + } |
| # This resource type may induce a timing dependency. See _SplitChildrenByTime |
| # for details. |
| @@ -363,19 +380,20 @@ class ResourceGraph(object): |
| """ |
| parsed = urlparse.urlparse(self._request.url) |
| path = parsed.path |
| + hostname = parsed.hostname if parsed.hostname else '?.?.?' |
| if path != '' and path != '/': |
| last_path = parsed.path.split('/')[-1] |
| if len(last_path) < 10: |
| if len(path) < 10: |
| - return parsed.hostname + '/' + path |
| + return hostname + '/' + path |
| else: |
| - return parsed.hostname + '/..' + parsed.path[-10:] |
| + return hostname + '/..' + parsed.path[-10:] |
| elif len(last_path) > 10: |
| - return parsed.hostname + '/..' + last_path[:5] |
| + return hostname + '/..' + last_path[:5] |
| else: |
| - return parsed.hostname + '/..' + last_path |
| + return hostname + '/..' + last_path |
| else: |
| - return parsed.hostname |
| + return hostname |
| def Url(self): |
| return self._request.url |
| @@ -463,7 +481,7 @@ class ResourceGraph(object): |
| dependencies = request_dependencies_lens.RequestDependencyLens( |
| trace).GetRequestDependencies() |
| - for child_rq, parent_rq, reason in dependencies: |
| + for parent_rq, child_rq, reason in dependencies: |
| parent = self._node_info[index_by_request[parent_rq]] |
| child = self._node_info[index_by_request[child_rq]] |
| edge_cost = child.StartTime() - parent.EndTime() |
| @@ -549,6 +567,17 @@ class ResourceGraph(object): |
| current.ReparentTo(parent, children_by_end_time[end_mark]) |
| children_by_end_time[end_mark].AddEdgeAnnotation(current, 'timing') |
| + def _ContentTypeToColor(self, content_type): |
| + if not content_type: |
| + type_str = 'other' |
| + elif '/' in content_type: |
| + kind, type_str = content_type.split('/') |
| + if kind in self._CONTENT_KIND_TO_COLOR: |
|
blundell
2016/01/21 14:11:38
hmm, also probably worth documenting the relations
mattcary
2016/01/21 16:11:35
I don't really know how these mime-types work. I t
|
| + return self._CONTENT_KIND_TO_COLOR[kind] |
| + else: |
| + type_str = content_type |
| + return self._CONTENT_TYPE_TO_COLOR[type_str] |
| + |
| def _GraphvizNode(self, index, highlight): |
| """Returns a graphviz node description for a given node. |
| @@ -563,7 +592,7 @@ class ResourceGraph(object): |
| is oval if its max-age is less than 300s (or if it's not cacheable). |
| """ |
| node_info = self._node_info[index] |
| - color = self._CONTENT_TYPE_TO_COLOR[node_info.ContentType()] |
| + color = self._ContentTypeToColor(node_info.ContentType()) |
| max_age = node_info.Request().MaxAge() |
| shape = 'polygon' if max_age > 300 else 'oval' |
| styles = ['filled'] |