summaryrefslogtreecommitdiff
path: root/db-4.8.30/examples_java/src/collections/ship/marshal/MarshalledKey.java
diff options
context:
space:
mode:
Diffstat (limited to 'db-4.8.30/examples_java/src/collections/ship/marshal/MarshalledKey.java')
-rw-r--r--db-4.8.30/examples_java/src/collections/ship/marshal/MarshalledKey.java36
1 files changed, 36 insertions, 0 deletions
diff --git a/db-4.8.30/examples_java/src/collections/ship/marshal/MarshalledKey.java b/db-4.8.30/examples_java/src/collections/ship/marshal/MarshalledKey.java
new file mode 100644
index 0000000..8e2d171
--- /dev/null
+++ b/db-4.8.30/examples_java/src/collections/ship/marshal/MarshalledKey.java
@@ -0,0 +1,36 @@
+/*-
+ * See the file LICENSE for redistribution information.
+ *
+ * Copyright (c) 2002-2009 Oracle. All rights reserved.
+ *
+ * $Id$
+ */
+
+package collections.ship.marshal;
+
+import com.sleepycat.bind.tuple.TupleInput;
+import com.sleepycat.bind.tuple.TupleOutput;
+
+/**
+ * MarshalledKey is implemented by key objects and called by {@link
+ * SampleViews.MarshalledKeyBinding}. In this sample, MarshalledKey is
+ * implemented by {@link PartKey}, {@link SupplierKey}, and {@link
+ * ShipmentKey}. This interface is package-protected rather than public to
+ * hide the marshalling interface from other users of the data objects. Note
+ * that a MarshalledKey must also have a no arguments constructor so
+ * that it can be instantiated by the binding.
+ *
+ * @author Mark Hayes
+ */
+interface MarshalledKey {
+
+ /**
+ * Construct the key tuple entry from the key object.
+ */
+ void marshalKey(TupleOutput keyOutput);
+
+ /**
+ * Construct the key object from the key tuple entry.
+ */
+ void unmarshalKey(TupleInput keyInput);
+}