public class MapColumnIndex
extends java.lang.Object
implements java.io.Serializable
Modifier and Type | Field and Description |
---|---|
private java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.util.Collection<byte[]>>> |
index |
private static long |
serialVersionUID |
Constructor and Description |
---|
MapColumnIndex() |
Modifier and Type | Method and Description |
---|---|
void |
clear() |
void |
delete(byte[] primarykey)
delete all references to the primary key
|
java.util.Collection<byte[]> |
getIndex(java.lang.String whereKey,
java.lang.String isValue) |
private static java.util.Collection<byte[]> |
getIndexWithExceptionHandler(MapColumnIndex idx,
java.lang.String whereKey,
java.lang.String isValue,
java.util.Map<byte[],java.util.Map<java.lang.String,java.lang.String>> table) |
private static void |
indexdelete(byte[] index,
java.util.Map<java.lang.String,java.util.Collection<byte[]>> valueIdxMap) |
private static void |
indexupdate(byte[] primarykey,
java.util.Map<java.lang.String,java.util.Collection<byte[]>> valueIdxMap,
java.lang.String value) |
void |
init(java.lang.String whereKey,
java.lang.String isValue,
java.util.Iterator<java.util.Map.Entry<byte[],java.util.Map<java.lang.String,java.lang.String>>> table)
create a full index for the whereKey
|
static void |
main(java.lang.String[] args) |
private static void |
printIndex(java.util.Collection<byte[]> index) |
void |
update(byte[] primarykey,
java.util.Map<java.lang.String,java.lang.String> row)
update an index entry
|
private static final long serialVersionUID
private final java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.util.Collection<byte[]>>> index
public java.util.Collection<byte[]> getIndex(java.lang.String whereKey, java.lang.String isValue) throws java.lang.UnsupportedOperationException
java.lang.UnsupportedOperationException
public void clear()
public void init(java.lang.String whereKey, java.lang.String isValue, java.util.Iterator<java.util.Map.Entry<byte[],java.util.Map<java.lang.String,java.lang.String>>> table)
whereKey
- isValue
- table
- public void update(byte[] primarykey, java.util.Map<java.lang.String,java.lang.String> row)
primarykey
- the primary key for the row that is updatedrow
- the row that was updated (a mapping from column names to values)private static void indexupdate(byte[] primarykey, java.util.Map<java.lang.String,java.util.Collection<byte[]>> valueIdxMap, java.lang.String value)
public void delete(byte[] primarykey)
primarykey
- private static void indexdelete(byte[] index, java.util.Map<java.lang.String,java.util.Collection<byte[]>> valueIdxMap)
private static java.util.Collection<byte[]> getIndexWithExceptionHandler(MapColumnIndex idx, java.lang.String whereKey, java.lang.String isValue, java.util.Map<byte[],java.util.Map<java.lang.String,java.lang.String>> table)
private static void printIndex(java.util.Collection<byte[]> index)
public static void main(java.lang.String[] args)