| Index: mojo/public/java/bindings/src/org/chromium/mojo/bindings/ServiceMessage.java
|
| diff --git a/mojo/public/java/bindings/src/org/chromium/mojo/bindings/MessageWithHeader.java b/mojo/public/java/bindings/src/org/chromium/mojo/bindings/ServiceMessage.java
|
| similarity index 63%
|
| rename from mojo/public/java/bindings/src/org/chromium/mojo/bindings/MessageWithHeader.java
|
| rename to mojo/public/java/bindings/src/org/chromium/mojo/bindings/ServiceMessage.java
|
| index 9d602eab4700500519b5887b07b95531dcc11cac..ac62bf686a1971358bb387341cd700690e2c90de 100644
|
| --- a/mojo/public/java/bindings/src/org/chromium/mojo/bindings/MessageWithHeader.java
|
| +++ b/mojo/public/java/bindings/src/org/chromium/mojo/bindings/ServiceMessage.java
|
| @@ -4,19 +4,15 @@
|
|
|
| package org.chromium.mojo.bindings;
|
|
|
| -import org.chromium.mojo.system.Handle;
|
| -
|
| import java.nio.ByteBuffer;
|
| import java.nio.ByteOrder;
|
| -import java.util.List;
|
|
|
| /**
|
| * Represents a {@link Message} which contains a {@link MessageHeader}. Deals with parsing the
|
| * {@link MessageHeader} for a message.
|
| */
|
| -public class MessageWithHeader implements Message {
|
| +public class ServiceMessage extends Message {
|
|
|
| - private final Message mBaseMessage;
|
| private final MessageHeader mHeader;
|
| private Message mPayload;
|
|
|
| @@ -24,9 +20,9 @@ public class MessageWithHeader implements Message {
|
| * Reinterpret the given |message| as a message with the given |header|. The |message| must
|
| * contain the |header| as the start of its raw data.
|
| */
|
| - public MessageWithHeader(Message baseMessage, MessageHeader header) {
|
| + public ServiceMessage(Message baseMessage, MessageHeader header) {
|
| + super(baseMessage.getData(), baseMessage.getHandles());
|
| assert header.equals(new org.chromium.mojo.bindings.MessageHeader(baseMessage));
|
| - this.mBaseMessage = baseMessage;
|
| this.mHeader = header;
|
| }
|
|
|
| @@ -34,31 +30,15 @@ public class MessageWithHeader implements Message {
|
| * Reinterpret the given |message| as a message with a header. The |message| must contain a
|
| * header as the start of it's raw data, which will be parsed by this constructor.
|
| */
|
| - MessageWithHeader(Message baseMessage) {
|
| + ServiceMessage(Message baseMessage) {
|
| this(baseMessage, new org.chromium.mojo.bindings.MessageHeader(baseMessage));
|
| }
|
|
|
| /**
|
| - * @see Message#getData()
|
| - */
|
| - @Override
|
| - public ByteBuffer getData() {
|
| - return mBaseMessage.getData();
|
| - }
|
| -
|
| - /**
|
| - * @see Message#getHandles()
|
| - */
|
| - @Override
|
| - public List<? extends Handle> getHandles() {
|
| - return mBaseMessage.getHandles();
|
| - }
|
| -
|
| - /**
|
| - * @see Message#asMojoMessage()
|
| + * @see Message#asServiceMessage()
|
| */
|
| @Override
|
| - public MessageWithHeader asMojoMessage() {
|
| + public ServiceMessage asServiceMessage() {
|
| return this;
|
| }
|
|
|
| @@ -75,10 +55,10 @@ public class MessageWithHeader implements Message {
|
| */
|
| public Message getPayload() {
|
| if (mPayload == null) {
|
| - ByteBuffer truncatedBuffer = ((ByteBuffer) mBaseMessage.getData().position(
|
| - getHeader().getSize())).slice();
|
| + ByteBuffer truncatedBuffer =
|
| + ((ByteBuffer) getData().position(getHeader().getSize())).slice();
|
| truncatedBuffer.order(ByteOrder.nativeOrder());
|
| - mPayload = new SimpleMessage(truncatedBuffer, mBaseMessage.getHandles());
|
| + mPayload = new Message(truncatedBuffer, getHandles());
|
| }
|
| return mPayload;
|
| }
|
| @@ -87,7 +67,7 @@ public class MessageWithHeader implements Message {
|
| * Set the request identifier on the message.
|
| */
|
| void setRequestId(long requestId) {
|
| - mHeader.setRequestId(mBaseMessage.getData(), requestId);
|
| + mHeader.setRequestId(getData(), requestId);
|
| }
|
|
|
| }
|
|
|