com.bigdata.btree.raba
Class ReadOnlyKeysRaba

java.lang.Object
  extended by com.bigdata.btree.raba.AbstractRaba
      extended by com.bigdata.btree.raba.ReadOnlyKeysRaba
All Implemented Interfaces:
IRaba, Iterable<byte[]>

public class ReadOnlyKeysRaba
extends AbstractRaba

Immutable implementation does not allow nulls but supports search.

Version:
$Id: ReadOnlyKeysRaba.java 2265 2009-10-26 12:51:06Z thompsonbry $
Author:
Bryan Thompson

Field Summary
static ReadOnlyKeysRaba EMPTY
          A read-only empty keys raba.
 
Fields inherited from class com.bigdata.btree.raba.AbstractRaba
a, capacity, fromIndex, toIndex
 
Constructor Summary
ReadOnlyKeysRaba(byte[][] a)
          Create a view of a byte[][].
ReadOnlyKeysRaba(int size, byte[][] a)
          Create a view of a byte[][].
ReadOnlyKeysRaba(int fromIndex, int toIndex, byte[][] a)
          Create a view of a byte[][] slice.
ReadOnlyKeysRaba(int fromIndex, int toIndex, int capacity, byte[][] a)
          Create a view from a slice of a byte[][].
 
Method Summary
protected  boolean assertTotalOrder(int fromIndex, int toIndex, byte[][] a)
          Asserts that the unsigned byte[]s in the logical byte[][] are in a total order.
 boolean isKeys()
          For B+Tree keys (does not allow nulls, is searchable).
 boolean isReadOnly()
          This view is read-only.
 
Methods inherited from class com.bigdata.btree.raba.AbstractRaba
add, add, add, assertNotFull, assertNotReadOnly, assertNullAllowed, capacity, copy, get, isEmpty, isFull, isNull, iterator, length, rangeCheck, resize, search, set, size, toString, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

EMPTY

public static final transient ReadOnlyKeysRaba EMPTY
A read-only empty keys raba.

Constructor Detail

ReadOnlyKeysRaba

public ReadOnlyKeysRaba(byte[][] a)
Create a view of a byte[][]. All elements in the array are visible in the view.

Parameters:
a - The backing byte[][].

ReadOnlyKeysRaba

public ReadOnlyKeysRaba(int size,
                        byte[][] a)
Create a view of a byte[][]. All elements in the array are visible in the view. The elements in the array from index ZERO (0) through index size-1 are assumed to have valid data.

Parameters:
size - The #of elements with valid data.
a - The backing byte[][].

ReadOnlyKeysRaba

public ReadOnlyKeysRaba(int fromIndex,
                        int toIndex,
                        byte[][] a)
Create a view of a byte[][] slice. The slice will include only those elements between the fromIndex and the toIndex. The capacity will be the #of elements. AbstractRaba.isFull() will report true .

Note: This constructor is used when we split an IKeyArrayIndexProcedure based on a key-range partitioned index.

Parameters:
fromIndex - The index of the first visible in the view (inclusive lower bound).
toIndex - The index of the first element beyond the view (exclusive upper bound). If toIndex == fromIndex then the view is empty.
a - The backing byte[][].

ReadOnlyKeysRaba

public ReadOnlyKeysRaba(int fromIndex,
                        int toIndex,
                        int capacity,
                        byte[][] a)
Create a view from a slice of a byte[][].

Parameters:
fromIndex - The index of the first element in the byte[][] which is visible in the view (inclusive lower bound).
toIndex - The index of the first element in the byte[][] which lies beyond the view (exclusive upper bound).
capacity - The #of elements which may be used in the view.
a - The backing byte[][].
Method Detail

isReadOnly

public final boolean isReadOnly()
This view is read-only.


isKeys

public final boolean isKeys()
For B+Tree keys (does not allow nulls, is searchable).

Returns:
true if the IRaba represents B+Tree keys and false if it represents B+Tree values.

assertTotalOrder

protected boolean assertTotalOrder(int fromIndex,
                                   int toIndex,
                                   byte[][] a)
Asserts that the unsigned byte[]s in the logical byte[][] are in a total order.

Parameters:
fromIndex - The first index in the view (inclusive lower bound).
toIndex - The first index outside the view (exclusive upper bound).
a - The backing byte[][].
Returns:
true if the total ordering constraint is respected by the data.


Copyright © 2006-2009 SYSTAP, LLC. All Rights Reserved.