Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / chrome / common / extensions / api / activity_log_private.json
1 // Copyright 2013 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 [
6   {
7     "namespace": "activityLogPrivate",
8     "description": "none",
9     "types": [
10       {
11         "id": "ExtensionActivity",
12         "type": "object",
13         "description": "This corresponds to a row from the ActivityLog database. Fields will be blank if they were specified precisely in a lookup filter.",
14         "properties": {
15           "activityId": {"type": "string", "optional": true, "description": "An ID of a row in the ActivityLog database that corresponds to the activity. ID is set only on activities retrieved from the database."},
16           "extensionId": {"type": "string", "optional": true},
17           "activityType": {"type": "string", "enum": ["api_call", "api_event", "content_script", "dom_access", "dom_event", "web_request"]},
18           "time": {"type": "number", "optional": true},
19           "apiCall": {"type": "string", "optional": true},
20           "args": {"type": "string", "optional": true},
21           "count": {"type": "number", "optional": true},
22           "pageUrl": {"type": "string", "optional": true},
23           "pageTitle": {"type": "string", "optional": true},
24           "argUrl": {"type": "string", "optional": true},
25           "other": {
26             "type": "object",
27             "optional": true,
28             "properties": {
29               "prerender": {"type": "boolean", "optional": true},
30               "domVerb": {"type": "string", "enum": ["getter", "setter", "method", "inserted", "xhr", "webrequest", "modified"], "optional": true},
31               "webRequest": {"type": "string", "optional": true},
32               "extra": {"type": "string", "optional": true}
33             }
34           }
35         }
36       },
37       {
38         "id": "Filter",
39         "type": "object",
40         "description": "Used to specify values for a lookup.",
41         "properties": {
42           "extensionId": {"type": "string", "optional": true, "description": "Exact match"},
43           "activityType": {"type": "string", "enum": ["api_call", "api_event", "content_script", "dom_access", "dom_event", "web_request", "any"], "description": "Exact match or any"},
44           "apiCall": {"type": "string", "optional": true, "description": "Exact match"},
45           "pageUrl": {"type": "string", "optional": true, "description": "Treated as a prefix"},
46           "argUrl": {"type": "string", "optional": true, "description": "Treated as a prefix"},
47           "daysAgo": {"type": "integer", "optional": true, "description": "Used to lookup a precise day; today is 0"}
48         }
49       },
50       {
51         "id": "ActivityResultSet",
52         "type": "object",
53         "description": "This holds the results of a lookup, the filter of the lookup, the time of the lookup, and whether there are more results that match.",
54         "properties": {
55           "activities": {"type": "array", "items": {"$ref": "ExtensionActivity"}}
56         }
57       }
58     ],
59     "functions": [
60       {
61         "name": "getExtensionActivities",
62         "type": "function",
63         "description": "Retrieves activity from the ActivityLog that matches the specified filter.",
64         "parameters": [
65           {
66             "name": "filter",
67             "$ref": "Filter",
68             "description": "Fill out the fields that you want to search for in the database."
69           },
70           {
71             "name": "callback",
72             "type": "function",
73             "parameters": [
74               {
75                 "name": "result",
76                 "$ref": "ActivityResultSet"
77               }
78             ]
79           }
80         ]
81       },
82       {
83         "name": "deleteActivities",
84         "type": "function",
85         "description": "Deletes activities in the ActivityLog database specified in the array of activity IDs.",
86         "parameters": [
87           {
88             "name": "activityIds",
89             "type": "array",
90             "items": { "type": "string" },
91             "description": "Erases only the activities which IDs are listed in the array."
92           }
93         ]
94       },
95       {
96         "name": "deleteDatabase",
97         "type": "function",
98         "description": "Deletes the entire ActivityLog database.",
99         "parameters": []
100       },
101       {
102         "name": "deleteUrls",
103         "type": "function",
104         "description": "Delete URLs in the ActivityLog database.",
105         "parameters": [
106           {
107             "name": "urls",
108             "type": "array",
109             "items": { "type": "string" },
110             "description": "Erases only the URLs listed; if empty, erases all URLs.",
111             "optional": true
112           }
113         ]
114       }
115     ],
116     "events": [
117       {
118         "name": "onExtensionActivity",
119         "type": "function",
120         "description": "Fired when a given extension performs another activity.",
121         "parameters": [
122           {
123             "name": "activity",
124             "$ref": "ExtensionActivity"
125           }
126         ]
127       }
128     ]
129   }
130 ]