org.apache.derby.impl.sql.execute.xplain
Class XPLAINUtil

java.lang.Object
  extended by org.apache.derby.impl.sql.execute.xplain.XPLAINUtil

public class XPLAINUtil
extends java.lang.Object

This class contains helper methods, which support the System Table Visitor.


Field Summary
static java.lang.String CALL_STMT_TYPE
           
static java.lang.String DDL_STMT_TYPE
           
static java.lang.String DELETE_STMT_TYPE
           
static java.lang.String INSERT_STMT_TYPE
           
static java.lang.String ISOLATION_READ_COMMIT
           
static java.lang.String ISOLATION_READ_UNCOMMITED
          isolation level codes
static java.lang.String ISOLATION_REPEAT_READ
           
static java.lang.String ISOLATION_SERIALIZABLE
           
static java.lang.String LOCK_GRANULARITY_ROW
           
static java.lang.String LOCK_GRANULARITY_TABLE
          lock granularity
static java.lang.String LOCK_MODE_EXCLUSIVE
          lock modes
static java.lang.String LOCK_MODE_INSTANTENOUS_EXCLUSIVE
           
static java.lang.String LOCK_MODE_INSTANTENOUS_SHARE
           
static java.lang.String LOCK_MODE_SHARE
           
static java.lang.String NO_CODE
           
static java.lang.String OP_AGGREGATE
           
static java.lang.String OP_ANY
           
static java.lang.String OP_BULK
           
static java.lang.String OP_CASCADE
           
static java.lang.String OP_CONSTRAINTSCAN
           
static java.lang.String OP_CURRENT_OF
           
static java.lang.String OP_DELETE
           
static java.lang.String OP_DISTINCT
           
static java.lang.String OP_DISTINCTSCAN
           
static java.lang.String OP_FILTER
           
static java.lang.String OP_GROUP
           
static java.lang.String OP_HASHSCAN
           
static java.lang.String OP_HASHTABLE
           
static java.lang.String OP_INDEXSCAN
           
static java.lang.String OP_INSERT
           
static java.lang.String OP_JOIN_HASH
           
static java.lang.String OP_JOIN_HASH_LO
           
static java.lang.String OP_JOIN_NL
           
static java.lang.String OP_JOIN_NL_LO
           
static java.lang.String OP_LASTINDEXKEYSCAN
           
static java.lang.String OP_MATERIALIZE
           
static java.lang.String OP_NORMALIZE
           
static java.lang.String OP_ONCE
           
static java.lang.String OP_PROJ_RESTRICT
           
static java.lang.String OP_PROJECT
           
static java.lang.String OP_ROW
           
static java.lang.String OP_ROW_COUNT
           
static java.lang.String OP_ROWIDSCAN
           
static java.lang.String OP_SCROLL
           
static java.lang.String OP_SET
           
static java.lang.String OP_SET_EXCEPT
           
static java.lang.String OP_SET_INTERSECT
           
static java.lang.String OP_SORT
           
static java.lang.String OP_TABLESCAN
          the rs operator codes
static java.lang.String OP_UNION
           
static java.lang.String OP_UPDATE
           
static java.lang.String OP_VTI
           
static java.lang.String OP_VTI_RS
           
static java.lang.String OP_WINDOW
           
static java.lang.String SCAN_BITSET_ALL
           
static java.lang.String SCAN_BTREE
           
static java.lang.String SCAN_HEAP
          the scan info codes
static java.lang.String SCAN_SORT
           
static java.lang.String SELECT_APPROXIMATE_STMT_TYPE
           
static java.lang.String SELECT_STMT_TYPE
          the different statement type constants
static java.lang.String SORT_EXTERNAL
          sort info properties
static java.lang.String SORT_INTERNAL
           
static java.lang.String UPDATE_STMT_TYPE
           
static java.lang.String XPLAIN_FULL
           
static java.lang.String XPLAIN_ONLY
          the explain type constants
static java.lang.String YES_CODE
          yes no codes
 
Constructor Summary
XPLAINUtil()
           
 
Method Summary
static XPLAINScanPropsDescriptor extractScanProps(XPLAINScanPropsDescriptor descriptor, java.util.Properties scanProps)
          helper method which extracts the right (non-internationalzed) scan properties of the scan info properties
static XPLAINSortPropsDescriptor extractSortProps(XPLAINSortPropsDescriptor descriptor, java.util.Properties sortProps)
          helper method which extracts the right (non-internationalzed) sort properties of the sort info properties object
static java.lang.Long getAVGNextTime(long dividend, long divisor)
          Compute average, avoiding divide-by-zero problems.
static java.lang.String getHashKeyColumnNumberString(int[] hashKeyColumns)
           
static java.lang.String getIsolationLevelCode(java.lang.String isolationLevel)
          util function, to resolve the isolation level and return a isolation level code
static java.lang.String getLockGranularityCode(java.lang.String lockString)
          util function, to resolve the lock granularity and return a lock granularity code
static java.lang.String getLockModeCode(java.lang.String lockString)
          util function, to resolve the lock mode, and return a lock mode code
static java.lang.String getStatementType(java.lang.String SQLText)
          This method helps to figure out the statement type and returns an appropriate return code, characterizing the stmt type.
static java.lang.String getYesNoCharFromBoolean(boolean test)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ISOLATION_READ_UNCOMMITED

public static final java.lang.String ISOLATION_READ_UNCOMMITED
isolation level codes

See Also:
Constant Field Values

ISOLATION_READ_COMMIT

public static final java.lang.String ISOLATION_READ_COMMIT
See Also:
Constant Field Values

ISOLATION_REPEAT_READ

public static final java.lang.String ISOLATION_REPEAT_READ
See Also:
Constant Field Values

ISOLATION_SERIALIZABLE

public static final java.lang.String ISOLATION_SERIALIZABLE
See Also:
Constant Field Values

LOCK_MODE_EXCLUSIVE

public static final java.lang.String LOCK_MODE_EXCLUSIVE
lock modes

See Also:
Constant Field Values

LOCK_MODE_INSTANTENOUS_EXCLUSIVE

public static final java.lang.String LOCK_MODE_INSTANTENOUS_EXCLUSIVE
See Also:
Constant Field Values

LOCK_MODE_SHARE

public static final java.lang.String LOCK_MODE_SHARE
See Also:
Constant Field Values

LOCK_MODE_INSTANTENOUS_SHARE

public static final java.lang.String LOCK_MODE_INSTANTENOUS_SHARE
See Also:
Constant Field Values

LOCK_GRANULARITY_TABLE

public static final java.lang.String LOCK_GRANULARITY_TABLE
lock granularity

See Also:
Constant Field Values

LOCK_GRANULARITY_ROW

public static final java.lang.String LOCK_GRANULARITY_ROW
See Also:
Constant Field Values

OP_TABLESCAN

public static final java.lang.String OP_TABLESCAN
the rs operator codes

See Also:
Constant Field Values

OP_INDEXSCAN

public static final java.lang.String OP_INDEXSCAN
See Also:
Constant Field Values

OP_HASHSCAN

public static final java.lang.String OP_HASHSCAN
See Also:
Constant Field Values

OP_DISTINCTSCAN

public static final java.lang.String OP_DISTINCTSCAN
See Also:
Constant Field Values

OP_LASTINDEXKEYSCAN

public static final java.lang.String OP_LASTINDEXKEYSCAN
See Also:
Constant Field Values

OP_HASHTABLE

public static final java.lang.String OP_HASHTABLE
See Also:
Constant Field Values

OP_ROWIDSCAN

public static final java.lang.String OP_ROWIDSCAN
See Also:
Constant Field Values

OP_CONSTRAINTSCAN

public static final java.lang.String OP_CONSTRAINTSCAN
See Also:
Constant Field Values

OP_JOIN_NL

public static final java.lang.String OP_JOIN_NL
See Also:
Constant Field Values

OP_JOIN_HASH

public static final java.lang.String OP_JOIN_HASH
See Also:
Constant Field Values

OP_JOIN_NL_LO

public static final java.lang.String OP_JOIN_NL_LO
See Also:
Constant Field Values

OP_JOIN_HASH_LO

public static final java.lang.String OP_JOIN_HASH_LO
See Also:
Constant Field Values

OP_UNION

public static final java.lang.String OP_UNION
See Also:
Constant Field Values

OP_SET

public static final java.lang.String OP_SET
See Also:
Constant Field Values

OP_SET_INTERSECT

public static final java.lang.String OP_SET_INTERSECT
See Also:
Constant Field Values

OP_SET_EXCEPT

public static final java.lang.String OP_SET_EXCEPT
See Also:
Constant Field Values

OP_INSERT

public static final java.lang.String OP_INSERT
See Also:
Constant Field Values

OP_UPDATE

public static final java.lang.String OP_UPDATE
See Also:
Constant Field Values

OP_DELETE

public static final java.lang.String OP_DELETE
See Also:
Constant Field Values

OP_CASCADE

public static final java.lang.String OP_CASCADE
See Also:
Constant Field Values

OP_VTI

public static final java.lang.String OP_VTI
See Also:
Constant Field Values

OP_BULK

public static final java.lang.String OP_BULK
See Also:
Constant Field Values

OP_DISTINCT

public static final java.lang.String OP_DISTINCT
See Also:
Constant Field Values

OP_NORMALIZE

public static final java.lang.String OP_NORMALIZE
See Also:
Constant Field Values

OP_ANY

public static final java.lang.String OP_ANY
See Also:
Constant Field Values

OP_SCROLL

public static final java.lang.String OP_SCROLL
See Also:
Constant Field Values

OP_MATERIALIZE

public static final java.lang.String OP_MATERIALIZE
See Also:
Constant Field Values

OP_ONCE

public static final java.lang.String OP_ONCE
See Also:
Constant Field Values

OP_VTI_RS

public static final java.lang.String OP_VTI_RS
See Also:
Constant Field Values

OP_ROW

public static final java.lang.String OP_ROW
See Also:
Constant Field Values

OP_PROJECT

public static final java.lang.String OP_PROJECT
See Also:
Constant Field Values

OP_FILTER

public static final java.lang.String OP_FILTER
See Also:
Constant Field Values

OP_AGGREGATE

public static final java.lang.String OP_AGGREGATE
See Also:
Constant Field Values

OP_PROJ_RESTRICT

public static final java.lang.String OP_PROJ_RESTRICT
See Also:
Constant Field Values

OP_SORT

public static final java.lang.String OP_SORT
See Also:
Constant Field Values

OP_GROUP

public static final java.lang.String OP_GROUP
See Also:
Constant Field Values

OP_CURRENT_OF

public static final java.lang.String OP_CURRENT_OF
See Also:
Constant Field Values

OP_ROW_COUNT

public static final java.lang.String OP_ROW_COUNT
See Also:
Constant Field Values

OP_WINDOW

public static final java.lang.String OP_WINDOW
See Also:
Constant Field Values

SCAN_HEAP

public static final java.lang.String SCAN_HEAP
the scan info codes

See Also:
Constant Field Values

SCAN_BTREE

public static final java.lang.String SCAN_BTREE
See Also:
Constant Field Values

SCAN_SORT

public static final java.lang.String SCAN_SORT
See Also:
Constant Field Values

SCAN_BITSET_ALL

public static final java.lang.String SCAN_BITSET_ALL
See Also:
Constant Field Values

SELECT_STMT_TYPE

public static final java.lang.String SELECT_STMT_TYPE
the different statement type constants

See Also:
Constant Field Values

SELECT_APPROXIMATE_STMT_TYPE

public static final java.lang.String SELECT_APPROXIMATE_STMT_TYPE
See Also:
Constant Field Values

INSERT_STMT_TYPE

public static final java.lang.String INSERT_STMT_TYPE
See Also:
Constant Field Values

UPDATE_STMT_TYPE

public static final java.lang.String UPDATE_STMT_TYPE
See Also:
Constant Field Values

DELETE_STMT_TYPE

public static final java.lang.String DELETE_STMT_TYPE
See Also:
Constant Field Values

CALL_STMT_TYPE

public static final java.lang.String CALL_STMT_TYPE
See Also:
Constant Field Values

DDL_STMT_TYPE

public static final java.lang.String DDL_STMT_TYPE
See Also:
Constant Field Values

XPLAIN_ONLY

public static final java.lang.String XPLAIN_ONLY
the explain type constants

See Also:
Constant Field Values

XPLAIN_FULL

public static final java.lang.String XPLAIN_FULL
See Also:
Constant Field Values

SORT_EXTERNAL

public static final java.lang.String SORT_EXTERNAL
sort info properties

See Also:
Constant Field Values

SORT_INTERNAL

public static final java.lang.String SORT_INTERNAL
See Also:
Constant Field Values

YES_CODE

public static final java.lang.String YES_CODE
yes no codes

See Also:
Constant Field Values

NO_CODE

public static final java.lang.String NO_CODE
See Also:
Constant Field Values
Constructor Detail

XPLAINUtil

public XPLAINUtil()
Method Detail

getYesNoCharFromBoolean

public static java.lang.String getYesNoCharFromBoolean(boolean test)

getHashKeyColumnNumberString

public static java.lang.String getHashKeyColumnNumberString(int[] hashKeyColumns)

getLockModeCode

public static java.lang.String getLockModeCode(java.lang.String lockString)
util function, to resolve the lock mode, and return a lock mode code


getIsolationLevelCode

public static java.lang.String getIsolationLevelCode(java.lang.String isolationLevel)
util function, to resolve the isolation level and return a isolation level code


getLockGranularityCode

public static java.lang.String getLockGranularityCode(java.lang.String lockString)
util function, to resolve the lock granularity and return a lock granularity code


getStatementType

public static java.lang.String getStatementType(java.lang.String SQLText)
This method helps to figure out the statement type and returns an appropriate return code, characterizing the stmt type.


extractScanProps

public static XPLAINScanPropsDescriptor extractScanProps(XPLAINScanPropsDescriptor descriptor,
                                                         java.util.Properties scanProps)
helper method which extracts the right (non-internationalzed) scan properties of the scan info properties

Parameters:
descriptor - the descriptor to fill with properties
scanProps - the provided scan props
Returns:
the filled descriptor

extractSortProps

public static XPLAINSortPropsDescriptor extractSortProps(XPLAINSortPropsDescriptor descriptor,
                                                         java.util.Properties sortProps)
helper method which extracts the right (non-internationalzed) sort properties of the sort info properties object

Parameters:
descriptor - the descriptor to fill with properties
sortProps - the provided sort props
Returns:
the filled descriptor

getAVGNextTime

public static java.lang.Long getAVGNextTime(long dividend,
                                            long divisor)
Compute average, avoiding divide-by-zero problems.

Parameters:
dividend - the long value for the dividend (the whole next time)
divisor - the long value for the divisor (the sum of all rows seen)
Returns:
the quotient or null

Built on Thu 2011-03-10 11:54:14+0000, from revision ???

Apache Derby V10.6 Internals - Copyright © 2004,2007 The Apache Software Foundation. All Rights Reserved.