X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.databoard%2Fscratch%2Forg%2Fsimantics%2Fdataboard%2Ftests%2FJotakin18.java;h=ad40439c820ab6a3b3608e00524a7c3c470a4c0a;hb=refs%2Fchanges%2F38%2F238%2F2;hp=20502f0dbc14d6ae2330055a1f6cbec093a3711e;hpb=969bd23cab98a79ca9101af33334000879fb60c5;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.databoard/scratch/org/simantics/databoard/tests/Jotakin18.java b/bundles/org.simantics.databoard/scratch/org/simantics/databoard/tests/Jotakin18.java index 20502f0db..ad40439c8 100644 --- a/bundles/org.simantics.databoard/scratch/org/simantics/databoard/tests/Jotakin18.java +++ b/bundles/org.simantics.databoard/scratch/org/simantics/databoard/tests/Jotakin18.java @@ -1,139 +1,139 @@ -package org.simantics.databoard.tests; - -import java.io.IOException; - -import org.simantics.databoard.Bindings; -import org.simantics.databoard.Datatypes; -import org.simantics.databoard.binding.Binding; -import org.simantics.databoard.binding.LongBinding; -import org.simantics.databoard.binding.error.BindingConstructionException; -import org.simantics.databoard.binding.error.BindingException; -import org.simantics.databoard.binding.reflection.BindingRequest; -import org.simantics.databoard.binding.reflection.BindingProvider; -import org.simantics.databoard.binding.reflection.ClassBindingFactory; -import org.simantics.databoard.serialization.Serializer; -import org.simantics.databoard.serialization.SerializerConstructionException; - -public class Jotakin18 { - - public static class MyLongBindingFactory implements BindingProvider { - - MyLongBinding myLongBinding = new MyLongBinding(); - - public Binding provideBinding(ClassBindingFactory master, BindingRequest request) throws BindingConstructionException { - if (MyLong.class.isAssignableFrom( request.getClazz() )) { - return myLongBinding; - } - - return null; - } - - } - - public static class MyLongBinding extends LongBinding { - - public MyLongBinding() { - super(Datatypes.LONG); - } - - @Override - public Object create(long value) throws BindingException { - MyLong x = new MyLong(); - x.setValue(value); - return x; - } - - @Override - public Object create(Long value) throws BindingException { - MyLong x = new MyLong(); - x.setValue(value); - return x; - } - - @Override - public Object create(Number value) throws BindingException { - MyLong x = new MyLong(); - x.setValue(value.longValue()); - return x; - } - - @Override - public Object create(String value) throws BindingException { - MyLong x = new MyLong(); - x.setValue(Long.valueOf(value)); - return x; - } - - @Override - public Long getValue(Object o) throws BindingException { - MyLong x = (MyLong) o; - return x.getValue(); - } - - @Override - public long getValue_(Object o) throws BindingException { - MyLong x = (MyLong) o; - return x.getValue(); - } - - @Override - public void setValue(Object obj, Number value) throws BindingException { - throw new BindingException("Resource is immutable"); - } - - @Override - public void setValue(Object obj, long value) throws BindingException { - throw new BindingException("Resource is immutable"); - } - - @Override - public boolean isImmutable() { - return true; - } - - @Override - public boolean isInstance(Object obj) { - return obj instanceof MyLong; - } - } - - public static class XXX { - - public MyLong x; - public long z; - private long y; - - public long getY() { - return y; - } - public void setY(long y) { - this.y = y; - } - } - - public static class MyLong { - private long value; - public long getValue() { - return value; - } - public void setValue(long value) { - this.value = value; - } - } - - public static void main(String[] args) throws SerializerConstructionException, BindingConstructionException, IOException { - - Bindings.databoard.addBindingFactory( new MyLongBindingFactory() ); - - XXX x = new XXX(); - x.x = new MyLong(); - - Binding b = Bindings.databoard.getBinding(XXX.class); - Serializer s = Bindings.getSerializer(b); - - byte[] data = s.serialize(x); - s.deserialize(data); - - } - -} +package org.simantics.databoard.tests; + +import java.io.IOException; + +import org.simantics.databoard.Bindings; +import org.simantics.databoard.Datatypes; +import org.simantics.databoard.binding.Binding; +import org.simantics.databoard.binding.LongBinding; +import org.simantics.databoard.binding.error.BindingConstructionException; +import org.simantics.databoard.binding.error.BindingException; +import org.simantics.databoard.binding.reflection.BindingRequest; +import org.simantics.databoard.binding.reflection.BindingProvider; +import org.simantics.databoard.binding.reflection.ClassBindingFactory; +import org.simantics.databoard.serialization.Serializer; +import org.simantics.databoard.serialization.SerializerConstructionException; + +public class Jotakin18 { + + public static class MyLongBindingFactory implements BindingProvider { + + MyLongBinding myLongBinding = new MyLongBinding(); + + public Binding provideBinding(ClassBindingFactory master, BindingRequest request) throws BindingConstructionException { + if (MyLong.class.isAssignableFrom( request.getClazz() )) { + return myLongBinding; + } + + return null; + } + + } + + public static class MyLongBinding extends LongBinding { + + public MyLongBinding() { + super(Datatypes.LONG); + } + + @Override + public Object create(long value) throws BindingException { + MyLong x = new MyLong(); + x.setValue(value); + return x; + } + + @Override + public Object create(Long value) throws BindingException { + MyLong x = new MyLong(); + x.setValue(value); + return x; + } + + @Override + public Object create(Number value) throws BindingException { + MyLong x = new MyLong(); + x.setValue(value.longValue()); + return x; + } + + @Override + public Object create(String value) throws BindingException { + MyLong x = new MyLong(); + x.setValue(Long.valueOf(value)); + return x; + } + + @Override + public Long getValue(Object o) throws BindingException { + MyLong x = (MyLong) o; + return x.getValue(); + } + + @Override + public long getValue_(Object o) throws BindingException { + MyLong x = (MyLong) o; + return x.getValue(); + } + + @Override + public void setValue(Object obj, Number value) throws BindingException { + throw new BindingException("Resource is immutable"); + } + + @Override + public void setValue(Object obj, long value) throws BindingException { + throw new BindingException("Resource is immutable"); + } + + @Override + public boolean isImmutable() { + return true; + } + + @Override + public boolean isInstance(Object obj) { + return obj instanceof MyLong; + } + } + + public static class XXX { + + public MyLong x; + public long z; + private long y; + + public long getY() { + return y; + } + public void setY(long y) { + this.y = y; + } + } + + public static class MyLong { + private long value; + public long getValue() { + return value; + } + public void setValue(long value) { + this.value = value; + } + } + + public static void main(String[] args) throws SerializerConstructionException, BindingConstructionException, IOException { + + Bindings.databoard.addBindingFactory( new MyLongBindingFactory() ); + + XXX x = new XXX(); + x.x = new MyLong(); + + Binding b = Bindings.databoard.getBinding(XXX.class); + Serializer s = Bindings.getSerializer(b); + + byte[] data = s.serialize(x); + s.deserialize(data); + + } + +}