@SuppressWarnings("unchecked") public BTreeNode<Key,Value> readPayload(DataInput is) throws IOException { BTreeNode<Key,Value> node = new BTreeNode<Key,Value>(index); int count = is.readShort(); node.keys = (Key[])new Object[count]; for (int i = 0; i < count; i++) { node.keys[i] = index.getKeyMarshaller().readPayload(is); } if( is.readBoolean() ) { node.children = new long[count+1]; for (int i = 0; i < count+1; i++) { node.children[i] = is.readLong(); } } else { node.values = (Value[])new Object[count]; for (int i = 0; i < count; i++) { node.values[i] = index.getValueMarshaller().readPayload(is); } node.next = is.readLong(); } return node; } }
BTreeNode<Key,Value> createNode(Page<BTreeNode<Key,Value>> p, BTreeNode<Key,Value> parent) throws IOException { BTreeNode<Key,Value> node = new BTreeNode<Key,Value>(this); node.setPage(p); node.setParent(parent); node.setEmpty(); p.set(node); return node; }
BTreeNode<Key,Value> createNode(Transaction tx, BTreeNode<Key,Value> parent) throws IOException { Page<BTreeNode<Key,Value>> p = tx.allocate(); BTreeNode<Key,Value> node = new BTreeNode<Key,Value>(this); node.setPage(p); node.setParent(parent); node.setEmpty(); p.set(node); return node; }
@SuppressWarnings("unchecked") public BTreeNode<Key,Value> readPayload(DataInput is) throws IOException { BTreeNode<Key,Value> node = new BTreeNode<Key,Value>(index); int count = is.readShort(); node.keys = (Key[])new Object[count]; for (int i = 0; i < count; i++) { node.keys[i] = index.getKeyMarshaller().readPayload(is); } if( is.readBoolean() ) { node.children = new long[count+1]; for (int i = 0; i < count+1; i++) { node.children[i] = is.readLong(); } } else { node.values = (Value[])new Object[count]; for (int i = 0; i < count; i++) { node.values[i] = index.getValueMarshaller().readPayload(is); } node.next = is.readLong(); } return node; } }
@SuppressWarnings("unchecked") public BTreeNode<Key,Value> readPayload(DataInput is) throws IOException { BTreeNode<Key,Value> node = new BTreeNode<Key,Value>(index); int count = is.readShort(); node.keys = (Key[])new Object[count]; for (int i = 0; i < count; i++) { node.keys[i] = index.getKeyMarshaller().readPayload(is); } if( is.readBoolean() ) { node.children = new long[count+1]; for (int i = 0; i < count+1; i++) { node.children[i] = is.readLong(); } } else { node.values = (Value[])new Object[count]; for (int i = 0; i < count; i++) { node.values[i] = index.getValueMarshaller().readPayload(is); } node.next = is.readLong(); } return node; } }
@SuppressWarnings("unchecked") public BTreeNode<Key,Value> readPayload(DataInput is) throws IOException { BTreeNode<Key,Value> node = new BTreeNode<Key,Value>(index); int count = is.readShort(); node.keys = (Key[])new Object[count]; for (int i = 0; i < count; i++) { node.keys[i] = index.getKeyMarshaller().readPayload(is); } if( is.readBoolean() ) { node.children = new long[count+1]; for (int i = 0; i < count+1; i++) { node.children[i] = is.readLong(); } } else { node.values = (Value[])new Object[count]; for (int i = 0; i < count; i++) { node.values[i] = index.getValueMarshaller().readPayload(is); } node.next = is.readLong(); } return node; } }
BTreeNode<Key,Value> createNode(Page<BTreeNode<Key,Value>> p, BTreeNode<Key,Value> parent) throws IOException { BTreeNode<Key,Value> node = new BTreeNode<Key,Value>(this); node.setPage(p); node.setParent(parent); node.setEmpty(); p.set(node); return node; }
BTreeNode<Key,Value> createNode(Page<BTreeNode<Key,Value>> p, BTreeNode<Key,Value> parent) throws IOException { BTreeNode<Key,Value> node = new BTreeNode<Key,Value>(this); node.setPage(p); node.setParent(parent); node.setEmpty(); p.set(node); return node; }
BTreeNode<Key,Value> createNode(Page<BTreeNode<Key,Value>> p, BTreeNode<Key,Value> parent) throws IOException { BTreeNode<Key,Value> node = new BTreeNode<Key,Value>(this); node.setPage(p); node.setParent(parent); node.setEmpty(); p.set(node); return node; }
BTreeNode<Key,Value> createNode(Transaction tx, BTreeNode<Key,Value> parent) throws IOException { Page<BTreeNode<Key,Value>> p = tx.allocate(); BTreeNode<Key,Value> node = new BTreeNode<Key,Value>(this); node.setPage(p); node.setParent(parent); node.setEmpty(); p.set(node); return node; }
BTreeNode<Key,Value> createNode(Transaction tx, BTreeNode<Key,Value> parent) throws IOException { Page<BTreeNode<Key,Value>> p = tx.allocate(); BTreeNode<Key,Value> node = new BTreeNode<Key,Value>(this); node.setPage(p); node.setParent(parent); node.setEmpty(); p.set(node); return node; }
BTreeNode<Key,Value> createNode(Transaction tx, BTreeNode<Key,Value> parent) throws IOException { Page<BTreeNode<Key,Value>> p = tx.allocate(); BTreeNode<Key,Value> node = new BTreeNode<Key,Value>(this); node.setPage(p); node.setParent(parent); node.setEmpty(); p.set(node); return node; }