@Override public void writeDouble(final double x) { writeLong(Double.doubleToRawLongBits(x)); }
public void writeLong(long x) { _buf.writeLong(x); }
/** @deprecated */ @Deprecated public void writeLong(long x) { this._buf.writeLong(x); }
public void writeDouble(double x) { writeLong(Double.doubleToRawLongBits(x)); }
protected void putDate(String name, Date d) { _put(DATE, name); _buf.writeLong(d.getTime()); }
protected void putDate(String name, Date date) { this._put(9, name); this._buf.writeLong(date.getTime()); }
protected void putNumber(String name, Number n) { if(!(n instanceof Integer) && !(n instanceof Short) && !(n instanceof Byte) && !(n instanceof AtomicInteger)) { if(!(n instanceof Long) && !(n instanceof AtomicLong)) { if(!(n instanceof Float) && !(n instanceof Double)) { throw new IllegalArgumentException("can\'t serialize " + n.getClass()); } this._put(1, name); this._buf.writeDouble(n.doubleValue()); } else { this._put(18, name); this._buf.writeLong(n.longValue()); } } else { this._put(16, name); this._buf.writeInt(n.intValue()); } }
protected void putNumber(String name, Number n) { if (n instanceof Integer || n instanceof Short || n instanceof Byte || n instanceof AtomicInteger) { _put(NUMBER_INT, name); _buf.writeInt(n.intValue()); } else if (n instanceof Long || n instanceof AtomicLong) { _put(NUMBER_LONG, name); _buf.writeLong(n.longValue()); } else if (n instanceof Float || n instanceof Double) { _put(NUMBER, name); _buf.writeDouble(n.doubleValue()); } else if (n instanceof BigDecimal) { putDecimal(name, new BSONDecimal((BigDecimal)n)); } else { throw new IllegalArgumentException("can't serialize " + n.getClass()); } }