1 package org.simantics.databoard.serialization.impl;
\r
3 import java.io.DataInput;
\r
4 import java.io.DataOutput;
\r
5 import java.io.IOException;
\r
7 import org.simantics.databoard.binding.LongBinding;
\r
8 import org.simantics.databoard.binding.error.BindingException;
\r
9 import org.simantics.databoard.serialization.Serializer.NonRecursiveSerializer;
\r
11 public class LongSerializer extends NonRecursiveSerializer {
\r
13 LongBinding binding;
\r
15 public LongSerializer(LongBinding binding) {this.binding = binding;}
\r
18 public Object deserialize(DataInput in) throws IOException{
\r
20 long value = in.readLong();
\r
21 return binding.create(value);
\r
22 } catch (BindingException e) {
\r
23 throw new IOException( e );
\r
28 public void deserializeTo(DataInput in, Object obj) throws IOException {
\r
30 binding.setValue(obj, in.readLong());
\r
31 } catch (BindingException e) {
\r
32 throw new IOException( e );
\r
37 public void skip(DataInput in)
\r
38 throws IOException {
\r
43 public void serialize(DataOutput out, Object obj) throws IOException {
\r
45 long value = binding.getValue_(obj);
\r
46 out.writeLong( value );
\r
47 } catch (BindingException e) {
\r
48 throw new IOException( e );
\r
53 public Integer getConstantSize() {
\r
58 public int getSize(Object obj) {
\r
63 public int getMinSize() {
\r
67 public long getLong(DataInput in) throws IOException
\r
69 return in.readLong();
\r
72 public void putLong(DataOutput out, long x) throws IOException
\r