org.simantics.databoard.binding.impl
Class ArrayListBinding

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

public class ArrayListBinding
extends ArrayBinding

CollectionListBinding binds ArrayType to java.util.List and instantiates java.util.ArrayList.

Author:
Toni Kalajainen

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
ArrayListBinding(ArrayType type, Binding componentBinding)
           
ArrayListBinding(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(java.util.Collection<java.lang.Object> collection)
          Create a new array with initial values copied or referred from a collection.
 java.lang.Object create(int length, java.util.Iterator<java.lang.Object> values)
          Create new ArrayList
 java.lang.Object create(java.lang.Object[] values)
          Create Array with initial values possibly borrowed from an java.lang.Array
 java.lang.Object get(java.lang.Object array, int index)
           
 void getAll(java.lang.Object array, java.lang.Object[] result)
           
 boolean isImmutable()
          Returns true if array length can be modified.
 boolean isInstance(java.lang.Object obj)
           
 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, createUnchecked, deepCompare, deepHashValue, getComponentBinding, getComponentBinding, getComponentBinding, getComponentCount, readFrom, 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

ArrayListBinding

public ArrayListBinding(Binding componentBinding)

ArrayListBinding

public ArrayListBinding(ArrayType type,
                        Binding componentBinding)
Method Detail

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(java.util.Collection<java.lang.Object> collection)
                        throws BindingException
Description copied from class: ArrayBinding
Create a new array with initial values copied or referred from a collection.

Overrides:
create in class ArrayBinding
Returns:
array object
Throws:
BindingException

create

public java.lang.Object create(int length,
                               java.util.Iterator<java.lang.Object> values)
Create new ArrayList

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

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

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

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

setSize

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

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