com.latencybusters.lbm.sdm
Class LBMSDMFieldDouble

java.lang.Object
  extended by com.latencybusters.lbm.sdm.LBMSDM
      extended by com.latencybusters.lbm.sdm.LBMSDMField
          extended by com.latencybusters.lbm.sdm.LBMSDMFieldDouble
All Implemented Interfaces:
java.lang.Cloneable
Direct Known Subclasses:
LBMSDMArrayDouble

public class LBMSDMFieldDouble
extends LBMSDMField

Implements an SDM Field of type Double


Field Summary
protected  double internalValue
          The internal data storage for this field
 
Fields inherited from class com.latencybusters.lbm.sdm.LBMSDMField
elements, MAX_FIELD_NAME_LENGTH, name, type, TYPE_ARRAY_BLOB, TYPE_ARRAY_BOOLEAN, TYPE_ARRAY_DECIMAL, TYPE_ARRAY_DOUBLE, TYPE_ARRAY_FLOAT, TYPE_ARRAY_INT16, TYPE_ARRAY_INT32, TYPE_ARRAY_INT64, TYPE_ARRAY_INT8, TYPE_ARRAY_MESSAGE, TYPE_ARRAY_STRING, TYPE_ARRAY_TIMESTAMP, TYPE_ARRAY_UINT16, TYPE_ARRAY_UINT32, TYPE_ARRAY_UINT64, TYPE_ARRAY_UINT8, TYPE_ARRAY_UNICODE, TYPE_BLOB, TYPE_BOOLEAN, TYPE_DECIMAL, TYPE_DOUBLE, TYPE_FLOAT, TYPE_INT16, TYPE_INT32, TYPE_INT64, TYPE_INT8, TYPE_INVALID, TYPE_MESSAGE, TYPE_STRING, TYPE_TIMESTAMP, TYPE_UINT16, TYPE_UINT32, TYPE_UINT64, TYPE_UINT8, TYPE_UNICODE
 
Fields inherited from class com.latencybusters.lbm.sdm.LBMSDM
DEBUG_BASIC, debug_level, DEBUG_VERBOSE_PARSING
 
Constructor Summary
protected LBMSDMFieldDouble(short type, java.lang.String name)
          Constructor for array subclasses
  LBMSDMFieldDouble(java.lang.String name)
          Constructor for an unset double field.
  LBMSDMFieldDouble(java.lang.String name, double v)
          Constructor for a double field with a known decimal
 
Method Summary
static int fixed_size()
          Get the length of formatted field (static field)
 int format(byte[] buf, int offset)
          Format the double in to a byte buffer
protected  int format(byte[] buf, int offset, double v)
          Format a double in to a byte buffer
 int get_base_len()
          Get the length of formatted field This is used by the respective array class
 int get_len()
          Get the length of formatted field
 double get()
          Get the double field
 int parse(byte[] buf, int offset)
          Parse a byte buffer and store the value
 void set(double v)
          Set the double value.
 java.lang.String toDbgString()
          Get a string useful for debugging
 java.lang.String toString()
          Get the string form of the boolean
 
Methods inherited from class com.latencybusters.lbm.sdm.LBMSDMField
add_element, append, clone, format_name, format_type, get_name, getType, getType, getTypeString, internalString, isNull, length, name_len, remove, sameBaseType, sameType, set_name, set, setNull, type_len
 
Methods inherited from class com.latencybusters.lbm.sdm.LBMSDM
log, set_debug_level
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

internalValue

protected double internalValue
The internal data storage for this field

Constructor Detail

LBMSDMFieldDouble

public LBMSDMFieldDouble(java.lang.String name)
Constructor for an unset double field.

Parameters:
name - The field name

LBMSDMFieldDouble

public LBMSDMFieldDouble(java.lang.String name,
                         double v)
                  throws LBMSDMException
Constructor for a double field with a known decimal

Parameters:
name - The field name
v - The double to be used as the field value
Throws:
LBMSDMException

LBMSDMFieldDouble

protected LBMSDMFieldDouble(short type,
                            java.lang.String name)
Constructor for array subclasses

Parameters:
type - The field type to be created
name - The name of the field to be created
Method Detail

get

public double get()
Get the double field

Returns:
the double value

fixed_size

public static int fixed_size()
Get the length of formatted field (static field)

Returns:
The number of bytes a formatted double will use

get_len

public int get_len()
Get the length of formatted field

Overrides:
get_len in class LBMSDMField
Returns:
The number of bytes a formatted double will use

get_base_len

public final int get_base_len()
Get the length of formatted field This is used by the respective array class

Returns:
The number of bytes a formatted double will use

set

public void set(double v)
         throws LBMSDMUnsignedException
Set the double value.

Parameters:
v - The double to be set
Throws:
LBMSDMUnsignedException

toDbgString

public java.lang.String toDbgString()
Get a string useful for debugging

Overrides:
toDbgString in class LBMSDMField
Returns:
A string representation of this object

format

protected int format(byte[] buf,
                     int offset,
                     double v)
              throws LBMSDMException
Format a double in to a byte buffer

Parameters:
buf - The byte buffer to have the double formatted in
offset - The offset to begin formatting in the buffer
v - The double to be formatted
Returns:
The updated offset after formatting (points to an unused offset)
Throws:
LBMSDMException

format

public int format(byte[] buf,
                  int offset)
           throws LBMSDMException
Format the double in to a byte buffer

Overrides:
format in class LBMSDMField
Parameters:
buf - The byte buffer to have the double formatted in
offset - The offset to begin formatting in the buffer
Returns:
The updated offset after formatting (points to an unused offset)
Throws:
LBMSDMException - when an unexpected error occurs within LBMSDM

toString

public java.lang.String toString()
Get the string form of the boolean

Overrides:
toString in class java.lang.Object
Returns:
A String in the form of the boolean

parse

public int parse(byte[] buf,
                 int offset)
          throws LBMSDMException
Parse a byte buffer and store the value

Overrides:
parse in class LBMSDMField
Parameters:
buf - The byte buffer to be parsed for the boolean
offset - The offset to begin parsing the buffer
Returns:
The next offset to be parsed
Throws:
LBMSDMException - parse() should be overridden


All of the documentation and software included in this and any other Informatica Inc "Ultra Messaging" Release is Copyright (C) 2004-2014, Informatica Corporation. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted only as covered by the terms of a valid software license agreement with 29West Inc. Copyright © 2004-2014, Informatica, Inc. All Rights Reserved.