void writePageHeader(HashPage page) throws IOException { dataOut.reset(); page.writeHeader(dataOut); indexFile.seek(page.getId()); indexFile.write(dataOut.getData(), 0, HashPage.PAGE_HEADER_SIZE); }
void writePage(TreePage page) throws IOException { dataOut.reset(); page.writeHeader(dataOut); indexFile.seek(page.getId()); indexFile.write(dataOut.getData(), 0, TreePage.PAGE_HEADER_SIZE); }
public void redoStoreItem(RedoStoreIndexItem redo) throws IOException { dataOut.reset(); redo.getIndexItem().write(dataOut); file.seek(redo.getOffset()); file.write(dataOut.getData(), 0, IndexItem.INDEX_SIZE); }
void writeFullPage(HashPage page) throws IOException { dataOut.reset(); page.write(keyMarshaller, dataOut); if (dataOut.size() > pageSize) { throw new IOException("Page Size overflow: pageSize is " + pageSize + " trying to write " + dataOut.size()); } indexFile.seek(page.getId()); indexFile.write(dataOut.getData(), 0, dataOut.size()); }
void writeFullPage(TreePage page) throws IOException { dataOut.reset(); page.write(keyMarshaller, dataOut); if (dataOut.size() > pageSize) { throw new IOException("Page Size overflow: pageSize is " + pageSize + " trying to write " + dataOut.size()); } indexFile.seek(page.getId()); indexFile.write(dataOut.getData(), 0, dataOut.size()); }
void updateIndexes(IndexItem indexItem) throws IOException { if (redoLog != null) { RedoStoreIndexItem redo = new RedoStoreIndexItem(name, indexItem.getOffset(), indexItem); redoLog.storeRedoItem(redo); } dataOut.reset(); indexItem.updateIndexes(dataOut); file.seek(indexItem.getOffset()); file.write(dataOut.getData(), 0, IndexItem.INDEXES_ONLY_SIZE); }
void storeItem(IndexItem indexItem) throws IOException { if (redoLog != null) { RedoStoreIndexItem redo = new RedoStoreIndexItem(name, indexItem.getOffset(), indexItem); redoLog.storeRedoItem(redo); } dataOut.reset(); indexItem.write(dataOut); file.seek(indexItem.getOffset()); file.write(dataOut.getData(), 0, IndexItem.INDEX_SIZE); }
public synchronized void updateItem(DataItem item, Marshaller marshaller, Object payload, byte type) throws IOException { // Write the packet our internal buffer. buffer.reset(); buffer.position(DataManagerImpl.ITEM_HEAD_SIZE); marshaller.writePayload(payload, buffer); int size = buffer.size(); int payloadSize = size - DataManagerImpl.ITEM_HEAD_SIZE; buffer.reset(); buffer.writeByte(type); buffer.writeInt(payloadSize); item.setSize(payloadSize); DataFile dataFile = dataManager.getDataFile(item); RandomAccessFile file = dataFile.getRandomAccessFile(); file.seek(item.getOffset()); file.write(buffer.getData(), 0, size); dataFile.setWriterData(Boolean.TRUE); // Use as dirty marker.. }
private Buffer createBuffer(Command command) { Buffer buffer = null; if (command != null) { try { wireFormat.marshal(command, dataOut); dataOut.flush(); int size = dataOut.size(); byte[] data = new byte[size]; System.arraycopy(dataOut.getData(), 0, data, 0, size); if (size > OpenWireTransport.COMPACT_SIZE) { dataOut.restart(); } dataOut.reset(); buffer = new Buffer(data); } catch (Throwable t) { transport.handleException(t); } } return buffer; }
private Buffer createBuffer(Object command) { Buffer buffer = null; if (command != null) { try { wireFormat.marshal(command, dataOut); dataOut.flush(); int size = dataOut.size(); byte[] data = new byte[size]; System.arraycopy(dataOut.getData(), 0, data, 0, size); if (size > StompTransport.COMPACT_SIZE) { dataOut.restart(); } dataOut.reset(); buffer = new Buffer(data); } catch (Throwable t) { transport.handleException(t); } } return buffer; }
private Buffer createBuffer(Object command) { Buffer buffer = null; if (command != null) { try { wireFormat.marshal(command, dataOut); dataOut.flush(); int size = dataOut.size(); byte[] data = new byte[size]; System.arraycopy(dataOut.getData(), 0, data, 0, size); if (size > StompTransport.COMPACT_SIZE) { dataOut.restart(); } dataOut.reset(); buffer = new Buffer(data); } catch (Throwable t) { transport.handleException(t); } } return buffer; }
private Buffer createBuffer(Command command) { Buffer buffer = null; if (command != null) { try { wireFormat.marshal(command, dataOut); dataOut.flush(); int size = dataOut.size(); byte[] data = new byte[size]; System.arraycopy(dataOut.getData(), 0, data, 0, size); if (size > OpenWireTransport.COMPACT_SIZE) { dataOut.restart(); } dataOut.reset(); buffer = new Buffer(data); } catch (Throwable t) { transport.handleException(t); } } return buffer; }
private Buffer createBuffer(Object command) { Buffer buffer = null; if (command != null) { try { wireFormat.marshal(command, dataOut); dataOut.flush(); int size = dataOut.size(); byte[] data = new byte[size]; System.arraycopy(dataOut.getData(), 0, data, 0, size); if (size > MQTTTransport.COMPACT_SIZE) { dataOut.restart(); } dataOut.reset(); buffer = new Buffer(data); } catch (Throwable t) { transport.handleException(t); } } return buffer; }
private Buffer createBuffer(Object command) { Buffer buffer = null; if (command != null) { try { wireFormat.marshal(command, dataOut); dataOut.flush(); int size = dataOut.size(); byte[] data = new byte[size]; System.arraycopy(dataOut.getData(), 0, data, 0, size); if (size > MQTTTransport.COMPACT_SIZE) { dataOut.restart(); } dataOut.reset(); buffer = new Buffer(data); } catch (Throwable t) { transport.handleException(t); } } return buffer; }
public synchronized DataItem storeItem(Marshaller marshaller, Object payload, byte type) throws IOException { // Write the packet our internal buffer. buffer.reset(); buffer.position(DataManagerImpl.ITEM_HEAD_SIZE); marshaller.writePayload(payload, buffer); int size = buffer.size(); int payloadSize = size - DataManagerImpl.ITEM_HEAD_SIZE; buffer.reset(); buffer.writeByte(type); buffer.writeInt(payloadSize); // Find the position where this item will land at. DataItem item = new DataItem(); item.setSize(payloadSize); DataFile dataFile = dataManager.findSpaceForData(item); // Now splat the buffer to the file. dataFile.getRandomAccessFile().seek(item.getOffset()); dataFile.getRandomAccessFile().write(buffer.getData(), 0, size); dataFile.setWriterData(Boolean.TRUE); // Use as dirty marker.. dataManager.addInterestInFile(dataFile); return item; }
lastFree.setNextFreePageId(offset); indexFile.seek(lastFree.getId()); dataOut.reset(); lastFree.writeHeader(dataOut); indexFile.write(dataOut.getData(), 0, TreePage.PAGE_HEADER_SIZE);
buff.reset();