Home about services products contact login
   com.smardec

J2Native

  j2native
com.smardec.j2native
Class ArrayArgument

java.lang.Object
|
+--com.smardec.j2native.Argument
|
+--com.smardec.j2native.ArrayArgument
All Implemented Interfaces:
ArrayType, java.lang.Cloneable

public class ArrayArgument
extends Argument
implements ArrayType

ArrayArgument class represents an array of primitive types such as array of bytes or array of integer values. All array items are instances of the same class


Field Summary
Fields inherited from class com.smardec.j2native.Argument
JAVA_SIDE, NATIVE_SIDE
Constructor Summary
ArrayArgument(Argument[] elements)
Constructs an array object taking a specified Argument array.
ArrayArgument(Argument sample, int arrayLength)
Constructs an array object of specified length.
ArrayArgument(java.lang.Class arrayType, int arrayLength)
Constructs an array of objects of a specified class and size.
Method Summary
void fromArgumentsArray(Argument[] arguments)
Sets array contents to the given values.
void fromBytesValue(byte[] bytes, int offset)
Restores itself from provided array of bytes.
Argument getElement(int index)
Returns an array item specified by an index.
int getElementsCount()
Returns the number of elements in the array.
int getLength()
Returns length in bytes.
protected boolean isFixedLength()
Identify if Argument is a fixed length variable.
protected void read(long handle, int offset)
Reads itself from the memory.
protected void readFromStack(byte[] stack, int offset)
Read itself from stack.
void setElement(int index, Argument argument)
Replaces an array item with the specified object.
void setElementsCount(int newLength)
Resizes this array to a given size.
Argument[] toArgumentsArray()
Returns items as Java array.
byte[] toBytesValue()
Encodes itself and returns it's representation as array of bytes.
protected void toBytesValue(byte[] bytes, int offset)
Encodes itself to the provided array of bytes.
protected void update(byte side)
This method is used to synchronize Java side and native part.
protected void write(long handle, int offset)
Writes itself to the memory.
protected void writeToStack(byte[] stack, int offset)
Writes itself to stack.
Methods inherited from class com.smardec.j2native.Argument
clone, finalize, free, getAlignedLength, getResultFlags, readFromRAM, restoreFromRAM, storeToRAM, writeToRAM
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Detail
ArrayArgument
public ArrayArgument(java.lang.Class arrayType, int arrayLength)

Constructs an array of objects of a specified class and size. Constructor does not fill newly constructed array with a values (all elements a null), so you have to do it

Parameters:
arrayType - class for items in the constructed array
arrayLength - count of items in the constructed array

ArrayArgument
public ArrayArgument(Argument sample, int arrayLength)
Constructs an array object of specified length. Constructor does not fill newly constructed array with a values (all elements a null), so you have to do it.

Parameters:
sample - a sample for items in the constructed array
arrayLength - count of items in the constructed array

ArrayArgument
public ArrayArgument(Argument[] elements)
Constructs an array object taking a specified Argument array.

Parameters:
elements - Argument[] array ot the new values
Method Detail
getElement
public Argument getElement(int index)
Description copied from interface: ArrayType
Returns an array item specified by an index.

Specified by:
getElement in interface ArrayType
Parameters:
index - index of a requested array item
Returns:
Argument item

setElement
public void setElement(int index, Argument argument) throws java.lang.ArrayStoreException
Description copied from interface: ArrayType
Replaces an array item with the specified object.

Specified by:
setElement in interface ArrayType
Parameters:
index - index of an item to be replaced
argument - object to be set as array item
Throws:
java.lang.ArrayStoreException

getElementsCount
public int getElementsCount()
Description copied from interface: ArrayType
Returns the number of elements in the array.

Specified by:
getElementsCount in interface ArrayType
Returns:
elements quantity

setElementsCount
public void setElementsCount(int newLength)
Description copied from interface: ArrayType
Resizes this array to a given size.

Specified by:
setElementsCount in interface ArrayType
Parameters:
newLength - new array size

toArgumentsArray
public Argument[] toArgumentsArray()
Description copied from interface: ArrayType
Returns items as Java array.

Specified by:
toArgumentsArray in interface ArrayType
Returns:
Argument[]

fromArgumentsArray
public void fromArgumentsArray(Argument[] arguments)
Description copied from interface: ArrayType
Sets array contents to the given values.

Specified by:
fromArgumentsArray in interface ArrayType
Parameters:
arguments - Argument[] array ot the new values

writeToStack
protected void writeToStack(byte[] stack, int offset)
Description copied from class: Argument
Writes itself to stack.

Specified by:
writeToStack in class Argument
Parameters:
stack - it's byte array, where Argument will be written
offset - offset in stack

readFromStack
protected void readFromStack(byte[] stack, int offset)
Description copied from class: Argument
Read itself from stack.

Specified by:
readFromStack in class Argument
Parameters:
stack - it's byte array, from which Argument will be restored
offset - offset in stack

getLength
public int getLength()
Description copied from class: Argument
Returns length in bytes.

Specified by:
getLength in class Argument
Returns:
an int

toBytesValue
public byte[] toBytesValue()
Description copied from class: Argument
Encodes itself and returns it's representation as array of bytes.

Specified by:
toBytesValue in class Argument
Returns:
byte[] representation of Argument

toBytesValue
protected void toBytesValue(byte[] bytes, int offset)
Description copied from class: Argument
Encodes itself to the provided array of bytes.

Specified by:
toBytesValue in class Argument
Parameters:
bytes - array of bytes to which Argument will be written
offset - offset in array

fromBytesValue
public void fromBytesValue(byte[] bytes, int offset)
Description copied from class: Argument
Restores itself from provided array of bytes.

Specified by:
fromBytesValue in class Argument
Parameters:
bytes - array of bytes from which Argument will be restored
offset - offset in array

write
protected void write(long handle, int offset) throws MemoryException
Description copied from class: Argument
Writes itself to the memory. Exact memory address specified by params.

Specified by:
write in class Argument
Parameters:
handle - identifies location in memory where Argument will be written
offset - memory address offset
Throws:
MemoryException - if memory manipulations or memory access failed

read
protected void read(long handle, int offset) throws MemoryException
Description copied from class: Argument
Reads itself from the memory. Exact memory address specified by params.

Specified by:
read in class Argument
Parameters:
handle - identifies location in memory from which Argument will be read
offset - memory address offset
Throws:
MemoryException - if memory manipulations or memory access failed

update
protected void update(byte side)
Description copied from class: Argument
This method is used to synchronize Java side and native part.

Overrides:
update in class Argument
Parameters:
side - identifies part that should be updated

isFixedLength
protected boolean isFixedLength()
Description copied from class: Argument
Identify if Argument is a fixed length variable.

Specified by:
isFixedLength in class Argument
Returns:
true if it is so, and false otherwise
Home about services products contact login