org.simantics.databoard.binding.impl
Class PriorityQueueBinding

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

public class PriorityQueueBinding
extends ArrayBinding

PriorityQueueBindings binds ArrayType to java.util.PriorityQueue

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
PriorityQueueBinding(ArrayType type, Binding componentBinding)
           
PriorityQueueBinding(Binding componentBinding)
           
 
Method Summary
 void add(java.lang.Object queue, 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 queue, int index)
           
 void getAll(java.lang.Object queue, java.lang.Object[] result)
           
 boolean isImmutable()
          Returns true if array length can be modified.
 boolean isInstance(java.lang.Object obj)
           
 boolean isResizable()
          Return true if the array's size can be adjusted and false if not
 void remove(java.lang.Object queue, int index, int count)
           
 void set(java.lang.Object array, int index, java.lang.Object value)
           
 void setSize(java.lang.Object queue, int newSize)
           
 int size(java.lang.Object queue)
           
 
Methods inherited from class org.simantics.databoard.binding.ArrayBinding
accept, accept, add, assertInstaceIsValid, create, 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, createRandom, createRandom, createRandomUnchecked, equals, hashValue, parseValue, parseValue, parseValueDefinition, printValue, printValueDefinition, readFromTry, readFromTryUnchecked, readFromUnchecked, serializer, toString, 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

PriorityQueueBinding

public PriorityQueueBinding(Binding componentBinding)

PriorityQueueBinding

public PriorityQueueBinding(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 queue,
                            int index)
                     throws BindingException
Specified by:
get in class ArrayBinding
Throws:
BindingException

getAll

public void getAll(java.lang.Object queue,
                   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 queue,
                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 queue,
                   int index,
                   int count)
            throws BindingException
Specified by:
remove in class ArrayBinding
Throws:
BindingException

size

public int size(java.lang.Object queue)
         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 queue,
                    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

isResizable

public boolean isResizable()
Description copied from class: ArrayBinding
Return true if the array's size can be adjusted and false if not

Specified by:
isResizable in class ArrayBinding
Returns:
true if array is resizable