UM .NET API  6.16.1
com.latencybusters.lbm.sdm.LBMSDMArrayBlob Class Reference

Implements an SDM Field that is an array of BLOBs (Binary Large OBjects). More...

Inheritance diagram for com.latencybusters.lbm.sdm.LBMSDMArrayBlob:
com.latencybusters.lbm.sdm.LBMSDMFieldBlob com.latencybusters.lbm.sdm.LBMSDMField com.latencybusters.lbm.sdm.LBMSDM

Public Member Functions

override LBMSDMRawBlob get ()
 Get the current field for this array. More...
 
virtual LBMSDMRawBlob get (int idx)
 Get the field for a specific array index. More...
 
override int get_len ()
 Get the length of formatted field. More...
 
override void set (LBMSDMRawBlob v)
 Set the current element. More...
 
virtual void set (LBMSDMRawBlob v, int idx)
 Set the current element based on the index. More...
 
override void set (LBMSDMField newfield, int arrayindex)
 Set the current element based on the array index. More...
 
 LBMSDMArrayBlob (System.String name)
 Constructor for a new array field. More...
 
 LBMSDMArrayBlob (System.String name, bool nullfield)
 Constructor for a new array field. More...
 
override void append (LBMSDMField newfield)
 Append a value to the end of the array. More...
 
virtual void append (LBMSDMRawBlob v)
 Append a value to the end of the array. More...
 
override System.String toDbgString ()
 Get a string useful for debugging. More...
 
override int format (byte[] buf, int offset)
 Format the array in to a byte buffer. More...
 
override System.String ToString ()
 Get the string form of the raw blob. More...
 
override int parse (byte[] buf, int offset)
 Parse a byte buffer and store the value. More...
 
override System.Object Clone ()
 Get a copy of this object. More...
 
override int length ()
 Get the length of this array. More...
 
virtual void remove ()
 Remove the current element.
 
virtual bool MoveNext ()
 Check to see if there is a next value. More...
 
virtual void reset ()
 Reset the current element to the first.
 
virtual void Reset ()
 Reset the current element to the first.
 
override void remove (int element)
 Remove an array element. More...
 
virtual byte[] toByteArray ()
 Get a byte array for this blob. More...
 
virtual short getType ()
 Get the type of this field. More...
 
System.String getTypeString ()
 Get a string representing this field type. More...
 
virtual bool sameType (LBMSDMField f)
 Compare the type of the field to this field. More...
 
virtual bool sameBaseType (LBMSDMField f)
 Compare the base type of the field to this field. More...
 
virtual System.String get_name ()
 Get the field name. More...
 
virtual void set_name (System.String new_name)
 Set the name of this field. A copy of the name will be made. More...
 
virtual void add_element (LBMSDMField newfield)
 Add an element to an array from a field. More...
 
virtual System.String internalString (System.String sname, System.String sval)
 Create a string based on the internal representation (includes the type) More...
 
virtual int name_len ()
 Get the length of this fields name in raw form. This is only needed by LBMSDMessage to format a raw message. More...
 
virtual int type_len ()
 Get the length of the type field in raw form. This is only needed by LBMSDMessage to format a raw message. More...
 
virtual int format_name (byte[] buf, int offset)
 Format into a byte buffer the name of this field. Only needed by LBMSDMessage to format messages. More...
 
virtual int format_type (byte[] buf, int offset)
 Format into a byte buffer the type of this field. Only needed by LBMSDMessage to format messages. More...
 
virtual bool isNull ()
 Test to see if this field is a null field (I.E. a field with no data) More...
 
virtual void setNull ()
 Set this field to a null value - discarding current value (if any)
 
virtual void set_debug_level (int level)
 Set the debug level for processing this SDM message. Currently all debugs go to standard out. More...
 
virtual void log (System.String s)
 Log an event. If debug level is set greater than 0, output to stderr. More...
 

Static Public Member Functions

static short getType (System.String typeName, bool isarray)
 Get the TYPE_XXX value for a given string. Recognised strings are: boolean, int8, uint8, int16, uint16, int32, uint32, int64, uint64, float, double, decimal, timestamp, message, string, unicode, blob. More...
 

Public Attributes

const int MAX_FIELD_NAME_LENGTH = 255
 Maximum length of a field name.
 
const short TYPE_INVALID = 0
 SDM field type: Type is invalid.
 
const short TYPE_BOOLEAN = 1
 SDM field type: Boolean (non-zero is true; zero is false).
 
const short TYPE_INT8 = 2
 SDM field type: 8-bit signed integer.
 
const short TYPE_UINT8 = 3
 SDM field type: 8-bit unsigned integer.
 
const short TYPE_INT16 = 4
 SDM field type: 16-bit signed integer.
 
const short TYPE_UINT16 = 5
 SDM field type: 16-bit unsigned integer.
 
const short TYPE_INT32 = 6
 SDM field type: 32-bit signed integer.
 
const short TYPE_UINT32 = 7
 SDM field type: 32-bit unsigned integer.
 
const short TYPE_INT64 = 8
 SDM field type: 64-bit signed integer.
 
const short TYPE_UINT64 = 9
 SDM field type: 64-bit unsigned integer.
 
const short TYPE_FLOAT = 10
 SDM field type: Single-precision floating point.
 
const short TYPE_DOUBLE = 11
 SDM field type: Double-precision floating point.
 
const short TYPE_DECIMAL = 12
 SDM field type: Decimal number.
 
const short TYPE_TIMESTAMP = 13
 SDM field type: Seconds and microseconds since the epoch (UTC).
 
const short TYPE_MESSAGE = 14
 SDM field type: Nested SDM message.
 
const short TYPE_STRING = 15
 SDM field type: Character string (ASCIZ).
 
const short TYPE_UNICODE = 16
 SDM field type: Unicode string.
 
const short TYPE_BLOB = 17
 SDM field type: Binary Large Object (BLOB).
 
const short TYPE_ARRAY_BOOLEAN = TYPE_BOOLEAN | TYPE_MODIFIER_ARRAY
 SDM field type: Array of Booleans (non-zero is true; zero is false).
 
const short TYPE_ARRAY_INT8 = TYPE_INT8 | TYPE_MODIFIER_ARRAY
 SDM field type: Array of 8-bit signed integers.
 
const short TYPE_ARRAY_UINT8 = (short) ((TYPE_UINT8 | TYPE_MODIFIER_ARRAY))
 SDM field type: Array of 8-bit unsigned integers.
 
const short TYPE_ARRAY_INT16 = (short) ((TYPE_INT16 | TYPE_MODIFIER_ARRAY))
 SDM field type: Array of 16-bit signed integers.
 
const short TYPE_ARRAY_UINT16 = (short) ((TYPE_UINT16 | TYPE_MODIFIER_ARRAY))
 SDM field type: Array of 16-bit unsigned integers.
 
const short TYPE_ARRAY_INT32 = (short) ((TYPE_INT32 | TYPE_MODIFIER_ARRAY))
 SDM field type: Array of 32-bit signed integers.
 
const short TYPE_ARRAY_UINT32 = (short) ((TYPE_UINT32 | TYPE_MODIFIER_ARRAY))
 SDM field type: Array of 32-bit unsigned integers.
 
const short TYPE_ARRAY_INT64 = (short) ((TYPE_INT64 | TYPE_MODIFIER_ARRAY))
 SDM field type: Array of 64-bit signed integers.
 
const short TYPE_ARRAY_UINT64 = (short) ((TYPE_UINT64 | TYPE_MODIFIER_ARRAY))
 SDM field type: Array of 64-bit unsigned integers.
 
const short TYPE_ARRAY_FLOAT = (short) ((TYPE_FLOAT | TYPE_MODIFIER_ARRAY))
 SDM field type: Array of single-precision floating points.
 
const short TYPE_ARRAY_DOUBLE = (short) ((TYPE_DOUBLE | TYPE_MODIFIER_ARRAY))
 SDM field type: Array of double-precision floating points.
 
const short TYPE_ARRAY_DECIMAL = (short) ((TYPE_DECIMAL | TYPE_MODIFIER_ARRAY))
 SDM field type: Array of decimal numbers.
 
const short TYPE_ARRAY_TIMESTAMP = (short) ((TYPE_TIMESTAMP | TYPE_MODIFIER_ARRAY))
 SDM field type: Array of timestamps (seconds and microseconds since the epoch (UTC)).
 
const short TYPE_ARRAY_MESSAGE = (short) ((TYPE_MESSAGE | TYPE_MODIFIER_ARRAY))
 SDM field type: Array of nested SDM messages.
 
const short TYPE_ARRAY_STRING = (short) ((TYPE_STRING | TYPE_MODIFIER_ARRAY))
 SDM field type: Array of character strings (ASCIZ).
 
const short TYPE_ARRAY_UNICODE = (short) ((TYPE_UNICODE | TYPE_MODIFIER_ARRAY))
 SDM field type: Array of unicode strings.
 
const short TYPE_ARRAY_BLOB = (short) ((TYPE_BLOB | TYPE_MODIFIER_ARRAY))
 SDM field type: Array of Binary Large Objects (BLOB).
 
const int DEBUG_BASIC = 1
 Debug flag for basic debug output.
 
const int DEBUG_VERBOSE_PARSING = 2
 Debug flag for verbose message parsing output.
 

Properties

virtual System.Object Current [get]
 Get the current element in the array. More...
 
virtual System.String TypeString [get]
 Get a string representing this field type. More...
 

Detailed Description

Implements an SDM Field that is an array of BLOBs (Binary Large OBjects).

Constructor & Destructor Documentation

com.latencybusters.lbm.sdm.LBMSDMArrayBlob.LBMSDMArrayBlob ( System.String  name)

Constructor for a new array field.

Parameters
nameThe name of the field
com.latencybusters.lbm.sdm.LBMSDMArrayBlob.LBMSDMArrayBlob ( System.String  name,
bool  nullfield 
)

Constructor for a new array field.

Parameters
nameThe name of the field
nullfieldBoolean indicating if the field is a null field (true) or if its an array of 0 elements (non-null)

Member Function Documentation

virtual void com.latencybusters.lbm.sdm.LBMSDMField.add_element ( LBMSDMField  newfield)
virtualinherited

Add an element to an array from a field.

Parameters
newfieldThe new field to be added

Referenced by com.latencybusters.lbm.sdm.LBMSDMFieldIterator.add_element().

override void com.latencybusters.lbm.sdm.LBMSDMArrayBlob.append ( LBMSDMField  newfield)
virtual

Append a value to the end of the array.

Parameters
newfieldThe field value to be appended

Reimplemented from com.latencybusters.lbm.sdm.LBMSDMField.

virtual void com.latencybusters.lbm.sdm.LBMSDMArrayBlob.append ( LBMSDMRawBlob  v)
virtual

Append a value to the end of the array.

Parameters
vThe field value to be appended
override System.Object com.latencybusters.lbm.sdm.LBMSDMArrayBlob.Clone ( )
virtual

Get a copy of this object.

Returns
A new object with a copy

Reimplemented from com.latencybusters.lbm.sdm.LBMSDMField.

References com.latencybusters.lbm.sdm.LBMSDMArrayBlob.Clone().

Referenced by com.latencybusters.lbm.sdm.LBMSDMArrayBlob.Clone().

override int com.latencybusters.lbm.sdm.LBMSDMArrayBlob.format ( byte[]  buf,
int  offset 
)
virtual

Format the array in to a byte buffer.

Parameters
bufThe byte buffer to have the array formatted in
offsetThe offset to begin formatting in the buffer
Returns
The updated offset after formatting (points to an unused offset)

Reimplemented from com.latencybusters.lbm.sdm.LBMSDMField.

References com.latencybusters.lbm.sdm.LBMSDMFieldUint32.set().

virtual int com.latencybusters.lbm.sdm.LBMSDMField.format_name ( byte[]  buf,
int  offset 
)
virtualinherited

Format into a byte buffer the name of this field. Only needed by LBMSDMessage to format messages.

LBMSDMException when an unexpected error occurs within LBMSDM

Parameters
bufThe buffer to format the message in to
offsetThe offset in to the byte buffer where the message should be placed
Returns
The new offset in the buffer after formatting the message name

References com.latencybusters.lbm.sdm.LBMSDMFieldString.format_short().

Referenced by com.latencybusters.lbm.sdm.LBMSDMessage.data().

virtual int com.latencybusters.lbm.sdm.LBMSDMField.format_type ( byte[]  buf,
int  offset 
)
virtualinherited

Format into a byte buffer the type of this field. Only needed by LBMSDMessage to format messages.

LBMSDMException when an unexpected error occurs within LBMSDM

Parameters
bufThe buffer to format the type in to
offsetThe offset in to the byte buffer where the type should be placed
Returns
The new offset in the buffer after formatting the message type

References com.latencybusters.lbm.sdm.LBMSDMRawUint16.format(), and com.latencybusters.lbm.sdm.LBMSDMRawUint16.length.

Referenced by com.latencybusters.lbm.sdm.LBMSDMessage.data().

override LBMSDMRawBlob com.latencybusters.lbm.sdm.LBMSDMArrayBlob.get ( )
virtual

Get the current field for this array.

Returns
The current field value

Reimplemented from com.latencybusters.lbm.sdm.LBMSDMFieldBlob.

virtual LBMSDMRawBlob com.latencybusters.lbm.sdm.LBMSDMArrayBlob.get ( int  idx)
virtual

Get the field for a specific array index.

LBMSDMOutOfRangeException when idx exceeds the number of elements in the array

Parameters
idxThe array index
Returns
The current field value
override int com.latencybusters.lbm.sdm.LBMSDMArrayBlob.get_len ( )
virtual

Get the length of formatted field.

Returns
The number of bytes a formatted Blob will use

Reimplemented from com.latencybusters.lbm.sdm.LBMSDMField.

References com.latencybusters.lbm.sdm.LBMSDMRawBlob.length().

virtual System.String com.latencybusters.lbm.sdm.LBMSDMField.get_name ( )
virtualinherited
static short com.latencybusters.lbm.sdm.LBMSDMField.getType ( System.String  typeName,
bool  isarray 
)
staticinherited

Get the TYPE_XXX value for a given string. Recognised strings are: boolean, int8, uint8, int16, uint16, int32, uint32, int64, uint64, float, double, decimal, timestamp, message, string, unicode, blob.

Parameters
typeNameA string which needs translating to a short form
isarrayA boolean indicating if an array type is required
Returns
A short representation for the string or TYPE_INVALID
virtual short com.latencybusters.lbm.sdm.LBMSDMField.getType ( )
virtualinherited

Get the type of this field.

Returns
The TYPE_XXX value of this object
System.String com.latencybusters.lbm.sdm.LBMSDMField.getTypeString ( )
inherited

Get a string representing this field type.

Returns
A string representing this field type
virtual System.String com.latencybusters.lbm.sdm.LBMSDMField.internalString ( System.String  sname,
System.String  sval 
)
virtualinherited

Create a string based on the internal representation (includes the type)

Parameters
snameThe field name
svalThe field value in string form
Returns
A string that contains the field name and value in ascii form
virtual bool com.latencybusters.lbm.sdm.LBMSDMField.isNull ( )
virtualinherited

Test to see if this field is a null field (I.E. a field with no data)

Returns
true/false
override int com.latencybusters.lbm.sdm.LBMSDMArrayBlob.length ( )
virtual

Get the length of this array.

Returns
The number of elements in this array

Reimplemented from com.latencybusters.lbm.sdm.LBMSDMField.

virtual void com.latencybusters.lbm.sdm.LBMSDM.log ( System.String  s)
virtualinherited

Log an event. If debug level is set greater than 0, output to stderr.

Parameters
sString containing the event to log
virtual bool com.latencybusters.lbm.sdm.LBMSDMArrayBlob.MoveNext ( )
virtual

Check to see if there is a next value.

Returns
true if another value exists, false if not
virtual int com.latencybusters.lbm.sdm.LBMSDMField.name_len ( )
virtualinherited

Get the length of this fields name in raw form. This is only needed by LBMSDMessage to format a raw message.

Returns
the number of bytes the name of this field needs plus one for the length

Referenced by com.latencybusters.lbm.sdm.LBMSDMessage.data().

override int com.latencybusters.lbm.sdm.LBMSDMArrayBlob.parse ( byte[]  buf,
int  offset 
)
virtual

Parse a byte buffer and store the value.

Parameters
bufThe byte buffer to be parsed for the array
offsetThe offset to begin parsing the buffer
Returns
The next offset to be parsed

Reimplemented from com.latencybusters.lbm.sdm.LBMSDMField.

References com.latencybusters.lbm.sdm.LBMSDMFieldUint32.get(), and com.latencybusters.lbm.sdm.LBMSDMFieldUint32.parse().

override void com.latencybusters.lbm.sdm.LBMSDMArrayBlob.remove ( int  element)
virtual

Remove an array element.

Parameters
elementThe element index to be removed

Reimplemented from com.latencybusters.lbm.sdm.LBMSDMField.

virtual bool com.latencybusters.lbm.sdm.LBMSDMField.sameBaseType ( LBMSDMField  f)
virtualinherited

Compare the base type of the field to this field.

Parameters
fA field to compare
Returns
true if the same type, false if not
virtual bool com.latencybusters.lbm.sdm.LBMSDMField.sameType ( LBMSDMField  f)
virtualinherited

Compare the type of the field to this field.

Parameters
fA field to compare
Returns
true if the same type, false if not
override void com.latencybusters.lbm.sdm.LBMSDMArrayBlob.set ( LBMSDMRawBlob  v)
virtual

Set the current element.

Parameters
vThe value to be set

Reimplemented from com.latencybusters.lbm.sdm.LBMSDMFieldBlob.

virtual void com.latencybusters.lbm.sdm.LBMSDMArrayBlob.set ( LBMSDMRawBlob  v,
int  idx 
)
virtual

Set the current element based on the index.

Parameters
vThe value to be set
idxThe element of the array to be set
override void com.latencybusters.lbm.sdm.LBMSDMArrayBlob.set ( LBMSDMField  newfield,
int  arrayindex 
)
virtual

Set the current element based on the array index.

LBMSDMOutOfRangeException when the array index exceeds the number of fields in the array

LBMSDMAddingFieldException when a field doesnt exist at the array index

Parameters
newfieldThe new field
arrayindexThe array index in the field

Reimplemented from com.latencybusters.lbm.sdm.LBMSDMField.

References com.latencybusters.lbm.sdm.LBMSDMRawBlob.get().

virtual void com.latencybusters.lbm.sdm.LBMSDM.set_debug_level ( int  level)
virtualinherited

Set the debug level for processing this SDM message. Currently all debugs go to standard out.

Parameters
levelDebug level to set
virtual void com.latencybusters.lbm.sdm.LBMSDMField.set_name ( System.String  new_name)
virtualinherited

Set the name of this field. A copy of the name will be made.

Parameters
new_nameThe name this field shall use.
virtual byte [] com.latencybusters.lbm.sdm.LBMSDMFieldBlob.toByteArray ( )
virtualinherited

Get a byte array for this blob.

Returns
A byte array containing the blob data

References com.latencybusters.lbm.sdm.LBMSDMRawBlob.get().

override System.String com.latencybusters.lbm.sdm.LBMSDMArrayBlob.toDbgString ( )
virtual

Get a string useful for debugging.

Returns
A string representation of this object

Reimplemented from com.latencybusters.lbm.sdm.LBMSDMField.

override System.String com.latencybusters.lbm.sdm.LBMSDMArrayBlob.ToString ( )

Get the string form of the raw blob.

Returns
A String in the form of the blob
virtual int com.latencybusters.lbm.sdm.LBMSDMField.type_len ( )
virtualinherited

Get the length of the type field in raw form. This is only needed by LBMSDMessage to format a raw message.

Returns
the number of bytes the type field needs

References com.latencybusters.lbm.sdm.LBMSDMFieldUint16.fixed_size().

Referenced by com.latencybusters.lbm.sdm.LBMSDMessage.data().

Property Documentation

virtual System.Object com.latencybusters.lbm.sdm.LBMSDMArrayBlob.Current
get

Get the current element in the array.

Values: The current field value

Returns
The current field value
virtual System.String com.latencybusters.lbm.sdm.LBMSDMField.TypeString
getinherited

Get a string representing this field type.

Values: A string representing this field type

Returns
A string representing this field type

The documentation for this class was generated from the following file: