Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

org.apache.derbyBuild
Class ODBCMetadataGenerator  view ODBCMetadataGenerator download ODBCMetadataGenerator.java

java.lang.Object
  extended byorg.apache.derbyBuild.ODBCMetadataGenerator

public class ODBCMetadataGenerator
extends java.lang.Object


Field Summary
private  byte ADD_COLUMN_CHANGE
           
private  java.util.HashMap changeMap
           
private  byte COL_RENAME_CHANGE
           
private  short FOLLOWING
           
private  java.lang.String NEW_COL_PLACEHOLDER
           
private  java.lang.String ODBC_QUERY_NOTICE
           
private  java.lang.String ODBC_QUERY_PREFIX
           
private  java.util.Properties odbcFragments
           
private  java.io.FileWriter odbcMetaFile
           
private  short PRECEDING
           
private  java.lang.String SUBQUERY_NAME
           
private  byte TYPE_VALUE_CHANGE
           
 
Constructor Summary
ODBCMetadataGenerator()
           
 
Method Summary
private  void addHelperColsToSubquery(java.lang.String queryName, java.lang.StringBuffer subqueryText, int insertPos)
           
private  void addNewColumnsForODBC(java.lang.String queryName, java.lang.StringBuffer newQueryText)
           
private  void changeColValueToODBC(java.lang.String queryName, java.lang.String colName, java.lang.StringBuffer newQueryText)
           
private  void changeValuesForODBC(java.lang.String queryName, java.lang.StringBuffer newQueryText)
           
private  java.lang.String extractColName(java.lang.String colDef)
           
private  void fragSubstitution(java.lang.String fragKey, java.lang.StringBuffer queryText)
           
 void generateODBCQueries(java.io.InputStream is)
           
private  void generateODBCQuery(java.lang.StringBuffer queryText)
           
private  void generateSELECTClause(java.lang.String queryName, java.util.ArrayList selectColDefs, java.lang.StringBuffer newQueryText)
           
private  java.lang.String getCastInfoForCol(java.lang.String queryName, java.lang.String colName)
           
private  java.lang.String getFragment(java.lang.String fragId)
           
private  int getSelectColDefinitions(java.lang.StringBuffer queryText, java.util.ArrayList colDefList)
           
private  void initChanges()
           
static void main(java.lang.String[] args)
           
private  void markNewColPosition(java.lang.String queryName, java.util.ArrayList selectColDefs)
           
private  int readLine(java.io.InputStream is, char[] line)
           
private  void renameColForODBC(java.lang.StringBuffer queryText, java.lang.String oldVal, java.lang.String newVal)
           
private  boolean renameColsForODBC(java.lang.String queryName, java.lang.StringBuffer queryText)
           
private  boolean stmtNeedsChange(java.lang.String queryName, byte changeType)
           
private  int trimIgnorable(short direction, char[] chars, int index)
           
private  int trimIgnorable(short direction, java.lang.String str, int index)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

COL_RENAME_CHANGE

private final byte COL_RENAME_CHANGE
See Also:
Constant Field Values

TYPE_VALUE_CHANGE

private final byte TYPE_VALUE_CHANGE
See Also:
Constant Field Values

ADD_COLUMN_CHANGE

private final byte ADD_COLUMN_CHANGE
See Also:
Constant Field Values

ODBC_QUERY_NOTICE

private final java.lang.String ODBC_QUERY_NOTICE
See Also:
Constant Field Values

ODBC_QUERY_PREFIX

private final java.lang.String ODBC_QUERY_PREFIX
See Also:
Constant Field Values

SUBQUERY_NAME

private final java.lang.String SUBQUERY_NAME
See Also:
Constant Field Values

NEW_COL_PLACEHOLDER

private final java.lang.String NEW_COL_PLACEHOLDER
See Also:
Constant Field Values

FOLLOWING

private final short FOLLOWING
See Also:
Constant Field Values

PRECEDING

private final short PRECEDING
See Also:
Constant Field Values

changeMap

private java.util.HashMap changeMap

odbcFragments

private java.util.Properties odbcFragments

odbcMetaFile

private java.io.FileWriter odbcMetaFile
Constructor Detail

ODBCMetadataGenerator

public ODBCMetadataGenerator()
                      throws java.io.IOException
Method Detail

main

public static void main(java.lang.String[] args)
                 throws java.io.IOException

initChanges

private void initChanges()

generateODBCQueries

public void generateODBCQueries(java.io.InputStream is)
                         throws java.io.IOException

generateODBCQuery

private void generateODBCQuery(java.lang.StringBuffer queryText)
                        throws java.io.IOException

renameColsForODBC

private boolean renameColsForODBC(java.lang.String queryName,
                                  java.lang.StringBuffer queryText)

renameColForODBC

private void renameColForODBC(java.lang.StringBuffer queryText,
                              java.lang.String oldVal,
                              java.lang.String newVal)

generateSELECTClause

private void generateSELECTClause(java.lang.String queryName,
                                  java.util.ArrayList selectColDefs,
                                  java.lang.StringBuffer newQueryText)

changeValuesForODBC

private void changeValuesForODBC(java.lang.String queryName,
                                 java.lang.StringBuffer newQueryText)

changeColValueToODBC

private void changeColValueToODBC(java.lang.String queryName,
                                  java.lang.String colName,
                                  java.lang.StringBuffer newQueryText)

getSelectColDefinitions

private int getSelectColDefinitions(java.lang.StringBuffer queryText,
                                    java.util.ArrayList colDefList)

addHelperColsToSubquery

private void addHelperColsToSubquery(java.lang.String queryName,
                                     java.lang.StringBuffer subqueryText,
                                     int insertPos)

extractColName

private java.lang.String extractColName(java.lang.String colDef)

getCastInfoForCol

private java.lang.String getCastInfoForCol(java.lang.String queryName,
                                           java.lang.String colName)

markNewColPosition

private void markNewColPosition(java.lang.String queryName,
                                java.util.ArrayList selectColDefs)

addNewColumnsForODBC

private void addNewColumnsForODBC(java.lang.String queryName,
                                  java.lang.StringBuffer newQueryText)

fragSubstitution

private void fragSubstitution(java.lang.String fragKey,
                              java.lang.StringBuffer queryText)

readLine

private int readLine(java.io.InputStream is,
                     char[] line)
              throws java.io.IOException

trimIgnorable

private int trimIgnorable(short direction,
                          char[] chars,
                          int index)

trimIgnorable

private int trimIgnorable(short direction,
                          java.lang.String str,
                          int index)

stmtNeedsChange

private boolean stmtNeedsChange(java.lang.String queryName,
                                byte changeType)

getFragment

private java.lang.String getFragment(java.lang.String fragId)