protected BinaryIdContentPair generateIdContentPair(BinaryClassObject bco) { BinaryIdContentPair pair = new BinaryIdContentPair(idCount++, new BinaryOutputCapsule(this, bco)); return pair; } }
protected void writeAlias(String name, byte fieldType) throws IOException { if (cObj.nameFields.get(name) == null) generateAlias(name, fieldType); byte alias = cObj.nameFields.get(name).alias; write(alias); }
public void write(float value, String name, float defVal) throws IOException { if (value == defVal) return; writeAlias(name, BinaryClassField.FLOAT); write(value); }
public void writeByteBufferArrayList(ArrayList<ByteBuffer> array, String name, ArrayList<ByteBuffer> defVal) throws IOException { if (array == defVal) return; writeAlias(name, BinaryClassField.BYTEBUFFER_ARRAYLIST); writeByteBufferArrayList(array); }
public void writeFloatBufferArrayList(ArrayList<FloatBuffer> array, String name, ArrayList<FloatBuffer> defVal) throws IOException { if (array == defVal) return; writeAlias(name, BinaryClassField.FLOATBUFFER_ARRAYLIST); writeFloatBufferArrayList(array); }
protected void write(ByteBuffer value) throws IOException { if (value == null) { write(NULL_OBJECT); return; } value.rewind(); int length = value.limit(); write(length); for (int x = 0; x < length; x++) { writeForBuffer(value.get()); } value.rewind(); }
public void writeSavableMap(Map<? extends Savable, ? extends Savable> map, String name, Map<? extends Savable, ? extends Savable> defVal) throws IOException { if (map == defVal) return; writeAlias(name, BinaryClassField.SAVABLE_MAP); writeSavableMap(map); }
public void writeSavableArrayList(ArrayList array, String name, ArrayList defVal) throws IOException { if (array == defVal) return; writeAlias(name, BinaryClassField.SAVABLE_ARRAYLIST); writeSavableArrayList(array); }
public void writeSavableArrayListArray(ArrayList[] array, String name, ArrayList[] defVal) throws IOException { if (array == defVal) return; writeAlias(name, BinaryClassField.SAVABLE_ARRAYLIST_1D); writeSavableArrayListArray(array); }
public void writeSavableArrayListArray2D(ArrayList[][] array, String name, ArrayList[][] defVal) throws IOException { if (array == defVal) return; writeAlias(name, BinaryClassField.SAVABLE_ARRAYLIST_2D); writeSavableArrayListArray2D(array); }
public void writeIntSavableMap(IntMap<? extends Savable> map, String name, IntMap<? extends Savable> defVal) throws IOException { if (map == defVal) return; writeAlias(name, BinaryClassField.INT_SAVABLE_MAP); writeIntSavableMap(map); }
protected void writeSavableArrayListArray2D(ArrayList[][] array) throws IOException { if (array == null) { write(NULL_OBJECT); return; } write(array.length); for (ArrayList[] bs : array) { writeSavableArrayListArray(bs); } }
public void writeStringSavableMap(Map<String, ? extends Savable> map, String name, Map<String, ? extends Savable> defVal) throws IOException { if (map == defVal) return; writeAlias(name, BinaryClassField.STRING_SAVABLE_MAP); writeStringSavableMap(map); }
protected void write(int value) throws IOException { baos.write(deflate(ByteUtils.convertToBytes(value))); }
protected int findPrevMatch(BinaryIdContentPair oldPair, ArrayList<BinaryIdContentPair> bucket) { if (bucket == null) return -1; for (int x = bucket.size(); --x >= 0;) { BinaryIdContentPair pair = bucket.get(x); if (pair.getContent().equals(oldPair.getContent())) return locationTable.get(pair.getId()); } return -1; }
protected void writeForBuffer(float value) throws IOException { int integer = Float.floatToIntBits(value); writeForBuffer(integer); }
public int processBinarySavable(Savable object) throws IOException { if (object == null) { return -1; } Class<? extends Savable> clazz = object.getClass(); BinaryClassObject bco = classes.get(object.getClass().getName()); // is this class been looked at before? in tagTable? if (bco == null) { bco = createClassObject(object.getClass()); } // is object in contentTable? if (contentTable.get(object) != null) { return (contentTable.get(object).getId()); } BinaryIdContentPair newPair = generateIdContentPair(bco); BinaryIdContentPair old = contentTable.put(object, newPair); if (old == null) { contentKeys.add(object); } object.write(this); newPair.getContent().finish(); return newPair.getId(); }
protected void write(FloatBuffer value) throws IOException { if (value == null) { write(NULL_OBJECT); return; } value.rewind(); int length = value.limit(); write(length); for (int x = 0; x < length; x++) { writeForBuffer(value.get()); } value.rewind(); }