@Override public void writeString(final String str) { writeInt(0); // making space for size int strLen = writeCharacters(str, false); writeInt32(getPosition() - strLen - 4, strLen); }
public void writeInt(int x) { _buf.writeInt(x); }
/** @deprecated */ @Deprecated public void writeInt(int x) { this._buf.writeInt(x); }
private void putMap(String name, Map m) { this._put(3, name); int sizePos = this._buf.getPosition(); this._buf.writeInt(0); Iterator var4 = m.entrySet().iterator(); while(var4.hasNext()) { Entry entry = (Entry)var4.next(); this._putObjectField(entry.getKey().toString(), entry.getValue()); } this._buf.write(0); this._buf.writeInt(sizePos, this._buf.getPosition() - sizePos); }
private void putArray(String name, Object array) { _put(ARRAY, name); final int sizePos = _buf.getPosition(); _buf.writeInt(0); int size = Array.getLength(array); for (int i = 0; i < size; i++) _putObjectField(String.valueOf(i), Array.get(array, i)); _buf.write(EOO); _buf.writeInt(sizePos, _buf.getPosition() - sizePos); }
private void putMap(String name, Map m) { _put(OBJECT, name); final int sizePos = _buf.getPosition(); _buf.writeInt(0); for (Map.Entry entry : (Set<Map.Entry>) m.entrySet()) _putObjectField(entry.getKey().toString(), entry.getValue()); _buf.write(EOO); _buf.writeInt(sizePos, _buf.getPosition() - sizePos); }
private void putIterable(String name, Iterable l) { this._put(4, name); int sizePos = this._buf.getPosition(); this._buf.writeInt(0); int i = 0; for(Iterator var5 = l.iterator(); var5.hasNext(); ++i) { Object obj = var5.next(); this._putObjectField(String.valueOf(i), obj); } this._buf.write(0); this._buf.writeInt(sizePos, this._buf.getPosition() - sizePos); }
private void putArray(String name, Object array) { this._put(4, name); int sizePos = this._buf.getPosition(); this._buf.writeInt(0); int size = Array.getLength(array); for(int i = 0; i < size; ++i) { this._putObjectField(String.valueOf(i), Array.get(array, i)); } this._buf.write(0); this._buf.writeInt(sizePos, this._buf.getPosition() - sizePos); }
protected void putUUID(String name, UUID val) { this._put(5, name); this._buf.writeInt(16); this._buf.write(3); this._buf.writeLong(val.getMostSignificantBits()); this._buf.writeLong(val.getLeastSignificantBits()); }
protected void putUUID(String name, UUID val) { _put(BINARY, name); _buf.writeInt(16); _buf.write(B_UUID); _buf.writeLong(val.getMostSignificantBits()); _buf.writeLong(val.getLeastSignificantBits()); }
private void putBinary(String name, int type, byte[] data) { _put(BINARY, name); int totalLen = data.length; if (type == B_BINARY) totalLen += 4; _buf.writeInt(totalLen); _buf.write(type); if (type == B_BINARY) _buf.writeInt(totalLen - 4); int before = _buf.getPosition(); _buf.write(data); int after = _buf.getPosition(); // com.mongodb.util.MyAsserts.assertEquals( after - before , data.length // ); }
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()); } }
private void putBinary(String name, int type, byte[] data) { this._put(5, name); int totalLen = data.length; if(type == 2) { totalLen += 4; } this._buf.writeInt(totalLen); this._buf.write(type); if(type == 2) { this._buf.writeInt(totalLen - 4); } int before = this._buf.getPosition(); this._buf.write(data); int after = this._buf.getPosition(); }
public void writeInt(int pos, int x) { final int save = getPosition(); setPosition(pos); writeInt(x); setPosition(save); }