Data Request Broker
2-3-release

fr.gael.drb.value
Class DefaultValueArray

java.lang.Object
  extended by fr.gael.drb.value.AbstractValueArray
      extended by fr.gael.drb.value.DefaultValueArray
All Implemented Interfaces:
DrbItem, DrbSequence, Comparison, Value, ValueArray, Serializable

public class DefaultValueArray
extends AbstractValueArray

Generic array value wrapper.

See Also:
Serialized Form

Field Summary
 
Fields inherited from interface fr.gael.drb.value.Value
ARRAY_ID, BINARY_ID, BINARY_INTEGER_ID, BOOLEAN_ID, BYTE_ID, DATE_ID, DATE_TIME_ID, DAY_ID, DAY_TIME_DURATION_ID, DECIMAL_ID, DOUBLE_ID, DURATION_ID, FLOAT_ID, INT_ID, INTEGER_ID, LONG_ID, MONTH_DAY_ID, MONTH_ID, NULL_ID, NUMERIC_ID, OTHER_ID, SHORT_ID, STRING_ID, TIME_ID, UNKNOWN_ID, UNSIGNED_BYTE_ID, UNSIGNED_INT_ID, UNSIGNED_LONG_ID, UNSIGNED_SHORT_ID, YEAR_ID, YEAR_MONTH_DURATION_ID, YEAR_MONTH_ID
 
Fields inherited from interface fr.gael.drb.DrbItem
ATTRIBUTE_ITEM, NODE_ITEM, UNDEFINED_ITEM, VALUE_ITEM
 
Constructor Summary
DefaultValueArray(int size)
          Build an BooleanArray value with the specified size.
 
Method Summary
 void assign(int index, Value element)
          Assign a value to an index
 void assign(Value v)
          Assign a value.
 Value convertTo(int type)
          Convert the value into the specified type.
 int getArrayType()
          Returns the Array type
 Value getElement(int index)
          Returns the Element value at the specified index
 int getItemType()
          A code that identifies the value items.
 String getName()
          Name of the item.
 String getNamespaceURI()
          Get namespace URI.
 int getPriority()
          Returns the BooleanArray priority
 int getType()
          The type identifier of this BooleanArray value.
 Value getValue()
          The value of the item.
 int length()
          Returns the number of elements in this array.
 void rename(String name)
          Changes the name of the item.
 void setNamespaceURI(String namespace_uri)
          Sets a namespace resource identifier.
 Value setValue(Value value)
          Changes the value of the item.
 Numeric toNumeric()
          Convert the value into the numeric type.
 String toString()
          Returns the string representation of this array
 
Methods inherited from class fr.gael.drb.value.AbstractValueArray
addItem, atomize, compareTo, convertArrayTo, getItem, getLength, main, removeItem
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface fr.gael.drb.DrbItem
getItemType, getName, getNamespaceURI, getValue, rename, setNamespaceURI, setValue
 

Constructor Detail

DefaultValueArray

public DefaultValueArray(int size)
Build an BooleanArray value with the specified size.

Parameters:
size - the size of the array.
Method Detail

toString

public String toString()
Returns the string representation of this array

Overrides:
toString in class Object
Returns:
the sequence as a string

getType

public final int getType()
The type identifier of this BooleanArray value.

Specified by:
getType in interface Value
Returns:
an identifier of the array type, namely ARRAY_ID

getPriority

public final int getPriority()
Returns the BooleanArray priority

Returns:
the BooleanArray priority

convertTo

public final Value convertTo(int type)
                      throws ClassCastException
Convert the value into the specified type. The type must be ARRAY_ID or STRING_ID otherwise a ClassCastException is thrown

Specified by:
convertTo in interface Value
Overrides:
convertTo in class AbstractValueArray
Parameters:
type - The target type.
Returns:
The converted value.
Throws:
ClassCastException - the conversion is impossible

assign

public final void assign(Value v)
                  throws ClassCastException
Assign a value. This value must be a NumericArray otherwise a ClassCastException is thrown.

Parameters:
v - the value to be assigned.
Throws:
ClassCastException - the conversion is impossible

getArrayType

public final int getArrayType()
Returns the Array type

Returns:
the array type as an int

getElement

public final Value getElement(int index)
Returns the Element value at the specified index

Parameters:
index - the index position
Returns:
the value at this index

assign

public final void assign(int index,
                         Value element)
Assign a value to an index

Parameters:
index - position where to insert the value.
element - value to assign as a double.

length

public final int length()
Returns the number of elements in this array.

Returns:
the number of elements in this array.

getItemType

public int getItemType()
A code that identifies the value items.

Specified by:
getItemType in interface DrbItem
Returns:
The code of value items.

getName

public String getName()
Name of the item. This method always returns null.

Specified by:
getName in interface DrbItem
Returns:
null

rename

public void rename(String name)
            throws NullPointerException,
                   UnsupportedOperationException
Changes the name of the item. This method always throw an UnsupportedOperationException.

Specified by:
rename in interface DrbItem
Parameters:
name - Reference to the new name.
Throws:
UnsupportedOperationException - This exception always raised because the name property is not defined for values.
NullPointerException - This exception is overriden by an UnsupportedOperationException.

getNamespaceURI

public String getNamespaceURI()
Get namespace URI. This method always returns null.

Specified by:
getNamespaceURI in interface DrbItem
Returns:
null.

setNamespaceURI

public void setNamespaceURI(String namespace_uri)
                     throws NullPointerException,
                            UnsupportedOperationException
Sets a namespace resource identifier. This method always throw an UnsupportedOperationException.

Specified by:
setNamespaceURI in interface DrbItem
Parameters:
namespace_uri - A reference to the new namespace identifier.
Throws:
UnsupportedOperationException - This exception always raised because the name property is not defined for values.
NullPointerException - This exception is overriden by an UnsupportedOperationException.

getValue

public Value getValue()
The value of the item. The value is expressed according to one of the types supported by the fr.gael.drb.value package. Generally these types correspond to primitive types (e.g. integer, floatting points, etc.) or very low level types (e.g. string, date, etc.). On the contrary to DOM implementation all the types are allowed even the arrays, date etc. Only the Value.NULL_ID type is forbidden.

Specified by:
getValue in interface DrbItem
Returns:
The value of the attribute.

setValue

public Value setValue(Value value)
               throws NullPointerException,
                      ClassCastException,
                      UnsupportedOperationException
Changes the value of the item. This operation sets a new value of the current item.The value type of the item shall be compatible with the item implementation. If the type does not match exactly it is casted to a compatible one based on the the fr.gael.drb.value capabilities. A reference to the effectivelly assigned value is returned by the operation so it is possible to check if a cast has been performed and therefore assess the accuracy of the assignement. If the cast is not possible the operation raises an UnsupportedOperationException. If the assignment is possible and the item implementation has a physical representation the value is updated in the physical source in order to persist among sessions. It therefore possible that this operation consumses an variable time.

Specified by:
setValue in interface DrbItem
Parameters:
value - The new value of the node. This value shall not be null.
Returns:
The effectivelly assigned value. The type of this value may differ from the input one.
Throws:
NullPointerException - This exception is raised when the passed reference to the value is null. This exception may be overriden by an UnsupportedOperationException.
ClassCastException - This exception is raised when the implementation has not succeeded to cast the input value in a type compatible with the current node.
UnsupportedOperationException - This exception is raised when the implementation does not support the requested assignment for any reason.

toNumeric

public Numeric toNumeric()
                  throws ClassCastException
Convert the value into the numeric type. In case of identity conversion the value itself should be returned. If the conversion is not allowed a ClassCastException is thrown.

Returns:
The converted value.
Throws:
ClassCastException - is the convertion is impossible

Data Request Broker - DRB API®
2-3-release

Copyright© 2001-2009 GAEL Consultant. All rights reserved. Use is subject to license terms .