]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.databoard/scratch/org/simantics/databoard/tests/Jotakin11.java
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.databoard / scratch / org / simantics / databoard / tests / Jotakin11.java
diff --git a/bundles/org.simantics.databoard/scratch/org/simantics/databoard/tests/Jotakin11.java b/bundles/org.simantics.databoard/scratch/org/simantics/databoard/tests/Jotakin11.java
new file mode 100644 (file)
index 0000000..b037ba0
--- /dev/null
@@ -0,0 +1,40 @@
+package org.simantics.databoard.tests;\r
+\r
+import org.simantics.databoard.Bindings;\r
+import org.simantics.databoard.annotations.Referable;\r
+import org.simantics.databoard.binding.Binding;\r
+import org.simantics.databoard.serialization.Serializer;\r
+\r
+public class Jotakin11 {\r
+\r
+       static @Referable class Node {\r
+               public int id;\r
+               public Node[] reference;\r
+               public Node(int id, Node...reference) {\r
+                       this.id = id;\r
+                       this.reference = reference;\r
+               }\r
+               \r
+       }\r
+       \r
+       public static void main(String[] args) throws Exception {\r
+               \r
+               Node a = new Node(0);\r
+               Node b = new Node(1);\r
+               Node c = new Node(2);\r
+               a.reference = new Node[] {b, c};\r
+               b.reference = new Node[] {a};\r
+               c.reference = new Node[] {c};\r
+               \r
+               Binding binding = Bindings.getBinding( Node.class );\r
+               Serializer s = Bindings.getSerializer(binding);\r
+               byte[] data = s.serialize(a);\r
+               \r
+               System.out.println(s.getSize(c) + " bytes");\r
+               \r
+               Node d = (Node) s.deserialize( data );\r
+               System.out.println( binding.toString(d) );\r
+               \r
+       }\r
+       \r
+}\r