Index: third_party/mojo/src/mojo/public/dart/src/message.dart |
diff --git a/third_party/mojo/src/mojo/public/dart/src/message.dart b/third_party/mojo/src/mojo/public/dart/src/message.dart |
index 918d2190ed046c1cf72e4cfcfb605a4ab7196269..9c7cf463112af41ceade6e7a837947d3756109a1 100644 |
--- a/third_party/mojo/src/mojo/public/dart/src/message.dart |
+++ b/third_party/mojo/src/mojo/public/dart/src/message.dart |
@@ -6,16 +6,20 @@ part of bindings; |
class MessageHeader { |
static const int kSimpleMessageSize = 16; |
- static const int kSimpleMessageNumFields = 2; |
+ // TODO(yzshen): In order to work with other bindings which still interprets |
+ // the |version| field as |num_fields|, set it to version 2 for now. |
+ static const int kSimpleMessageVersion = 2; |
static const int kMessageWithRequestIdSize = 24; |
- static const int kMessageWithRequestIdNumFields = 3; |
- static const int kMessageTypeOffset = DataHeader.kHeaderSize; |
+ // TODO(yzshen): In order to work with other bindings which still interprets |
+ // the |version| field as |num_fields|, set it to version 3 for now. |
+ static const int kMessageWithRequestIdVersion = 3; |
+ static const int kMessageTypeOffset = StructDataHeader.kHeaderSize; |
static const int kMessageFlagsOffset = kMessageTypeOffset + 4; |
static const int kMessageRequestIdOffset = kMessageFlagsOffset + 4; |
static const int kMessageExpectsResponse = 1 << 0; |
static const int kMessageIsResponse = 1 << 1; |
- DataHeader _header; |
+ StructDataHeader _header; |
int type; |
int flags; |
int requestId; |
@@ -24,17 +28,17 @@ class MessageHeader { |
(flags & (kMessageExpectsResponse | kMessageIsResponse)) != 0; |
MessageHeader(this.type) : |
- _header = new DataHeader(kSimpleMessageSize, kSimpleMessageNumFields), |
+ _header = new StructDataHeader(kSimpleMessageSize, kSimpleMessageVersion), |
flags = 0, |
requestId = 0; |
MessageHeader.withRequestId(this.type, this.flags, this.requestId) : |
- _header = new DataHeader( |
- kMessageWithRequestIdSize, kMessageWithRequestIdNumFields); |
+ _header = new StructDataHeader( |
+ kMessageWithRequestIdSize, kMessageWithRequestIdVersion); |
MessageHeader.fromMessage(Message message) { |
var decoder = new Decoder(message); |
- _header = decoder.decodeDataHeader(); |
+ _header = decoder.decodeStructDataHeader(); |
if (_header.size < kSimpleMessageSize) { |
throw new MojoCodecError( |
'Incorrect message size. Got: ${_header.size} ' |
@@ -58,7 +62,7 @@ class MessageHeader { |
bool get hasRequestId => mustHaveRequestId(flags); |
void encode(Encoder encoder) { |
- encoder.encodeDataHeader(_header); |
+ encoder.encodeStructDataHeader(_header); |
encoder.encodeUint32(type, kMessageTypeOffset); |
encoder.encodeUint32(flags, kMessageFlagsOffset); |
if (hasRequestId) { |
@@ -76,25 +80,25 @@ class MessageHeader { |
bool validateHeader(int expectedType, int expectedFlags) => |
(type == expectedType) && validateHeaderFlags(expectedFlags); |
- static void _validateDataHeader(DataHeader dataHeader) { |
- if (dataHeader.numFields < kSimpleMessageNumFields) { |
- throw 'Incorrect number of fields, expecting at least ' |
- '$kSimpleMessageNumFields, but got: ${dataHeader.numFields}.'; |
+ static void _validateDataHeader(StructDataHeader dataHeader) { |
+ if (dataHeader.version < kSimpleMessageVersion) { |
+ throw 'Incorrect version, expecting at least ' |
+ '$kSimpleMessageVersion, but got: ${dataHeader.version}.'; |
} |
if (dataHeader.size < kSimpleMessageSize) { |
throw 'Incorrect message size, expecting at least $kSimpleMessageSize, ' |
'but got: ${dataHeader.size}'; |
} |
- if ((dataHeader.numFields == kSimpleMessageSize) && |
+ if ((dataHeader.version == kSimpleMessageVersion) && |
(dataHeader.size != kSimpleMessageSize)) { |
- throw 'Incorrect message size for a message with $kSimpleMessageNumFields' |
- ' fields, expecting $kSimpleMessageSize, ' |
+ throw 'Incorrect message size for a message of version ' |
+ '$kSimpleMessageVersion, expecting $kSimpleMessageSize, ' |
'but got ${dataHeader.size}'; |
} |
- if ((dataHeader.numFields == kMessageWithRequestIdNumFields) && |
+ if ((dataHeader.version == kMessageWithRequestIdVersion) && |
(dataHeader.size != kMessageWithRequestIdSize)) { |
- throw 'Incorrect message size for a message with ' |
- '$kMessageWithRequestIdNumFields fields, expecting ' |
+ throw 'Incorrect message size for a message of version ' |
+ '$kMessageWithRequestIdVersion, expecting ' |
'$kMessageWithRequestIdSize, but got ${dataHeader.size}'; |
} |
} |