X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.databoard%2Fscratch%2Forg%2Fsimantics%2Fdataboard%2Ftests%2FJotakin12.java;fp=bundles%2Forg.simantics.databoard%2Fscratch%2Forg%2Fsimantics%2Fdataboard%2Ftests%2FJotakin12.java;h=42edcd040aa1a69d38272d5017c9b96ae66e6b60;hb=969bd23cab98a79ca9101af33334000879fb60c5;hp=0000000000000000000000000000000000000000;hpb=866dba5cd5a3929bbeae85991796acb212338a08;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.databoard/scratch/org/simantics/databoard/tests/Jotakin12.java b/bundles/org.simantics.databoard/scratch/org/simantics/databoard/tests/Jotakin12.java new file mode 100644 index 000000000..42edcd040 --- /dev/null +++ b/bundles/org.simantics.databoard/scratch/org/simantics/databoard/tests/Jotakin12.java @@ -0,0 +1,68 @@ +package org.simantics.databoard.tests; + +import java.awt.geom.Rectangle2D; +import java.io.File; + +import org.simantics.databoard.Accessors; +import org.simantics.databoard.Bindings; +import org.simantics.databoard.Datatypes; +import org.simantics.databoard.accessor.RecordAccessor; +import org.simantics.databoard.accessor.file.FileRecordAccessor; +import org.simantics.databoard.accessor.file.FileVariantAccessor; +import org.simantics.databoard.binding.Binding; +import org.simantics.databoard.serialization.Serializer; +import org.simantics.databoard.type.Datatype; +import org.simantics.databoard.type.RecordType; + +public class Jotakin12 { + + static class ClassNoArgConstructor { + private ClassNoArgConstructor() {} + } + + public static void main(String[] args) throws Exception { + + File file = File.createTempFile("tmp", ".dbb"); + + { + RecordType type = Datatypes.getDatatype( Rectangle2D.Double.class ); + FileRecordAccessor fa = Accessors.createFile( file, type ); + fa.setFieldValue(0, Bindings.DOUBLE, 5.0); + fa.close(); + } + + { + FileVariantAccessor fa = Accessors.openAccessor(file); + RecordAccessor ra = fa.getContentAccessor(); + Double x = (Double) ra.getFieldValue(0, Bindings.DOUBLE); + fa.close(); + System.out.println(x); + } + + { + Binding binding = Bindings.getBinding(Rectangle2D.Double.class); + Rectangle2D rect = new Rectangle2D.Double(0,0, 10, 10); + RecordAccessor ra = Accessors.getAccessor(binding, rect); + ra.setFieldValue(0, Bindings.DOUBLE, 5.0); + System.out.println( rect.getX() ); + } + + { + Datatype type = Datatypes.getDatatype( Rectangle2D.Double.class ); + Binding binding = Bindings.getBinding( Rectangle2D.Double.class ); + Serializer s = Bindings.getSerializer(binding); + Rectangle2D rect = new Rectangle2D.Double(0,0, 10, 10); + byte[] data = s.serialize(rect); + + // Open accessor to byte data + RecordAccessor ra = Accessors.getAccessor(data, type); + ra.setFieldValue(0, Bindings.DOUBLE, 5.0); + s.deserialize(data, rect); + System.out.println(rect.getX()); + } + + + + } + +}