protected ExtendedUUID put(int start_index, byte[] key, byte[] val) { if(val != null && val.length > 0xff) throw new IllegalArgumentException("value has to be <= " + 0xff + " bytes"); if(keys == null) resize(3); for(int i=start_index; i < keys.length; i++) { byte[] k=keys[i]; if(k == null || Arrays.equals(key, k)) { keys[i]=key; values[i]=val; return this; } } int index=keys.length; resize(keys.length + 3); return put(index, key, val); }
protected void read(DataInput in) throws IOException { int length=in.readUnsignedByte(); if(length == 0) return; resize(length); for(int i=0; i < length; i++) { int len=in.readUnsignedByte(); keys[i]=new byte[len]; in.readFully(keys[i]); len=in.readUnsignedByte(); if(len > 0) { values[i]=new byte[len]; in.readFully(values[i]); } } }
protected void read(DataInput in) throws IOException { int length=in.readUnsignedByte(); if(length == 0) return; resize(length); for(int i=0; i < length; i++) { int len=in.readUnsignedByte(); keys[i]=new byte[len]; in.readFully(keys[i]); len=in.readUnsignedByte(); if(len > 0) { values[i]=new byte[len]; in.readFully(values[i]); } } }
protected ExtendedUUID put(int start_index, byte[] key, byte[] val) { if(val != null && val.length > 0xff) throw new IllegalArgumentException("value has to be <= " + 0xff + " bytes"); if(keys == null) resize(3); for(int i=start_index; i < keys.length; i++) { byte[] k=keys[i]; if(k == null || Arrays.equals(key, k)) { keys[i]=key; values[i]=val; return this; } } int index=keys.length; resize(keys.length + 3); return put(index, key, val); }