// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. part of $LIBRARYNAME; $(ANNOTATIONS)$(NATIVESPEC)$(CLASS_MODIFIERS)class $CLASSNAME$EXTENDS$IMPLEMENTS { Future count([key_OR_range]) { try { var request = _count(key_OR_range); return _completeRequest(request); } catch (e, stacktrace) { return new Future.error(e, stacktrace); } } Future get(key) { try { var request = _get(key); return _completeRequest(request); } catch (e, stacktrace) { return new Future.error(e, stacktrace); } } Future getKey(key) { try { var request = _getKey(key); return _completeRequest(request); } catch (e, stacktrace) { return new Future.error(e, stacktrace); } } /** * Creates a stream of cursors over the records in this object store. * * See also: * * * [ObjectStore.openCursor] */ Stream openCursor({key, KeyRange$NULLABLE range, String$NULLABLE direction, bool$NULLABLE autoAdvance}) { var key_OR_range = null; if (key != null) { if (range != null) { throw new ArgumentError('Cannot specify both key and range.'); } key_OR_range = key; } else { key_OR_range = range; } var request; if (direction == null) { // FIXME: Passing in "next" should be unnecessary. request = _openCursor(key_OR_range, "next"); } else { request = _openCursor(key_OR_range, direction); } return ObjectStore._cursorStreamFromResult(request, autoAdvance); } /** * Creates a stream of cursors over the records in this object store. * * See also: * * * [ObjectStore.openCursor] */ Stream openKeyCursor({key, KeyRange$NULLABLE range, String$NULLABLE direction, bool$NULLABLE autoAdvance}) { var key_OR_range = null; if (key != null) { if (range != null) { throw new ArgumentError('Cannot specify both key and range.'); } key_OR_range = key; } else { key_OR_range = range; } var request; if (direction == null) { // FIXME: Passing in "next" should be unnecessary. request = _openKeyCursor(key_OR_range, "next"); } else { request = _openKeyCursor(key_OR_range, direction); } return ObjectStore._cursorStreamFromResult(request, autoAdvance); } $!MEMBERS }