org.simantics.databoard.binding.impl
Class LongArrayBinding

java.lang.Object
  extended by org.simantics.databoard.binding.Binding
      extended by org.simantics.databoard.binding.ArrayBinding
          extended by org.simantics.databoard.binding.impl.LongArrayBinding
All Implemented Interfaces:
java.util.Comparator<java.lang.Object>

public final class LongArrayBinding
extends ArrayBinding

Binds Long[] type to long[] class.


Nested Class Summary
 
Nested classes/interfaces inherited from class org.simantics.databoard.binding.Binding
Binding.Visitor<T>, Binding.Visitor1
 
Field Summary
 
Fields inherited from class org.simantics.databoard.binding.ArrayBinding
componentBinding
 
Constructor Summary
LongArrayBinding(ArrayType type, Binding componentBinding)
           
 
Method Summary
 void add(java.lang.Object array, int index, java.lang.Object element)
           
 java.lang.Object create()
          Create a new empty array
 java.lang.Object create(int length, java.util.Iterator<java.lang.Object> values)
          Create new array instance with initial values possibly borrowed from an interator.
 java.lang.Object create(long[] array)
          Create an array object.
 java.lang.Object create(java.lang.Object[] values)
          Create Array with initial values possibly borrowed from an java.lang.Array
static LongArrayBinding createFrom(ArrayType type)
           
 int deepCompare(java.lang.Object o1, java.lang.Object o2, java.util.Set<IdentityPair<java.lang.Object,java.lang.Object>> compareHistory)
           
 int deepHashValue(java.lang.Object value, java.util.IdentityHashMap<java.lang.Object,java.lang.Object> hashedObjects)
          Calculate hash value
 java.lang.Object get(java.lang.Object array, int index)
           
 void getAll(java.lang.Object array, java.lang.Object[] result)
           
 long[] getArray(java.lang.Object array)
           
 boolean isImmutable()
          Returns true if array length can be modified.
 boolean isInstance(java.lang.Object obj)
           
 void readFrom(Binding srcBinding, java.lang.Object src, java.lang.Object dst)
          Read values from another object.
 void remove(java.lang.Object array, int index, int count)
           
 void set(java.lang.Object array, int index, java.lang.Object value)
           
 void setSize(java.lang.Object array, int newSize)
           
 int size(java.lang.Object array)
           
 
Methods inherited from class org.simantics.databoard.binding.ArrayBinding
accept, accept, add, assertInstaceIsValid, create, createUnchecked, getComponentBinding, remove, type
 
Methods inherited from class org.simantics.databoard.binding.Binding
assertInstaceIsValid, clone, cloneUnchecked, compare, createDefault, createDefaultUnchecked, createRandom, createRandomUnchecked, equals, hashValue, parseValue, parseValue, parseValueDefinition, printValue, printValueDefinition, serializer, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.util.Comparator
equals
 

Constructor Detail

LongArrayBinding

public LongArrayBinding(ArrayType type,
                        Binding componentBinding)
Method Detail

createFrom

public static LongArrayBinding createFrom(ArrayType type)

create

public java.lang.Object create()
Description copied from class: ArrayBinding
Create a new empty array

Specified by:
create in class ArrayBinding
Returns:
array object

create

public java.lang.Object create(int length,
                               java.util.Iterator<java.lang.Object> values)
Description copied from class: ArrayBinding
Create new array instance with initial values possibly borrowed from an interator.

The implementation iterate the iterator before returning.

Specified by:
create in class ArrayBinding
Parameters:
length - array length
values - value iterator
Returns:
new instance

readFrom

public void readFrom(Binding srcBinding,
                     java.lang.Object src,
                     java.lang.Object dst)
              throws BindingException
Description copied from class: Binding
Read values from another object.

Overrides:
readFrom in class ArrayBinding
dst - valid object of this binding
Throws:
BindingException

create

public java.lang.Object create(long[] array)
Create an array object. Note! The argument is consumed (is used in the result).

Parameters:
array -
Returns:
an object that contains the array

create

public java.lang.Object create(java.lang.Object[] values)
Description copied from class: ArrayBinding
Create Array with initial values possibly borrowed from an java.lang.Array

Specified by:
create in class ArrayBinding
Returns:
array of ArrayType

get

public java.lang.Object get(java.lang.Object array,
                            int index)
                     throws BindingException
Specified by:
get in class ArrayBinding
Throws:
BindingException

getAll

public void getAll(java.lang.Object array,
                   java.lang.Object[] result)
            throws BindingException
Specified by:
getAll in class ArrayBinding
Throws:
BindingException

set

public void set(java.lang.Object array,
                int index,
                java.lang.Object value)
         throws BindingException
Specified by:
set in class ArrayBinding
Throws:
BindingException

size

public int size(java.lang.Object array)
         throws BindingException
Specified by:
size in class ArrayBinding
Throws:
BindingException

isInstance

public boolean isInstance(java.lang.Object obj)
Specified by:
isInstance in class Binding

isImmutable

public boolean isImmutable()
Description copied from class: ArrayBinding
Returns true if array length can be modified.

Overrides:
isImmutable in class ArrayBinding
Returns:
true if array length can be modified, false if not

getArray

public long[] getArray(java.lang.Object array)
                throws BindingException
Throws:
BindingException

deepHashValue

public int deepHashValue(java.lang.Object value,
                         java.util.IdentityHashMap<java.lang.Object,java.lang.Object> hashedObjects)
                  throws BindingException
Description copied from class: Binding
Calculate hash value

Overrides:
deepHashValue in class ArrayBinding
hashedObjects - collection of already hashed object or optionally null
Returns:
hash value
Throws:
BindingException

deepCompare

public int deepCompare(java.lang.Object o1,
                       java.lang.Object o2,
                       java.util.Set<IdentityPair<java.lang.Object,java.lang.Object>> compareHistory)
                throws BindingException
Overrides:
deepCompare in class ArrayBinding
Throws:
BindingException

add

public void add(java.lang.Object array,
                int index,
                java.lang.Object element)
         throws BindingException,
                java.lang.IndexOutOfBoundsException
Specified by:
add in class ArrayBinding
Throws:
BindingException
java.lang.IndexOutOfBoundsException

remove

public void remove(java.lang.Object array,
                   int index,
                   int count)
            throws BindingException
Specified by:
remove in class ArrayBinding
Throws:
BindingException

setSize

public void setSize(java.lang.Object array,
                    int newSize)
             throws BindingException
Specified by:
setSize in class ArrayBinding
Throws:
BindingException