X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.databoard%2Fsrc%2Forg%2Fsimantics%2Fdataboard%2Fbinding%2Fmutable%2FUnionTaggedObjectBinding.java;h=86ec44d4787e58bb743125a1982a53d658982125;hb=refs%2Fchanges%2F77%2F2777%2F2;hp=6dd4cdcd492cdd1ab14bba863e437125a2cd815e;hpb=969bd23cab98a79ca9101af33334000879fb60c5;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.databoard/src/org/simantics/databoard/binding/mutable/UnionTaggedObjectBinding.java b/bundles/org.simantics.databoard/src/org/simantics/databoard/binding/mutable/UnionTaggedObjectBinding.java index 6dd4cdcd4..86ec44d47 100644 --- a/bundles/org.simantics.databoard/src/org/simantics/databoard/binding/mutable/UnionTaggedObjectBinding.java +++ b/bundles/org.simantics.databoard/src/org/simantics/databoard/binding/mutable/UnionTaggedObjectBinding.java @@ -1,57 +1,57 @@ -package org.simantics.databoard.binding.mutable; - -import org.simantics.databoard.binding.Binding; -import org.simantics.databoard.binding.UnionBinding; -import org.simantics.databoard.binding.error.BindingException; -import org.simantics.databoard.type.UnionType; - -/** - * Binds UnionType to TaggedObject.class - * - * @author Toni Kalajainen - */ -public class UnionTaggedObjectBinding extends UnionBinding { - - public UnionTaggedObjectBinding(UnionType type, Binding[] componentBindings) - { - this.componentBindings = componentBindings; - if (type==null) throw new IllegalArgumentException("null arg"); - this.type = type; - } - - @Override - public Object create(int tag, Object value) { - TaggedObject result = new TaggedObject(); - result.tag = tag; - result.value = value; - return result; - } - - @Override - public void setValue(Object union, int tag, Object value) - throws BindingException { - TaggedObject result = (TaggedObject)union; - result.tag = tag; - result.value = value; - } - - @Override - public int getTag(Object obj) throws BindingException { - if (!isInstance(obj)) throw new BindingException("Unexpected class "+obj.getClass().getSimpleName()+", TaggedObject expected"); - TaggedObject to = (TaggedObject) obj; - return to.tag; - } - - @Override - public Object getValue(Object obj) throws BindingException { - if (!isInstance(obj)) throw new BindingException("Unexpected class "+obj.getClass().getSimpleName()+", TaggedObject expected"); - TaggedObject to = (TaggedObject) obj; - return to.value; - } - - @Override - public boolean isInstance(Object obj) { - return obj instanceof TaggedObject; - } - -} +package org.simantics.databoard.binding.mutable; + +import org.simantics.databoard.binding.Binding; +import org.simantics.databoard.binding.UnionBinding; +import org.simantics.databoard.binding.error.BindingException; +import org.simantics.databoard.type.UnionType; + +/** + * Binds UnionType to TaggedObject.class + * + * @author Toni Kalajainen + */ +public class UnionTaggedObjectBinding extends UnionBinding { + + public UnionTaggedObjectBinding(UnionType type, Binding[] componentBindings) + { + this.componentBindings = componentBindings; + if (type==null) throw new IllegalArgumentException("null arg"); + this.type = type; + } + + @Override + public Object create(int tag, Object value) { + TaggedObject result = new TaggedObject(); + result.tag = tag; + result.value = value; + return result; + } + + @Override + public void setValue(Object union, int tag, Object value) + throws BindingException { + TaggedObject result = (TaggedObject)union; + result.tag = tag; + result.value = value; + } + + @Override + public int getTag(Object obj) throws BindingException { + if (!isInstance(obj)) throw new BindingException("Unexpected class "+obj.getClass().getSimpleName()+", TaggedObject expected"); + TaggedObject to = (TaggedObject) obj; + return to.tag; + } + + @Override + public Object getValue(Object obj) throws BindingException { + if (!isInstance(obj)) throw new BindingException("Unexpected class "+obj.getClass().getSimpleName()+", TaggedObject expected"); + TaggedObject to = (TaggedObject) obj; + return to.value; + } + + @Override + public boolean isInstance(Object obj) { + return obj instanceof TaggedObject; + } + +}