summaryrefslogtreecommitdiffstats
path: root/mojo/public/dart/src/client.dart
diff options
context:
space:
mode:
Diffstat (limited to 'mojo/public/dart/src/client.dart')
-rw-r--r--mojo/public/dart/src/client.dart82
1 files changed, 0 insertions, 82 deletions
diff --git a/mojo/public/dart/src/client.dart b/mojo/public/dart/src/client.dart
deleted file mode 100644
index f8ec73c..0000000
--- a/mojo/public/dart/src/client.dart
+++ /dev/null
@@ -1,82 +0,0 @@
-// Copyright 2014 The Chromium Authors. 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 bindings;
-
-abstract class Client extends core.MojoEventStreamListener {
- Map<int, Completer> _completerMap;
- int _nextId = 0;
-
- Client(core.MojoMessagePipeEndpoint endpoint) :
- _completerMap = {},
- super(endpoint);
-
- Client.fromHandle(core.MojoHandle handle) :
- _completerMap = {},
- super.fromHandle(handle);
-
- Client.unbound() :
- _completerMap = {},
- super.unbound();
-
- void handleResponse(ServiceMessage reader);
-
- void handleRead() {
- // Query how many bytes are available.
- var result = endpoint.query();
- assert(result.status.isOk || result.status.isResourceExhausted);
-
- // Read the data.
- var bytes = new ByteData(result.bytesRead);
- var handles = new List<core.MojoHandle>(result.handlesRead);
- result = endpoint.read(bytes, result.bytesRead, handles);
- assert(result.status.isOk || result.status.isResourceExhausted);
- var message = new ServiceMessage.fromMessage(new Message(bytes, handles));
- handleResponse(message);
- }
-
- void handleWrite() {
- throw 'Unexpected write signal in client.';
- }
-
- void sendMessage(Struct message, int name) {
- if (!isOpen) {
- listen();
- }
- var header = new MessageHeader(name);
- var serviceMessage = message.serializeWithHeader(header);
- endpoint.write(serviceMessage.buffer,
- serviceMessage.buffer.lengthInBytes,
- serviceMessage.handles);
- if (!endpoint.status.isOk) {
- throw "message pipe write failed";
- }
- }
-
- Future sendMessageWithRequestId(
- Struct message, int name, int id, int flags) {
- if (!isOpen) {
- listen();
- }
- if (id == -1) {
- id = _nextId++;
- }
-
- var header = new MessageHeader.withRequestId(name, flags, id);
- var serviceMessage = message.serializeWithHeader(header);
- endpoint.write(serviceMessage.buffer,
- serviceMessage.buffer.lengthInBytes,
- serviceMessage.handles);
- if (!endpoint.status.isOk) {
- throw "message pipe write failed";
- }
-
- var completer = new Completer();
- _completerMap[id] = completer;
- return completer.future;
- }
-
- // Need a getter for this for access in subclasses.
- Map<int, Completer> get completerMap => _completerMap;
-}