public interface IRaba extends Iterable<byte[]>
IIndexProcedures. The interface defines optional operations for
 mutation. If mutation is supported, then isReadOnly() will return
 false. An IRaba instance either stores B+Tree keys and
 supports search(byte[]) -or- stores B+Tree values and allows
 nulls but does not support search. for storing null
 s and search are mutually exclusive. Some IRaba implementations may
 be used for either purpose, but the IRaba instance is always either
 B+Tree keys or B+Tree values. In both cases, the IRaba stores
 variable length byte[]s. However, when an IRaba stores B+Tree keys,
 the byte[]s interpreted as unsigned byte[]s for the purpose of
 search(byte[]).
 
 unsigned byte[] keys and
 nulls ARE NOT permitted.
 
 byte[]s, does NOT
 support search(byte[]) and nulls are allowed.| Modifier and Type | Method and Description | 
|---|---|
int | 
add(byte[] a)
Append a byte[] value to the end of the logical byte[][] (optional
 operation). 
 | 
int | 
add(byte[] value,
   int off,
   int len)
Append a byte[] value to the end of the logical byte[][] (optional
 operation). 
 | 
int | 
add(DataInput in,
   int len)
Append a byte[] value to the end of the logical byte[][] (optional
 operation). 
 | 
int | 
capacity()
The capacity of the logical byte[][]. 
 | 
int | 
copy(int index,
    OutputStream os)
Copy the value at the specified index onto the output stream. 
 | 
byte[] | 
get(int index)
Return the byte[] at the specified index. 
 | 
boolean | 
isEmpty()
True iff the logical byte[][] is empty. 
 | 
boolean | 
isFull()
True iff the logical byte[][] is full. 
 | 
boolean | 
isKeys()
 | 
boolean | 
isNull(int index)
Return  
true iff the byte[] at that index is
 null. | 
boolean | 
isReadOnly()
Return  
true if this implementation is read-only. | 
Iterator<byte[]> | 
iterator()
Iterator visits the byte[] elements in the view order. 
 | 
int | 
length(int index)
The length of the byte[] at that index. 
 | 
int | 
search(byte[] searchKey)
Search for the given searchKey in the key buffer (optional
 operation). 
 | 
void | 
set(int index,
   byte[] a)
Set the byte[] value at the specified index (optional operation). 
 | 
int | 
size()
The #of entries in the logical byte[][]. 
 | 
boolean isReadOnly()
true if this implementation is read-only.boolean isKeys()
true the IRaba supports search and elements are
 interpreted as unsigned byte[]s (B+Tree keys). For this case
 the application MUST ensure that the elements are maintained in
 unsigned byte[] order and that duplicates byte[]s are not
 stored.
 
 When false, the IRaba allows nulls and
 the elements are interpreted as signed byte[] (B+Tree
 values).
true if the IRaba represents B+Tree keys and
         false if it represents B+Tree values.int capacity()
int size()
boolean isEmpty()
boolean isFull()
boolean isNull(int index)
true iff the byte[] at that index is
 null. If isKeys() would return
 true then this method MUST return false since
 nulls are not permitted for B+Tree keys.index - The index in [0:size()-1].IndexOutOfBoundsException - unless index is in [0:size()-1].int length(int index)
index - The index in [0:size()-1].NullPointerException - if the key at that index is null.IndexOutOfBoundsException - unless index is in [0:size()-1].byte[] get(int index)
index - The index in [0:size()-1].null if a
         null value was stored at that index.IndexOutOfBoundsException - unless index is in [0:size()-1].int copy(int index,
       OutputStream os)
ByteArrayBuffer so that the same backing
 byte[] can be overwritten by each visited key.index - The index in [0:size()-1].out - The output stream onto which the key will be copied.IndexOutOfBoundsException - unless index is in [0:size()-1].NullPointerException - if the byte[] value at that index is null.RuntimeException - if the OutputStream throws an IOException
             (generally the OutputStream is writing onto a byte[]
             so it is more convenient to masquerade this exception).Iterator<byte[]> iterator()
null, then the iterator will report a null for
 that element.void set(int index,
       byte[] a)
index - The index in [0:size()-1].a - The byte[] value.IndexOutOfBoundsException - unless index is in [0:size()-1].IllegalArgumentException - if the value is null and null values are not
             supported by this implementation.int add(byte[] a)
a - A value.IllegalArgumentException - if the value is null and null values are not
             supported by this implementation.int add(byte[] value,
      int off,
      int len)
value - A valueoff - The offset of the first byte to be copied.len - The #of bytes to be copied.IllegalArgumentException - if the value is null.int add(DataInput in, int len) throws IOException
in - The input stream from which the byte[] will be read.len - The #of bytes to be read.IllegalArgumentException - if in is null.IOExceptionint search(byte[] searchKey)
entryIndex = -entryIndex - 1or just
entryIndex = -entryIndexif you are looking for the first key after the searchKey.
searchKey - The search key.(-(insertion point) - 1). The insertion point is
         defined as the point at which the key would be inserted. Note
         that this guarantees that the return value will be >= 0 if and
         only if the key is found.IllegalArgumentException - if the searchKey is null.UnsupportedOperationException - if search is not supported.Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.