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

Side by Side Diff: tools/dom/templates/html/impl/impl_IDBFactory.darttemplate

Issue 1909613003: Revert "Remove the generics from _FrozenElementList: causes checked mode failures" (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 8 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
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 part of $LIBRARYNAME; 5 part of $LIBRARYNAME;
6 6
7 $(ANNOTATIONS)$(NATIVESPEC)$(CLASS_MODIFIERS)class $CLASSNAME$EXTENDS$IMPLEMENTS { 7 $(ANNOTATIONS)$(NATIVESPEC)$(CLASS_MODIFIERS)class $CLASSNAME$EXTENDS$IMPLEMENTS {
8 /** 8 /**
9 * Checks to see if Indexed DB is supported on the current platform. 9 * Checks to see if Indexed DB is supported on the current platform.
10 */ 10 */
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
42 request.onBlocked.listen(onBlocked); 42 request.onBlocked.listen(onBlocked);
43 } 43 }
44 return _completeRequest(request); 44 return _completeRequest(request);
45 } catch (e, stacktrace) { 45 } catch (e, stacktrace) {
46 return new Future.error(e, stacktrace); 46 return new Future.error(e, stacktrace);
47 } 47 }
48 } 48 }
49 49
50 @DomName('IDBFactory.deleteDatabase') 50 @DomName('IDBFactory.deleteDatabase')
51 Future<IdbFactory> deleteDatabase(String name, 51 Future<IdbFactory> deleteDatabase(String name,
52 {void onBlocked(Event)}) { 52 {void onBlocked(Event e)}) {
53 try { 53 try {
54 var request = _deleteDatabase(name); 54 var request = _deleteDatabase(name);
55 55
56 if (onBlocked != null) { 56 if (onBlocked != null) {
57 request.onBlocked.listen(onBlocked); 57 request.onBlocked.listen(onBlocked);
58 } 58 }
59 var completer = new Completer.sync(); 59 var completer = new Completer<IdbFactory>.sync();
60 request.onSuccess.listen((e) { 60 request.onSuccess.listen((e) {
61 completer.complete(this); 61 completer.complete(this);
62 }); 62 });
63 request.onError.listen(completer.completeError); 63 request.onError.listen(completer.completeError);
64 return completer.future; 64 return completer.future;
65 } catch (e, stacktrace) { 65 } catch (e, stacktrace) {
66 return new Future.error(e, stacktrace); 66 return new Future.error(e, stacktrace);
67 } 67 }
68 } 68 }
69 69
(...skipping 23 matching lines...) Expand all
93 } 93 }
94 94
95 $!MEMBERS 95 $!MEMBERS
96 } 96 }
97 97
98 98
99 /** 99 /**
100 * Ties a request to a completer, so the completer is completed when it succeeds 100 * Ties a request to a completer, so the completer is completed when it succeeds
101 * and errors out when the request errors. 101 * and errors out when the request errors.
102 */ 102 */
103 Future _completeRequest(Request request) { 103 Future/*<T>*/ _completeRequest/*<T>*/(Request request) {
104 var completer = new Completer.sync(); 104 var completer = new Completer/*<T>*/.sync();
105 // TODO: make sure that completer.complete is synchronous as transactions 105 // TODO: make sure that completer.complete is synchronous as transactions
106 // may be committed if the result is not processed immediately. 106 // may be committed if the result is not processed immediately.
107 request.onSuccess.listen((e) { 107 request.onSuccess.listen((e) {
108 completer.complete(request.result); 108 completer.complete(request.result as dynamic/*=T*/);
109 }); 109 });
110 request.onError.listen(completer.completeError); 110 request.onError.listen(completer.completeError);
111 return completer.future; 111 return completer.future;
112 } 112 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698