try { long address = proxy.getInternalAddress(); if (address < 0) address = findValue(this, proxy); if (address == BTree.KEY_NOT_FOUND) return null; final RecordPos rec = findValuePosition(address); final ByteArrayOutputStream os = new ByteArrayOutputStream(); getNodeValue(os, rec, true); final byte[] data = os.toByteArray(); String value; try { value = new String(data, "UTF-8"); } catch (UnsupportedEncodingException e) { value = new String(data); } return value; } catch (BTreeException e) { LOG.warn("btree error while reading node value", e); } catch (IOException e) { LOG.warn("io error while reading node value", e); } return null; }
try { long address = proxy.getInternalAddress(); if (address < 0) address = findValue(this, proxy); if (address == BTree.KEY_NOT_FOUND) return null; final RecordPos rec = findRecord(address); final ByteArrayOutputStream os = new ByteArrayOutputStream(); getNodeValue(os, rec, true); final byte[] data = os.toByteArray(); String value; try { value = new String(data, "UTF-8"); } catch (UnsupportedEncodingException e) { value = new String(data); } return value; } catch (BTreeException e) { LOG.warn("btree error while reading node value", e); } catch (IOException e) { LOG.warn("io error while reading node value", e); } return null; }
	public String getNodeValue(NodeProxy proxy) {		try {			long address = proxy.getInternalAddress();			if (address < 0)				address = findValue(this, proxy);			if (address == BTree.KEY_NOT_FOUND)				return null;			final RecordPos rec = findValuePosition(address);			final ByteArrayOutputStream os = new ByteArrayOutputStream();			getNodeValue(os, rec, true);			final byte[] data = os.toByteArray();			String value;			try {				value = new String(data, "UTF-8");			} catch (UnsupportedEncodingException e) {				value = new String(data);			}			return value;		} catch (BTreeException e) {			LOG.warn("btree error while reading node value", e);		} catch (IOException e) {			LOG.warn("io error while reading node value", e);		}		return null;	}