private BigDecimal readNumericValue(ByteBuffer buffer){
  boolean negate=(buffer.get() != 0);
  byte[] tmpArr=ByteUtil.getBytes(buffer,16);
  if (buffer.order() != ByteOrder.BIG_ENDIAN) {
    fixNumericByteOrder(tmpArr);
  }
  return toBigDecimal(tmpArr,negate,getScale());
}

private BigDecimal readNumericValue ( ByteBuffer buffer ) { boolean negate = ( buffer . get ( ) != 0 ) ; byte [ ] tmpArr = ByteUtil . getBytes ( buffer , 16 ) ; if ( buffer . order ( ) != ByteOrder . BIG_ENDIAN ) { fixNumericByteOrder ( tmpArr ) ; } return toBigDecimal ( tmpArr , negate , getScale ( ) ) ; }
decodes a numeric field .
