org.chromium.sdk/src/org/chromium/sdk/internal/DataWithRef.java
changeset 2 e4420d2515f1
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/org.chromium.sdk/src/org/chromium/sdk/internal/DataWithRef.java	Wed Dec 23 17:13:18 2009 -0800
@@ -0,0 +1,36 @@
+package org.chromium.sdk.internal;
+
+import org.chromium.sdk.internal.protocol.data.RefWithDisplayData;
+import org.chromium.sdk.internal.protocol.data.SomeRef;
+
+public abstract class DataWithRef {
+  public abstract long ref();
+
+  /** @return data or null */
+  public abstract RefWithDisplayData getWithDisplayData();
+
+  public static DataWithRef fromSomeRef(final SomeRef someRef) {
+    return new DataWithRef() {
+      @Override
+      public RefWithDisplayData getWithDisplayData() {
+        return someRef.asWithDisplayData();
+      }
+      @Override
+      public long ref() {
+        return someRef.ref();
+      }
+    };
+  }
+  public static DataWithRef fromLong(final long ref) {
+    return new DataWithRef() {
+      @Override
+      public RefWithDisplayData getWithDisplayData() {
+        return null;
+      }
+      @Override
+      public long ref() {
+        return ref;
+      }
+    };
+  }
+}