org.h2.index
Class IndexType

java.lang.Object
  extended by org.h2.index.IndexType

public class IndexType
extends java.lang.Object

Represents information about the properties of an index


Constructor Summary
IndexType()
           
 
Method Summary
static IndexType createNonUnique(boolean persistent)
          Create a non-unique index.
static IndexType createNonUnique(boolean persistent, boolean hash)
          Create a non-unique index.
static IndexType createPrimaryKey(boolean persistent, boolean hash)
          Create a primary key index.
static IndexType createScan(boolean persistent)
          Create a scan pseudo-index.
static IndexType createUnique(boolean persistent, boolean hash)
          Create a unique index.
 boolean getBelongsToConstraint()
          If the index is created because of a constraint.
 java.lang.String getSQL()
          Get the SQL snippet to create such an index.
 boolean isHash()
          Is this a hash index?
 boolean isPersistent()
          Is this index persistent?
 boolean isPrimaryKey()
          Does this index belong to a primary key constraint?
 boolean isScan()
          Is this a table scan pseudo-index?
 boolean isUnique()
          Is this a unique index?
 void setBelongsToConstraint(boolean belongsToConstraint)
          Sets if this index belongs to a constraint.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IndexType

public IndexType()
Method Detail

createPrimaryKey

public static IndexType createPrimaryKey(boolean persistent,
                                         boolean hash)
Create a primary key index.

Parameters:
persistent - if the index is persistent
hash - if a hash index should be used
Returns:
the index type

createUnique

public static IndexType createUnique(boolean persistent,
                                     boolean hash)
Create a unique index.

Parameters:
persistent - if the index is persistent
hash - if a hash index should be used
Returns:
the index type

createNonUnique

public static IndexType createNonUnique(boolean persistent)
Create a non-unique index.

Parameters:
persistent - if the index is persistent
Returns:
the index type

createNonUnique

public static IndexType createNonUnique(boolean persistent,
                                        boolean hash)
Create a non-unique index.

Parameters:
persistent - if the index is persistent
hash - if a hash index should be used
Returns:
the index type

createScan

public static IndexType createScan(boolean persistent)
Create a scan pseudo-index.

Parameters:
persistent - if the index is persistent
Returns:
the index type

setBelongsToConstraint

public void setBelongsToConstraint(boolean belongsToConstraint)
Sets if this index belongs to a constraint.

Parameters:
belongsToConstraint - if the index belongs to a constraint

getBelongsToConstraint

public boolean getBelongsToConstraint()
If the index is created because of a constraint. Such indexes are to be dropped once the constraint is dropped.

Returns:
if the index belongs to a constraint

isHash

public boolean isHash()
Is this a hash index?

Returns:
true if it is a hash index

isPersistent

public boolean isPersistent()
Is this index persistent?

Returns:
true if it is persistent

isPrimaryKey

public boolean isPrimaryKey()
Does this index belong to a primary key constraint?

Returns:
true if it references a primary key constraint

isUnique

public boolean isUnique()
Is this a unique index?

Returns:
true if it is

getSQL

public java.lang.String getSQL()
Get the SQL snippet to create such an index.

Returns:
the SQL snippet

isScan

public boolean isScan()
Is this a table scan pseudo-index?

Returns:
true if it is