aboutsummaryrefslogtreecommitdiff
path: root/mojo/public/java/bindings/src/org/chromium/mojo/bindings/Struct.java
diff options
context:
space:
mode:
Diffstat (limited to 'mojo/public/java/bindings/src/org/chromium/mojo/bindings/Struct.java')
-rw-r--r--mojo/public/java/bindings/src/org/chromium/mojo/bindings/Struct.java88
1 files changed, 0 insertions, 88 deletions
diff --git a/mojo/public/java/bindings/src/org/chromium/mojo/bindings/Struct.java b/mojo/public/java/bindings/src/org/chromium/mojo/bindings/Struct.java
deleted file mode 100644
index 14f4e1e..0000000
--- a/mojo/public/java/bindings/src/org/chromium/mojo/bindings/Struct.java
+++ /dev/null
@@ -1,88 +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.
-
-package org.chromium.mojo.bindings;
-
-import org.chromium.mojo.system.Core;
-
-import java.nio.ByteBuffer;
-
-/**
- * Base class for all mojo structs.
- */
-public abstract class Struct {
- /**
- * The base size of the encoded struct.
- */
- private final int mEncodedBaseSize;
-
- /**
- * The version of the struct.
- */
- private final int mVersion;
-
- /**
- * Constructor.
- */
- protected Struct(int encodedBaseSize, int version) {
- mEncodedBaseSize = encodedBaseSize;
- mVersion = version;
- }
-
- /**
- * Returns the version of the struct. It is the max version of the struct in the mojom if it has
- * been created locally, and the version of the received struct if it has been deserialized.
- */
- public int getVersion() {
- return mVersion;
- }
-
- /**
- * Returns the serialization of the struct. This method can close Handles.
- *
- * @param core the |Core| implementation used to generate handles. Only used if the data
- * structure being encoded contains interfaces, can be |null| otherwise.
- */
- public Message serialize(Core core) {
- Encoder encoder = new Encoder(core, mEncodedBaseSize);
- encode(encoder);
- return encoder.getMessage();
- }
-
- /**
- * Similar to the method above, but returns the serialization result as |ByteBuffer|.
- *
- * @throws UnsupportedOperationException if the struct contains interfaces or handles.
- * @throws SerializationException on serialization failure.
- */
- public ByteBuffer serialize() {
- // If the struct contains interfaces which require a non-null |Core| instance, it will throw
- // UnsupportedOperationException.
- Message message = serialize(null);
-
- if (!message.getHandles().isEmpty())
- throw new UnsupportedOperationException("Handles are discarded.");
-
- return message.getData();
- }
-
- /**
- * Returns the serialization of the struct prepended with the given header.
- *
- * @param header the header to prepend to the returned message.
- * @param core the |Core| implementation used to generate handles. Only used if the |Struct|
- * being encoded contains interfaces, can be |null| otherwise.
- */
- public ServiceMessage serializeWithHeader(Core core, MessageHeader header) {
- Encoder encoder = new Encoder(core, mEncodedBaseSize + header.getSize());
- header.encode(encoder);
- encode(encoder);
- return new ServiceMessage(encoder.getMessage(), header);
- }
-
- /**
- * Use the given encoder to serialize this data structure.
- */
- protected abstract void encode(Encoder encoder);
-}