| Index: mojo/dart/packages/mojo/lib/src/data_pipe.dart
|
| diff --git a/mojo/dart/packages/mojo/lib/src/data_pipe.dart b/mojo/dart/packages/mojo/lib/src/data_pipe.dart
|
| index 884bbcba8f9d9379ddd2ad7b4853ba2181937526..e5a5d1fdfb54f11f0c6c806d02baa553ffe85843 100644
|
| --- a/mojo/dart/packages/mojo/lib/src/data_pipe.dart
|
| +++ b/mojo/dart/packages/mojo/lib/src/data_pipe.dart
|
| @@ -8,16 +8,16 @@ class MojoDataPipeProducer {
|
| static const int FLAG_NONE = 0;
|
| static const int FLAG_ALL_OR_NONE = 1 << 0;
|
|
|
| - MojoHandle handle;
|
| - MojoResult status;
|
| final int elementBytes;
|
| + MojoHandle handle;
|
| + int status;
|
|
|
| MojoDataPipeProducer(this.handle,
|
| - [this.status = MojoResult.OK, this.elementBytes = 1]);
|
| + [this.status = MojoResult.kOk, this.elementBytes = 1]);
|
|
|
| int write(ByteData data, [int numBytes = -1, int flags = 0]) {
|
| if (handle == null) {
|
| - status = MojoResult.INVALID_ARGUMENT;
|
| + status = MojoResult.kInvalidArgument;
|
| return 0;
|
| }
|
|
|
| @@ -25,44 +25,45 @@ class MojoDataPipeProducer {
|
| List result =
|
| MojoDataPipeNatives.MojoWriteData(handle.h, data, data_numBytes, flags);
|
| if (result == null) {
|
| - status = MojoResult.INVALID_ARGUMENT;
|
| + status = MojoResult.kInvalidArgument;
|
| return 0;
|
| }
|
|
|
| assert((result is List) && (result.length == 2));
|
| - status = new MojoResult(result[0]);
|
| + status = result[0];
|
| return result[1];
|
| }
|
|
|
| ByteData beginWrite(int bufferBytes, [int flags = 0]) {
|
| if (handle == null) {
|
| - status = MojoResult.INVALID_ARGUMENT;
|
| + status = MojoResult.kInvalidArgument;
|
| return null;
|
| }
|
|
|
| List result =
|
| MojoDataPipeNatives.MojoBeginWriteData(handle.h, bufferBytes, flags);
|
| if (result == null) {
|
| - status = MojoResult.INVALID_ARGUMENT;
|
| + status = MojoResult.kInvalidArgument;
|
| return null;
|
| }
|
|
|
| assert((result is List) && (result.length == 2));
|
| - status = new MojoResult(result[0]);
|
| + status = result[0];
|
| return result[1];
|
| }
|
|
|
| - MojoResult endWrite(int bytesWritten) {
|
| + int endWrite(int bytesWritten) {
|
| if (handle == null) {
|
| - status = MojoResult.INVALID_ARGUMENT;
|
| + status = MojoResult.kInvalidArgument;
|
| return status;
|
| }
|
| int result = MojoDataPipeNatives.MojoEndWriteData(handle.h, bytesWritten);
|
| - status = new MojoResult(result);
|
| + status = result;
|
| return status;
|
| }
|
|
|
| - String toString() => "MojoDataPipeProducer(handle: $handle, status: $status)";
|
| + String toString() => "MojoDataPipeProducer(handle: $handle, "
|
| + "status: ${MojoResult.string(status)})";
|
| }
|
|
|
| class MojoDataPipeConsumer {
|
| @@ -73,15 +74,15 @@ class MojoDataPipeConsumer {
|
| static const int FLAG_PEEK = 1 << 3;
|
|
|
| MojoHandle handle;
|
| - MojoResult status;
|
| final int elementBytes;
|
| + int status;
|
|
|
| MojoDataPipeConsumer(this.handle,
|
| - [this.status = MojoResult.OK, this.elementBytes = 1]);
|
| + [this.status = MojoResult.kOk, this.elementBytes = 1]);
|
|
|
| int read(ByteData data, [int numBytes = -1, int flags = 0]) {
|
| if (handle == null) {
|
| - status = MojoResult.INVALID_ARGUMENT;
|
| + status = MojoResult.kInvalidArgument;
|
| return 0;
|
| }
|
|
|
| @@ -89,46 +90,47 @@ class MojoDataPipeConsumer {
|
| List result =
|
| MojoDataPipeNatives.MojoReadData(handle.h, data, data_numBytes, flags);
|
| if (result == null) {
|
| - status = MojoResult.INVALID_ARGUMENT;
|
| + status = MojoResult.kInvalidArgument;
|
| return 0;
|
| }
|
| assert((result is List) && (result.length == 2));
|
| - status = new MojoResult(result[0]);
|
| + status = result[0];
|
| return result[1];
|
| }
|
|
|
| ByteData beginRead([int bufferBytes = 0, int flags = 0]) {
|
| if (handle == null) {
|
| - status = MojoResult.INVALID_ARGUMENT;
|
| + status = MojoResult.kInvalidArgument;
|
| return null;
|
| }
|
|
|
| List result =
|
| MojoDataPipeNatives.MojoBeginReadData(handle.h, bufferBytes, flags);
|
| if (result == null) {
|
| - status = MojoResult.INVALID_ARGUMENT;
|
| + status = MojoResult.kInvalidArgument;
|
| return null;
|
| }
|
|
|
| assert((result is List) && (result.length == 2));
|
| - status = new MojoResult(result[0]);
|
| + status = result[0];
|
| return result[1];
|
| }
|
|
|
| - MojoResult endRead(int bytesRead) {
|
| + int endRead(int bytesRead) {
|
| if (handle == null) {
|
| - status = MojoResult.INVALID_ARGUMENT;
|
| + status = MojoResult.kInvalidArgument;
|
| return status;
|
| }
|
| int result = MojoDataPipeNatives.MojoEndReadData(handle.h, bytesRead);
|
| - status = new MojoResult(result);
|
| + status = result;
|
| return status;
|
| }
|
|
|
| int query() => read(null, 0, FLAG_QUERY);
|
|
|
| - String toString() => "MojoDataPipeConsumer("
|
| - "handle: $handle, status: $status, available: ${query()})";
|
| + String toString() => "MojoDataPipeConsumer(handle: $handle, "
|
| + "status: ${MojoResult.string(status)}, "
|
| + "available: ${query()})";
|
| }
|
|
|
| class MojoDataPipe {
|
| @@ -138,16 +140,14 @@ class MojoDataPipe {
|
|
|
| MojoDataPipeProducer producer;
|
| MojoDataPipeConsumer consumer;
|
| - MojoResult status;
|
| + int status;
|
|
|
| - MojoDataPipe._internal() {
|
| - producer = null;
|
| - consumer = null;
|
| - status = MojoResult.OK;
|
| - }
|
| + MojoDataPipe._internal() : status = MojoResult.kOk;
|
|
|
| - factory MojoDataPipe([int elementBytes = DEFAULT_ELEMENT_SIZE,
|
| - int capacityBytes = DEFAULT_CAPACITY, int flags = FLAG_NONE]) {
|
| + factory MojoDataPipe(
|
| + [int elementBytes = DEFAULT_ELEMENT_SIZE,
|
| + int capacityBytes = DEFAULT_CAPACITY,
|
| + int flags = FLAG_NONE]) {
|
| List result = MojoDataPipeNatives.MojoCreateDataPipe(
|
| elementBytes, capacityBytes, flags);
|
| if (result == null) {
|
| @@ -157,11 +157,11 @@ class MojoDataPipe {
|
| MojoHandle producerHandle = new MojoHandle(result[1]);
|
| MojoHandle consumerHandle = new MojoHandle(result[2]);
|
| MojoDataPipe pipe = new MojoDataPipe._internal();
|
| - pipe.producer = new MojoDataPipeProducer(
|
| - producerHandle, new MojoResult(result[0]), elementBytes);
|
| - pipe.consumer = new MojoDataPipeConsumer(
|
| - consumerHandle, new MojoResult(result[0]), elementBytes);
|
| - pipe.status = new MojoResult(result[0]);
|
| + pipe.producer =
|
| + new MojoDataPipeProducer(producerHandle, result[0], elementBytes);
|
| + pipe.consumer =
|
| + new MojoDataPipeConsumer(consumerHandle, result[0], elementBytes);
|
| + pipe.status = result[0];
|
| return pipe;
|
| }
|
| }
|
|
|