OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 // This file simulates a typical foreground process of an offline-capable | 5 // This file simulates a typical foreground process of an offline-capable |
6 // authoring application. When in an "offline" state, simulated user actions | 6 // authoring application. When in an "offline" state, simulated user actions |
7 // are recorded for later playback in an IDB data store. When in an "online" | 7 // are recorded for later playback in an IDB data store. When in an "online" |
8 // state, the recorded actions are drained from the store (as if being sent | 8 // state, the recorded actions are drained from the store (as if being sent |
9 // to the server). | 9 // to the server). |
10 | 10 |
(...skipping 15 matching lines...) Expand all Loading... |
26 function log(message) { | 26 function log(message) { |
27 status(message); | 27 status(message); |
28 } | 28 } |
29 | 29 |
30 function error(message) { | 30 function error(message) { |
31 status(message); | 31 status(message); |
32 console.error(message); | 32 console.error(message); |
33 } | 33 } |
34 | 34 |
35 function unexpectedErrorCallback(e) { | 35 function unexpectedErrorCallback(e) { |
36 error("Unexpected error callback: (" + e.target.errorCode + ") " + | 36 error("Unexpected error callback: (" + e.target.error.name + ") " + |
37 e.target.webkitErrorMessage); | 37 e.target.webkitErrorMessage); |
38 } | 38 } |
39 | 39 |
40 function unexpectedAbortCallback(e) { | 40 function unexpectedAbortCallback(e) { |
41 error("Unexpected abort callback: (" + e.target.errorCode + ") " + | 41 error("Unexpected abort callback: (" + e.target.error.name + ") " + |
42 e.target.webkitErrorMessage); | 42 e.target.webkitErrorMessage); |
43 } | 43 } |
44 | 44 |
45 function unexpectedBlockedCallback(e) { | 45 function unexpectedBlockedCallback(e) { |
46 error("Unexpected blocked callback!"); | 46 error("Unexpected blocked callback!"); |
47 } | 47 } |
48 | 48 |
49 var DBNAME = 'endurance-db'; | 49 var DBNAME = 'endurance-db'; |
50 var DBVERSION = 1; | 50 var DBVERSION = 1; |
51 var MAX_DOC_ID = 25; | 51 var MAX_DOC_ID = 25; |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
86 } | 86 } |
87 | 87 |
88 var offline = true; | 88 var offline = true; |
89 var worker = new Worker('app-worker.js?cachebust'); | 89 var worker = new Worker('app-worker.js?cachebust'); |
90 worker.onmessage = function (event) { | 90 worker.onmessage = function (event) { |
91 var data = event.data; | 91 var data = event.data; |
92 switch (data.type) { | 92 switch (data.type) { |
93 case 'ABORT': | 93 case 'ABORT': |
94 unexpectedAbortCallback( | 94 unexpectedAbortCallback( |
95 {target:{ | 95 {target:{ |
96 errorCode: data.errorCode, | 96 error: data.error, |
97 webkitErrorMessage: data.webkitErrorMessage}}); | 97 webkitErrorMessage: data.webkitErrorMessage}}); |
98 break; | 98 break; |
99 case 'ERROR': | 99 case 'ERROR': |
100 unexpectedErrorCallback( | 100 unexpectedErrorCallback( |
101 {target:{ | 101 {target:{ |
102 errorCode: data.errorCode, | 102 error: data.error, |
103 webkitErrorMessage: data.webkitErrorMessage}}); | 103 webkitErrorMessage: data.webkitErrorMessage}}); |
104 break; | 104 break; |
105 case 'BLOCKED': | 105 case 'BLOCKED': |
106 unexpectedBlockedCallback( | 106 unexpectedBlockedCallback( |
107 {target:{ | 107 {target:{ |
108 errorCode: data.errorCode, | 108 error: data.error, |
109 webkitErrorMessage: data.webkitErrorMessage}}); | 109 webkitErrorMessage: data.webkitErrorMessage}}); |
110 break; | 110 break; |
111 case 'LOG': | 111 case 'LOG': |
112 log('WORKER: ' + data.message); | 112 log('WORKER: ' + data.message); |
113 break; | 113 break; |
114 case 'ERROR': | 114 case 'ERROR': |
115 error('WORKER: ' + data.message); | 115 error('WORKER: ' + data.message); |
116 break; | 116 break; |
117 } | 117 } |
118 }; | 118 }; |
(...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
278 var s = ''; | 278 var s = ''; |
279 while (len--) | 279 while (len--) |
280 s += Math.floor((Math.random() * 36)).toString(36); | 280 s += Math.floor((Math.random() * 36)).toString(36); |
281 return s; | 281 return s; |
282 } | 282 } |
283 | 283 |
284 window.onload = function () { | 284 window.onload = function () { |
285 log("initializing..."); | 285 log("initializing..."); |
286 initdb(); | 286 initdb(); |
287 }; | 287 }; |
OLD | NEW |