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

Side by Side Diff: chrome/browser/resources/google_now/utility.js

Issue 17894010: Receiving and sending dismissal parameters (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 7 years, 5 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 | Annotate | Revision Log
« no previous file with comments | « chrome/browser/resources/google_now/background.js ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 'use strict'; 5 'use strict';
6 6
7 // TODO(vadimt): Remove alerts. 7 // TODO(vadimt): Remove alerts.
8 8
9 /** 9 /**
10 * @fileoverview Utility objects and functions for Google Now extension. 10 * @fileoverview Utility objects and functions for Google Now extension.
(...skipping 14 matching lines...) Expand all
25 * false. 25 * false.
26 */ 26 */
27 function verify(condition, message) { 27 function verify(condition, message) {
28 if (!condition) 28 if (!condition)
29 throw new Error('\nASSERT: ' + message); 29 throw new Error('\nASSERT: ' + message);
30 } 30 }
31 31
32 /** 32 /**
33 * Builds a request to the notification server. 33 * Builds a request to the notification server.
34 * @param {string} handlerName Server handler to send the request to. 34 * @param {string} handlerName Server handler to send the request to.
35 * @param {string} contentType Value for the Content-type header.
35 * @return {XMLHttpRequest} Server request. 36 * @return {XMLHttpRequest} Server request.
36 */ 37 */
37 function buildServerRequest(handlerName) { 38 function buildServerRequest(handlerName, contentType) {
38 var request = new XMLHttpRequest(); 39 var request = new XMLHttpRequest();
39 40
40 request.responseType = 'text'; 41 request.responseType = 'text';
41 request.open('POST', NOTIFICATION_CARDS_URL + '/' + handlerName, true); 42 request.open('POST', NOTIFICATION_CARDS_URL + '/' + handlerName, true);
42 request.setRequestHeader('Content-type', 'application/x-www-form-urlencoded'); 43 request.setRequestHeader('Content-type', contentType);
43 44
44 return request; 45 return request;
45 } 46 }
46 47
47 /** 48 /**
48 * Builds the object to manage tasks (mutually exclusive chains of events). 49 * Builds the object to manage tasks (mutually exclusive chains of events).
49 * @param {function(string, string): boolean} areConflicting Function that 50 * @param {function(string, string): boolean} areConflicting Function that
50 * checks if a new task can't be added to a task queue that contains an 51 * checks if a new task can't be added to a task queue that contains an
51 * existing task. 52 * existing task.
52 * @return {Object} Task manager interface. 53 * @return {Object} Task manager interface.
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after
170 if (topFrameElements.length >= 3) { 171 if (topFrameElements.length >= 3) {
171 file = topFrameElements[0] + ':' + topFrameElements[1]; 172 file = topFrameElements[0] + ':' + topFrameElements[1];
172 line = topFrameElements[2]; 173 line = topFrameElements[2];
173 } 174 }
174 } 175 }
175 var requestParameters = 176 var requestParameters =
176 'error=' + encodeURIComponent(error.name) + 177 'error=' + encodeURIComponent(error.name) +
177 '&script=' + encodeURIComponent(file) + 178 '&script=' + encodeURIComponent(file) +
178 '&line=' + encodeURIComponent(line) + 179 '&line=' + encodeURIComponent(line) +
179 '&trace=' + encodeURIComponent(filteredStack); 180 '&trace=' + encodeURIComponent(filteredStack);
180 var request = buildServerRequest('jserror'); 181 var request = buildServerRequest('jserror',
182 'application/x-www-form-urlencoded');
181 request.onloadend = function(event) { 183 request.onloadend = function(event) {
182 console.log('sendErrorReport status: ' + request.status); 184 console.log('sendErrorReport status: ' + request.status);
183 }; 185 };
184 request.send(requestParameters); 186 request.send(requestParameters);
185 } 187 }
186 188
187 /** 189 /**
188 * Adds error processing to an API callback. 190 * Adds error processing to an API callback.
189 * @param {Function} callback Callback to instrument. 191 * @param {Function} callback Callback to instrument.
190 * @return {Function} Instrumented callback. 192 * @return {Function} Instrumented callback.
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after
348 if (alarm.name == alarmName) 350 if (alarm.name == alarmName)
349 attempt(); 351 attempt();
350 }); 352 });
351 353
352 return { 354 return {
353 start: start, 355 start: start,
354 planForNext: planForNext, 356 planForNext: planForNext,
355 stop: stop 357 stop: stop
356 }; 358 };
357 } 359 }
OLDNEW
« no previous file with comments | « chrome/browser/resources/google_now/background.js ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698