protected static Long convertDoubleToLong(Double inDoubleValue){
  if (inDoubleValue == null) {
    return null;
  }
  if (inDoubleValue > Long.MAX_VALUE) {
    return Long.MAX_VALUE;
  }
  if (inDoubleValue < Long.MIN_VALUE) {
    return Long.MIN_VALUE;
  }
  Long outLongValue=Math.round(inDoubleValue);
  return outLongValue;
}

protected static Long convertDoubleToLong ( Double inDoubleValue ) { if ( inDoubleValue == null ) { return null ; } if ( inDoubleValue > Long . MAX_VALUE ) { return Long . MAX_VALUE ; } if ( inDoubleValue < Long . MIN_VALUE ) { return Long . MIN_VALUE ; } Long outLongValue = Math . round ( inDoubleValue ) ; return outLongValue ; }
converts a double to a long for bucketing purposes . order of input and output values is preserved as long .
