[teiid-commits] teiid SVN: r2001 - in trunk: client/src/test/java/org/teiid/jdbc and 34 other directories.

teiid-commits at lists.jboss.org teiid-commits at lists.jboss.org
Thu Mar 25 12:56:08 EDT 2010


Author: shawkins
Date: 2010-03-25 12:55:55 -0400 (Thu, 25 Mar 2010)
New Revision: 2001

Added:
   trunk/common-core/src/main/java/com/metamatrix/common/types/JDBCSQLTypeInfo.java
Removed:
   trunk/common-core/src/main/java/com/metamatrix/common/types/MMJDBCSQLTypeInfo.java
   trunk/test-integration/db/src/main/java/org/teiid/jdbc/
Modified:
   trunk/client/src/main/java/org/teiid/jdbc/CallableStatementImpl.java
   trunk/client/src/main/java/org/teiid/jdbc/DataTypeTransformer.java
   trunk/client/src/main/java/org/teiid/jdbc/DatabaseMetaDataImpl.java
   trunk/client/src/main/java/org/teiid/jdbc/ParameterMetaDataImpl.java
   trunk/client/src/main/java/org/teiid/jdbc/PreparedStatementImpl.java
   trunk/client/src/main/java/org/teiid/jdbc/ResultSetImpl.java
   trunk/client/src/main/java/org/teiid/jdbc/ResultSetMetaDataImpl.java
   trunk/client/src/test/java/org/teiid/jdbc/TestAllResultsImpl.java
   trunk/client/src/test/java/org/teiid/jdbc/TestMMCallableStatement.java
   trunk/common-core/src/main/java/com/metamatrix/common/types/ClobType.java
   trunk/common-core/src/main/java/com/metamatrix/common/types/DataTypeManager.java
   trunk/common-core/src/main/java/com/metamatrix/common/types/StandardXMLTranslator.java
   trunk/common-core/src/test/java/com/metamatrix/common/types/TestDataTypeManager.java
   trunk/common-core/src/test/java/com/metamatrix/common/types/TestXMLStreamSourceTranslator.java
   trunk/connector-api/src/main/java/org/teiid/connector/api/TypeFacility.java
   trunk/connectors/connector-xml-file/src/main/java/org/teiid/connector/xmlsource/file/FileProcedureExecution.java
   trunk/connectors/connector-xml-file/src/test/java/org/teiid/connector/xmlsource/file/TestFileExecution.java
   trunk/engine/src/main/java/com/metamatrix/common/buffer/impl/BufferManagerImpl.java
   trunk/engine/src/main/java/com/metamatrix/common/log/LogConstants.java
   trunk/engine/src/main/java/com/metamatrix/query/analysis/AnalysisRecord.java
   trunk/engine/src/main/java/com/metamatrix/query/analysis/QueryAnnotation.java
   trunk/engine/src/main/java/com/metamatrix/query/optimizer/QueryOptimizer.java
   trunk/engine/src/main/java/com/metamatrix/query/optimizer/proc/ProcedurePlanner.java
   trunk/engine/src/main/java/com/metamatrix/query/optimizer/relational/RelationalPlanner.java
   trunk/engine/src/main/java/com/metamatrix/query/optimizer/relational/rules/RuleChooseDependent.java
   trunk/engine/src/main/java/org/teiid/dqp/internal/datamgr/impl/ConnectorManager.java
   trunk/engine/src/main/java/org/teiid/dqp/internal/process/DQPCore.java
   trunk/engine/src/main/java/org/teiid/dqp/internal/process/Request.java
   trunk/engine/src/main/java/org/teiid/dqp/internal/process/validator/AuthorizationValidationVisitor.java
   trunk/engine/src/test/java/com/metamatrix/query/analysis/TestAnalysisRecord.java
   trunk/engine/src/test/java/com/metamatrix/query/optimizer/TestOptimizer.java
   trunk/engine/src/test/java/com/metamatrix/query/optimizer/batch/TestBatchedUpdatePlanner.java
   trunk/engine/src/test/java/com/metamatrix/query/optimizer/proc/TestProcedurePlanner.java
   trunk/engine/src/test/java/com/metamatrix/query/optimizer/relational/TestMaterialization.java
   trunk/engine/src/test/java/com/metamatrix/query/optimizer/relational/rules/TestRuleAccessPatternValidation.java
   trunk/engine/src/test/java/com/metamatrix/query/optimizer/relational/rules/TestRuleChooseDependent.java
   trunk/engine/src/test/java/com/metamatrix/query/optimizer/xml/TestXMLPlanner.java
   trunk/engine/src/test/java/com/metamatrix/query/processor/TestProcessor.java
   trunk/engine/src/test/java/com/metamatrix/query/processor/dynamic/TestSqlEval.java
   trunk/engine/src/test/java/com/metamatrix/query/processor/proc/TestProcedureProcessor.java
   trunk/engine/src/test/java/com/metamatrix/query/processor/xml/TestXMLProcessor.java
   trunk/engine/src/test/java/org/teiid/dqp/internal/process/TestPreparedPlanCache.java
   trunk/engine/src/test/java/org/teiid/dqp/internal/process/multisource/TestMultiSourcePlanToProcessConverter.java
   trunk/jboss-integration/src/main/java/org/teiid/jboss/deployers/RuntimeEngineDeployer.java
   trunk/runtime/src/main/java/org/teiid/deployers/VDBRepository.java
   trunk/runtime/src/main/java/org/teiid/logging/Log4JUtil.java
   trunk/runtime/src/main/java/org/teiid/services/SessionServiceImpl.java
   trunk/runtime/src/main/java/org/teiid/services/TeiidLoginContext.java
   trunk/test-integration/common/src/test/java/org/teiid/dqp/internal/process/BaseQueryTest.java
Log:
TEIID-1026 correcting some logging logic and making expanded use of of the analysisrecord

Modified: trunk/client/src/main/java/org/teiid/jdbc/CallableStatementImpl.java
===================================================================
--- trunk/client/src/main/java/org/teiid/jdbc/CallableStatementImpl.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/client/src/main/java/org/teiid/jdbc/CallableStatementImpl.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -111,14 +111,6 @@
         super.close();
     }
 
-    /**
-     * <p>Gets the value of a OUTPUT parameter as a java.math.BigDecimal object with
-     * scale digits to the right of the decimal point.
-     * @param parameterIndex whose value is to be fetched from the result.
-     * @return The parameter at the given index is returned as an BigDecimal object.
-     * @throws SQLException if param datatype is not NUMERIC
-     * @deprecated
-     */
     public java.math.BigDecimal getBigDecimal(int parameterIndex, int scale) throws SQLException {
         BigDecimal bigDecimalParam = DataTypeTransformer.getBigDecimal(getObject(parameterIndex));
 
@@ -428,7 +420,7 @@
 	}
 
 	public byte[] getBytes(int parameterIndex) throws SQLException {
-		throw SqlUtil.createFeatureNotSupportedException();
+		return DataTypeTransformer.getBytes(getObject(parameterIndex)); 
 	}
 
 	public byte[] getBytes(String parameterName) throws SQLException {
@@ -436,7 +428,7 @@
 	}
 
 	public Reader getCharacterStream(int parameterIndex) throws SQLException {
-		throw SqlUtil.createFeatureNotSupportedException();
+		return DataTypeTransformer.getCharacterStream(getObject(parameterIndex));
 	}
 
 	public Reader getCharacterStream(String parameterName) throws SQLException {

Modified: trunk/client/src/main/java/org/teiid/jdbc/DataTypeTransformer.java
===================================================================
--- trunk/client/src/main/java/org/teiid/jdbc/DataTypeTransformer.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/client/src/main/java/org/teiid/jdbc/DataTypeTransformer.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -22,6 +22,8 @@
 
 package org.teiid.jdbc;
 
+import java.io.Reader;
+import java.io.StringReader;
 import java.math.BigDecimal;
 import java.sql.Blob;
 import java.sql.Clob;
@@ -267,4 +269,20 @@
     static final SQLXML getSQLXML(Object value) throws SQLException {
     	return transform(value, SQLXML.class, DefaultDataClasses.XML, "SQLXML"); //$NON-NLS-1$
     }
+    
+    static final Reader getCharacterStream(Object value) throws SQLException {
+    	if (value == null) {
+			return null;
+		}
+
+		if (value instanceof Clob) {
+			return ((Clob) value).getCharacterStream();
+		}
+		
+		if (value instanceof SQLXML) {
+			return ((SQLXML)value).getCharacterStream();
+		}
+		
+		return new StringReader(getString(value));
+    }
 }
\ No newline at end of file

Modified: trunk/client/src/main/java/org/teiid/jdbc/DatabaseMetaDataImpl.java
===================================================================
--- trunk/client/src/main/java/org/teiid/jdbc/DatabaseMetaDataImpl.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/client/src/main/java/org/teiid/jdbc/DatabaseMetaDataImpl.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -42,7 +42,7 @@
 import org.teiid.client.metadata.ResultsMetadataDefaults;
 
 import com.metamatrix.common.types.DataTypeManager;
-import com.metamatrix.common.types.MMJDBCSQLTypeInfo;
+import com.metamatrix.common.types.JDBCSQLTypeInfo;
 import com.metamatrix.common.util.SqlUtil;
 import com.metamatrix.core.CoreConstants;
 import com.metamatrix.core.MetaMatrixRuntimeException;
@@ -120,7 +120,7 @@
     private static final String PRECISION_MAPPING;
 
     static {
-        String[] internalTypes = MMJDBCSQLTypeInfo.getMMTypeNames();
+        String[] internalTypes = JDBCSQLTypeInfo.getMMTypeNames();
         StringBuffer typeMapping = new StringBuffer();
         StringBuffer precisionMapping = new StringBuffer();
         for (int i = 0; i < internalTypes.length; i++) {
@@ -128,7 +128,7 @@
                 typeMapping.append(","); //$NON-NLS-1$
                 precisionMapping.append(","); //$NON-NLS-1$
             }
-            typeMapping.append(internalTypes[i]).append(",").append(MMJDBCSQLTypeInfo.getSQLType(internalTypes[i])); //$NON-NLS-1$
+            typeMapping.append(internalTypes[i]).append(",").append(JDBCSQLTypeInfo.getSQLType(internalTypes[i])); //$NON-NLS-1$
             precisionMapping.append(internalTypes[i]).append(",").append(ResultsMetadataDefaults.getDefaultPrecision(internalTypes[i])); //$NON-NLS-1$
         }
         TYPE_MAPPING = typeMapping.toString();
@@ -394,35 +394,35 @@
 
         // HardCoding metadata details for SCOPE column
         metadataList[0] = getColumnMetadata(null, JDBCColumnNames.BEST_ROW.SCOPE,
-                            MMJDBCSQLTypeInfo.SHORT,  ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
+                            JDBCSQLTypeInfo.SHORT,  ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
 
         // HardCoding metadata details for COLUMN_NAME column
         metadataList[1] = getColumnMetadata(null, JDBCColumnNames.BEST_ROW.COLUMN_NAME,
-                            MMJDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
+                            JDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
 
         // HardCoding metadata details for DATA_TYPE column
         metadataList[2] = getColumnMetadata(null, JDBCColumnNames.BEST_ROW.DATA_TYPE,
-                            MMJDBCSQLTypeInfo.SHORT, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
+                            JDBCSQLTypeInfo.SHORT, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
 
         // HardCoding metadata details for TYPE_NAME column
         metadataList[3] = getColumnMetadata(null, JDBCColumnNames.BEST_ROW.TYPE_NAME,
-                            MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
+                            JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
 
         // HardCoding metadata details for COLUMN_SIZE column
         metadataList[4] = getColumnMetadata(null, JDBCColumnNames.BEST_ROW.COLUMN_SIZE,
-                            MMJDBCSQLTypeInfo.INTEGER, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
+                            JDBCSQLTypeInfo.INTEGER, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
 
         // HardCoding metadata details for BUFFER_LENGTH column
         metadataList[5] = getColumnMetadata(null, JDBCColumnNames.BEST_ROW.BUFFER_LENGTH,
-                            MMJDBCSQLTypeInfo.INTEGER, ResultsMetadataConstants.NULL_TYPES.NULLABLE);
+                            JDBCSQLTypeInfo.INTEGER, ResultsMetadataConstants.NULL_TYPES.NULLABLE);
 
         // HardCoding metadata details for DECIMAL_DIGITS column
         metadataList[6] = getColumnMetadata(null, JDBCColumnNames.BEST_ROW.DECIMAL_DIGITS,
-                            MMJDBCSQLTypeInfo.SHORT, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
+                            JDBCSQLTypeInfo.SHORT, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
 
         // HardCoding metadata details for PSEUDO_COLUMN column
         metadataList[7] = getColumnMetadata(null, JDBCColumnNames.BEST_ROW.PSEUDO_COLUMN,
-                            MMJDBCSQLTypeInfo.SHORT, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
+                            JDBCSQLTypeInfo.SHORT, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
 
         // logging
         String logMsg = JDBCPlugin.Util.getString("MMDatabaseMetadata.Best_row_sucess", table); //$NON-NLS-1$
@@ -443,7 +443,7 @@
 
         // HardCoding metadata details for TABLE_CAT column
         metadataList[0] = getColumnMetadata(null, JDBCColumnNames.CATALOGS.TABLE_CAT, 
-                            MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE);
+                            JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE);
 
         // logging
         String logMsg = JDBCPlugin.Util.getString("MMDatabaseMetadata.Catalog_success"); //$NON-NLS-1$
@@ -526,21 +526,21 @@
         Map[] metadataList = new Map[8];
 
         metadataList[0] = getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.TABLE_CAT,
-                            MMJDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE);
+                            JDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE);
         metadataList[1] = getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.TABLE_SCHEM,
-                            MMJDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE);
+                            JDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE);
         metadataList[2] = getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.TABLE_NAME,
-                            MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
+                            JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
         metadataList[3] = getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.COLUMN_NAME,
-                             MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
+                             JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
         metadataList[4] = getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.GRANTOR,
-                            MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE);
+                            JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE);
         metadataList[5] = getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.GRANTEE,
-                            MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
+                            JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
         metadataList[6] = getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.PRIVILEGE,
-                            MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
+                            JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
         metadataList[7] = getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.IS_GRANTABLE,
-                            MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE);
+                            JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE);
        
         return createResultSet(records, metadataList);
         
@@ -1364,19 +1364,19 @@
 
         // HardCoding metadata details for TABLE_CAT column
         metadataList[0] = getColumnMetadata(null, JDBCColumnNames.SUPER_TABLES.TABLE_CAT,
-                            MMJDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE);
+                            JDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE);
 
         // HardCoding metadata details for TABLE_SCHEM column
         metadataList[1] = getColumnMetadata(null, JDBCColumnNames.SUPER_TABLES.TABLE_SCHEM,
-                            MMJDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE);
+                            JDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE);
 
         // HardCoding metadata details for TABLE_NAME column
         metadataList[2] = getColumnMetadata(null, JDBCColumnNames.SUPER_TABLES.TABLE_NAME,
-                            MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
+                            JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
 
         // HardCoding metadata details for SUPERTABLE_NAME column
         metadataList[3] = getColumnMetadata(null, JDBCColumnNames.SUPER_TABLES.SUPERTABLE_NAME,
-                            MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
+                            JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
 
         // construct results object from column values and their metadata
         return createResultSet(records, metadataList);
@@ -1402,27 +1402,27 @@
 
         // HardCoding metadata details for TYPE_CAT column
         metadataList[0] = getColumnMetadata(null, JDBCColumnNames.SUPER_TYPES.TYPE_CAT,
-                            MMJDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE);
+                            JDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE);
 
         // HardCoding metadata details for TYPE_SCHEM column
         metadataList[1] = getColumnMetadata(null, JDBCColumnNames.SUPER_TYPES.TYPE_SCHEM,
-                            MMJDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE);
+                            JDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE);
 
         // HardCoding metadata details for TYPE_NAME column
         metadataList[2] = getColumnMetadata(null, JDBCColumnNames.SUPER_TYPES.TYPE_NAME,
-                            MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
+                            JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
 
         // HardCoding metadata details for SUPERTYPE_CAT column
         metadataList[3] = getColumnMetadata(null, JDBCColumnNames.SUPER_TYPES.SUPERTYPE_CAT,
-                            MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE);
+                            JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE);
 
         // HardCoding metadata details for SUPERTYPE_SCHEM column
         metadataList[4] = getColumnMetadata(null, JDBCColumnNames.SUPER_TYPES.SUPERTYPE_SCHEM,
-                            MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE);
+                            JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE);
         
         // HardCoding metadata details for SUPERTYPE_NAME column
         metadataList[5] = getColumnMetadata(null, JDBCColumnNames.SUPER_TYPES.SUPERTYPE_NAME,
-                            MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
+                            JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
         
         // construct results object from column values and their metadata
         return createResultSet(records, metadataList);
@@ -1440,19 +1440,19 @@
         Map[] metadataList = new Map[7];
 
         metadataList[0] = getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.TABLE_CAT,
-                            MMJDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE);
+                            JDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE);
         metadataList[1] = getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.TABLE_SCHEM,
-                            MMJDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE);
+                            JDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE);
         metadataList[2] = getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.TABLE_NAME,
-                            MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
+                            JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
         metadataList[3] = getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.GRANTOR,
-                            MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE);
+                            JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE);
         metadataList[4] = getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.GRANTEE,
-                            MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
+                            JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
         metadataList[5] = getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.PRIVILEGE,
-                            MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
+                            JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
         metadataList[6] = getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.IS_GRANTABLE,
-                            MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE);
+                            JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE);
        
         return createResultSet(records, metadataList);
         
@@ -1576,7 +1576,7 @@
         Map[] metadataList = new Map[1];
 
         metadataList[0] = getColumnMetadata(null, JDBCColumnNames.TABLE_TYPES.TABLE_TYPE, 
-                            MMJDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
+                            JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL);
 
         logger.fine(JDBCPlugin.Util.getString("MMDatabaseMetadata.getTableType_success")); //$NON-NLS-1$
 
@@ -1614,24 +1614,24 @@
 
         Map[] metadataList = new Map[18];
 
-        metadataList[0] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.TYPE_NAME, MMJDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NOT_NULL, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE);//$NON-NLS-1$ 
-        metadataList[1] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.DATA_TYPE, MMJDBCSQLTypeInfo.INTEGER,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
-        metadataList[2] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.PRECISION, MMJDBCSQLTypeInfo.INTEGER,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
-        metadataList[3] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.LITERAL_PREFIX, MMJDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE,  ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
-        metadataList[4] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.LITERAL_SUFFIX, MMJDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE,  ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
-        metadataList[5] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.CREATE_PARAMS, MMJDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE,  ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
-        metadataList[6] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.NULLABLE, MMJDBCSQLTypeInfo.SHORT,  ResultsMetadataConstants.NULL_TYPES.NULLABLE,  ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
-        metadataList[7] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.CASE_SENSITIVE, MMJDBCSQLTypeInfo.BOOLEAN,  ResultsMetadataConstants.NULL_TYPES.NOT_NULL, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.FALSE, Boolean.TRUE);//$NON-NLS-1$ 
-        metadataList[8] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.SEARCHABLE, MMJDBCSQLTypeInfo.SHORT,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
-        metadataList[9] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.UNSIGNED_ATTRIBUTE, MMJDBCSQLTypeInfo.BOOLEAN,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
-        metadataList[10] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.FIXED_PREC_SCALE, MMJDBCSQLTypeInfo.BOOLEAN,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$
-        metadataList[11] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.AUTOINCREMENT, MMJDBCSQLTypeInfo.BOOLEAN,  ResultsMetadataConstants.NULL_TYPES.NOT_NULL, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.TRUE, Boolean.TRUE);//$NON-NLS-1$ 
-        metadataList[12] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.LOCAL_TYPE_NAME, MMJDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NOT_NULL, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE);//$NON-NLS-1$ 
-        metadataList[13] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.MINIMUM_SCALE, MMJDBCSQLTypeInfo.SHORT,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
-        metadataList[14] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.MAXIMUM_SCALE, MMJDBCSQLTypeInfo.SHORT,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
-        metadataList[15] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.SQL_DATA_TYPE, MMJDBCSQLTypeInfo.INTEGER,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
-        metadataList[16] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.SQL_DATETIME_SUB, MMJDBCSQLTypeInfo.INTEGER,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
-        metadataList[17] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.NUM_PREC_RADIX, MMJDBCSQLTypeInfo.INTEGER,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE);//$NON-NLS-1$ 
+        metadataList[0] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.TYPE_NAME, JDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NOT_NULL, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE);//$NON-NLS-1$ 
+        metadataList[1] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.DATA_TYPE, JDBCSQLTypeInfo.INTEGER,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
+        metadataList[2] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.PRECISION, JDBCSQLTypeInfo.INTEGER,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
+        metadataList[3] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.LITERAL_PREFIX, JDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE,  ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
+        metadataList[4] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.LITERAL_SUFFIX, JDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE,  ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
+        metadataList[5] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.CREATE_PARAMS, JDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NULLABLE,  ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
+        metadataList[6] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.NULLABLE, JDBCSQLTypeInfo.SHORT,  ResultsMetadataConstants.NULL_TYPES.NULLABLE,  ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
+        metadataList[7] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.CASE_SENSITIVE, JDBCSQLTypeInfo.BOOLEAN,  ResultsMetadataConstants.NULL_TYPES.NOT_NULL, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.FALSE, Boolean.TRUE);//$NON-NLS-1$ 
+        metadataList[8] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.SEARCHABLE, JDBCSQLTypeInfo.SHORT,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
+        metadataList[9] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.UNSIGNED_ATTRIBUTE, JDBCSQLTypeInfo.BOOLEAN,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
+        metadataList[10] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.FIXED_PREC_SCALE, JDBCSQLTypeInfo.BOOLEAN,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$
+        metadataList[11] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.AUTOINCREMENT, JDBCSQLTypeInfo.BOOLEAN,  ResultsMetadataConstants.NULL_TYPES.NOT_NULL, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.TRUE, Boolean.TRUE);//$NON-NLS-1$ 
+        metadataList[12] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.LOCAL_TYPE_NAME, JDBCSQLTypeInfo.STRING,  ResultsMetadataConstants.NULL_TYPES.NOT_NULL, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE);//$NON-NLS-1$ 
+        metadataList[13] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.MINIMUM_SCALE, JDBCSQLTypeInfo.SHORT,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
+        metadataList[14] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.MAXIMUM_SCALE, JDBCSQLTypeInfo.SHORT,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
+        metadataList[15] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.SQL_DATA_TYPE, JDBCSQLTypeInfo.INTEGER,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
+        metadataList[16] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.SQL_DATETIME_SUB, JDBCSQLTypeInfo.INTEGER,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE);//$NON-NLS-1$ 
+        metadataList[17] = getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.NUM_PREC_RADIX, JDBCSQLTypeInfo.INTEGER,  ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE);//$NON-NLS-1$ 
 
         ResultSetMetaData rmetadata = new ResultSetMetaDataImpl(new MetadataProvider(metadataList));
 
@@ -1642,7 +1642,7 @@
     }
 
     private Object[] createTypeInfoRow(String typeName, String prefix, String suffix, Boolean unsigned, Boolean fixedPrecScale, int radix){
-        return new Object[] {typeName, new Integer(MMJDBCSQLTypeInfo.getSQLType(typeName)), ResultsMetadataDefaults.getDefaultPrecision(typeName), prefix, suffix, null, new Short((short)DatabaseMetaData.typeNullable), Boolean.FALSE, new Short((short)DatabaseMetaData.typeSearchable), unsigned, fixedPrecScale, Boolean.FALSE, typeName, new Short((short)0), new Short((short)255), null, null, new Integer(radix)};
+        return new Object[] {typeName, new Integer(JDBCSQLTypeInfo.getSQLType(typeName)), ResultsMetadataDefaults.getDefaultPrecision(typeName), prefix, suffix, null, new Short((short)DatabaseMetaData.typeNullable), Boolean.FALSE, new Short((short)DatabaseMetaData.typeSearchable), unsigned, fixedPrecScale, Boolean.FALSE, typeName, new Short((short)0), new Short((short)255), null, null, new Integer(radix)};
     }
     
     /**
@@ -1677,13 +1677,13 @@
                 JDBCColumnNames.UDTS.BASE_TYPE
         };
         String[] dataTypes = new String[] {
-                MMJDBCSQLTypeInfo.STRING,
-                MMJDBCSQLTypeInfo.STRING,
-                MMJDBCSQLTypeInfo.STRING,
-                MMJDBCSQLTypeInfo.STRING,
-                MMJDBCSQLTypeInfo.STRING, 
-                MMJDBCSQLTypeInfo.STRING,
-                MMJDBCSQLTypeInfo.SHORT                
+                JDBCSQLTypeInfo.STRING,
+                JDBCSQLTypeInfo.STRING,
+                JDBCSQLTypeInfo.STRING,
+                JDBCSQLTypeInfo.STRING,
+                JDBCSQLTypeInfo.STRING, 
+                JDBCSQLTypeInfo.STRING,
+                JDBCSQLTypeInfo.SHORT                
         };       
         return createEmptyResultSet(columnNames, dataTypes);
     }
@@ -1947,8 +1947,8 @@
     }
 
     public boolean supportsConvert(int fromType, int toType) throws SQLException {
-    	String fromName = MMJDBCSQLTypeInfo.getTypeName(fromType);
-    	String toName = MMJDBCSQLTypeInfo.getTypeName(toType);
+    	String fromName = JDBCSQLTypeInfo.getTypeName(fromType);
+    	String toName = JDBCSQLTypeInfo.getTypeName(toType);
     
     	if (fromName.equals(toName)) {
     		if (fromName.equals(DataTypeManager.DefaultDataTypes.OBJECT) && fromName != toName) {

Modified: trunk/client/src/main/java/org/teiid/jdbc/ParameterMetaDataImpl.java
===================================================================
--- trunk/client/src/main/java/org/teiid/jdbc/ParameterMetaDataImpl.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/client/src/main/java/org/teiid/jdbc/ParameterMetaDataImpl.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -27,7 +27,7 @@
 import java.sql.PreparedStatement;
 import java.sql.SQLException;
 
-import com.metamatrix.common.types.MMJDBCSQLTypeInfo;
+import com.metamatrix.common.types.JDBCSQLTypeInfo;
 
 /**
  * Note: this is currently only accurate for {@link PreparedStatement}s.
@@ -43,7 +43,7 @@
 
 	@Override
 	public String getParameterClassName(int param) throws SQLException {
-		return MMJDBCSQLTypeInfo.getJavaClassName(getParameterType(param));
+		return JDBCSQLTypeInfo.getJavaClassName(getParameterType(param));
 	}
 
 	@Override

Modified: trunk/client/src/main/java/org/teiid/jdbc/PreparedStatementImpl.java
===================================================================
--- trunk/client/src/main/java/org/teiid/jdbc/PreparedStatementImpl.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/client/src/main/java/org/teiid/jdbc/PreparedStatementImpl.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -60,7 +60,7 @@
 
 import com.metamatrix.api.exception.MetaMatrixComponentException;
 import com.metamatrix.api.exception.MetaMatrixProcessingException;
-import com.metamatrix.common.types.MMJDBCSQLTypeInfo;
+import com.metamatrix.common.types.JDBCSQLTypeInfo;
 import com.metamatrix.common.util.SqlUtil;
 import com.metamatrix.common.util.TimestampWithTimezone;
 import com.metamatrix.core.util.ArgCheck;
@@ -501,37 +501,37 @@
         }
 
         // get the java class name for the given JDBC type
-        String javaClassName = MMJDBCSQLTypeInfo.getJavaClassName(targetJdbcType);
+        String javaClassName = JDBCSQLTypeInfo.getJavaClassName(targetJdbcType);
         // transform the value to the target datatype
-        if(javaClassName.equalsIgnoreCase(MMJDBCSQLTypeInfo.STRING_CLASS)) {
+        if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.STRING_CLASS)) {
            targetObject = value.toString();
-        } else if(javaClassName.equalsIgnoreCase(MMJDBCSQLTypeInfo.CHAR_CLASS)) {
+        } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.CHAR_CLASS)) {
             targetObject = DataTypeTransformer.getCharacter(value);
-        } else if(javaClassName.equalsIgnoreCase(MMJDBCSQLTypeInfo.INTEGER_CLASS)) {
+        } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.INTEGER_CLASS)) {
             targetObject = DataTypeTransformer.getInteger(value);
-        } else if(javaClassName.equalsIgnoreCase(MMJDBCSQLTypeInfo.BYTE_CLASS)) {
+        } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.BYTE_CLASS)) {
             targetObject = DataTypeTransformer.getByte(value);
-        } else if(javaClassName.equalsIgnoreCase(MMJDBCSQLTypeInfo.SHORT_CLASS)) {
+        } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.SHORT_CLASS)) {
             targetObject = DataTypeTransformer.getShort(value);
-        } else if(javaClassName.equalsIgnoreCase(MMJDBCSQLTypeInfo.LONG_CLASS)) {
+        } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.LONG_CLASS)) {
             targetObject = DataTypeTransformer.getLong(value);
-        } else if(javaClassName.equalsIgnoreCase(MMJDBCSQLTypeInfo.FLOAT_CLASS)) {
+        } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.FLOAT_CLASS)) {
             targetObject = DataTypeTransformer.getFloat(value);
-        } else if(javaClassName.equalsIgnoreCase(MMJDBCSQLTypeInfo.DOUBLE_CLASS)) {
+        } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.DOUBLE_CLASS)) {
             targetObject = DataTypeTransformer.getDouble(value);
-        } else if(javaClassName.equalsIgnoreCase(MMJDBCSQLTypeInfo.BOOLEAN_CLASS)) {
+        } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.BOOLEAN_CLASS)) {
             targetObject = DataTypeTransformer.getBoolean(value);
-        } else if(javaClassName.equalsIgnoreCase(MMJDBCSQLTypeInfo.BIGDECIMAL_CLASS)) {
+        } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.BIGDECIMAL_CLASS)) {
             targetObject = DataTypeTransformer.getBigDecimal(value);
-        } else if(javaClassName.equalsIgnoreCase(MMJDBCSQLTypeInfo.TIMESTAMP_CLASS)) {
+        } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.TIMESTAMP_CLASS)) {
             targetObject = DataTypeTransformer.getTimestamp(value);
-        } else if(javaClassName.equalsIgnoreCase(MMJDBCSQLTypeInfo.DATE_CLASS)) {
+        } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.DATE_CLASS)) {
             targetObject = DataTypeTransformer.getDate(value);
-        } else if(javaClassName.equalsIgnoreCase(MMJDBCSQLTypeInfo.TIME_CLASS)) {
+        } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.TIME_CLASS)) {
             targetObject = DataTypeTransformer.getTime(value);
-        } else if (javaClassName.equalsIgnoreCase(MMJDBCSQLTypeInfo.BLOB_CLASS)) {
+        } else if (javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.BLOB_CLASS)) {
             targetObject = DataTypeTransformer.getBlob(value);
-        } else if (javaClassName.equalsIgnoreCase(MMJDBCSQLTypeInfo.CLOB_CLASS)) {
+        } else if (javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.CLOB_CLASS)) {
             targetObject = DataTypeTransformer.getClob(value);
         } else {
             String msg = JDBCPlugin.Util.getString("MMPreparedStatement.Err_transform_obj"); //$NON-NLS-1$

Modified: trunk/client/src/main/java/org/teiid/jdbc/ResultSetImpl.java
===================================================================
--- trunk/client/src/main/java/org/teiid/jdbc/ResultSetImpl.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/client/src/main/java/org/teiid/jdbc/ResultSetImpl.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -554,19 +554,7 @@
 	public java.io.Reader getCharacterStream(int columnIndex)
 			throws SQLException {
 		Object value = getObject(columnIndex);
-		if (value == null) {
-			return null;
-		}
-
-		if (value instanceof Clob) {
-			return ((Clob) value).getCharacterStream();
-		}
-		
-		if (value instanceof SQLXML) {
-			return ((SQLXML)value).getCharacterStream();
-		}
-		
-		return new StringReader(getString(columnIndex));
+		return DataTypeTransformer.getCharacterStream(value);
 	}
 
 	/**

Modified: trunk/client/src/main/java/org/teiid/jdbc/ResultSetMetaDataImpl.java
===================================================================
--- trunk/client/src/main/java/org/teiid/jdbc/ResultSetMetaDataImpl.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/client/src/main/java/org/teiid/jdbc/ResultSetMetaDataImpl.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -27,7 +27,7 @@
 
 import org.teiid.client.metadata.ResultsMetadataConstants;
 
-import com.metamatrix.common.types.MMJDBCSQLTypeInfo;
+import com.metamatrix.common.types.JDBCSQLTypeInfo;
 
 /**
  */
@@ -140,7 +140,7 @@
 
     public int getColumnType(int index) throws SQLException {
         String runtimeTypeName = provider.getStringValue(adjustColumn(index), ResultsMetadataConstants.DATA_TYPE);
-        return MMJDBCSQLTypeInfo.getSQLType(runtimeTypeName);
+        return JDBCSQLTypeInfo.getSQLType(runtimeTypeName);
     }
 
     public String getColumnTypeName(int index) throws SQLException {
@@ -160,7 +160,7 @@
     }
 
     public String getColumnClassName(int index) throws SQLException {
-        return MMJDBCSQLTypeInfo.getJavaClassName(getColumnType(index));
+        return JDBCSQLTypeInfo.getJavaClassName(getColumnType(index));
     }
 
 }

Modified: trunk/client/src/test/java/org/teiid/jdbc/TestAllResultsImpl.java
===================================================================
--- trunk/client/src/test/java/org/teiid/jdbc/TestAllResultsImpl.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/client/src/test/java/org/teiid/jdbc/TestAllResultsImpl.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -49,7 +49,7 @@
 import org.teiid.jdbc.StatementImpl;
 
 import com.metamatrix.api.exception.MetaMatrixProcessingException;
-import com.metamatrix.common.types.MMJDBCSQLTypeInfo;
+import com.metamatrix.common.types.JDBCSQLTypeInfo;
 import com.metamatrix.common.util.TimestampWithTimezone;
 import com.metamatrix.query.unittest.TimestampUtil;
 
@@ -758,8 +758,8 @@
 
 	private String[] dataTypes() {
 		String[] types = new String[2];
-		types[0] = MMJDBCSQLTypeInfo.INTEGER;
-		types[1] = MMJDBCSQLTypeInfo.STRING;
+		types[0] = JDBCSQLTypeInfo.INTEGER;
+		types[1] = JDBCSQLTypeInfo.STRING;
 		return types;
 	}
 
@@ -780,7 +780,7 @@
 
 	/** without metadata info. */
 	private ResultsMessage exampleResultsMsg1() {
-		return exampleMessage(exampleResults1(5), new String[] { "IntNum" }, new String[] { MMJDBCSQLTypeInfo.INTEGER }); //$NON-NLS-1$
+		return exampleMessage(exampleResults1(5), new String[] { "IntNum" }, new String[] { JDBCSQLTypeInfo.INTEGER }); //$NON-NLS-1$
 	}
 	
 	private ResultsMessage exampleMessage(List<Object>[] results, String[] columnNames, String[] datatypes) {
@@ -798,7 +798,7 @@
 
 	/** without metadata info. */
 	private ResultsMessage exampleResultsMsg2() {
-		return exampleMessage(exampleResults2(), new String[] { "IntNum", "StringNum" }, new String[] { MMJDBCSQLTypeInfo.INTEGER, MMJDBCSQLTypeInfo.STRING }); //$NON-NLS-1$ //$NON-NLS-2$
+		return exampleMessage(exampleResults2(), new String[] { "IntNum", "StringNum" }, new String[] { JDBCSQLTypeInfo.INTEGER, JDBCSQLTypeInfo.STRING }); //$NON-NLS-1$ //$NON-NLS-2$
 	}
 
 	/** with limited metadata info. */
@@ -817,7 +817,7 @@
 
 	/** no rows. */
 	private ResultsMessage exampleResultsMsg3() {
-		return exampleMessage(new List[0], new String[] { "IntNum", "StringNum" }, new String[] { MMJDBCSQLTypeInfo.INTEGER, MMJDBCSQLTypeInfo.STRING }); //$NON-NLS-1$ //$NON-NLS-2$
+		return exampleMessage(new List[0], new String[] { "IntNum", "StringNum" }, new String[] { JDBCSQLTypeInfo.INTEGER, JDBCSQLTypeInfo.STRING }); //$NON-NLS-1$ //$NON-NLS-2$
 	}
 	
 	private static ResultsMessage exampleResultsMsg4(int begin, int length, int fetchSize, boolean lastBatch) {
@@ -827,7 +827,7 @@
 		List[] results = exampleResults1(length, begin);
 		resultsMsg.setResults(results);
 		resultsMsg.setColumnNames(new String[] { "IntKey" }); //$NON-NLS-1$
-		resultsMsg.setDataTypes(new String[] { MMJDBCSQLTypeInfo.INTEGER }); 
+		resultsMsg.setDataTypes(new String[] { JDBCSQLTypeInfo.INTEGER }); 
 		resultsMsg.setFirstRow(begin);
 		if (lastBatch) {
 			resultsMsg.setFinalRow(begin + results.length - 1);
@@ -854,7 +854,7 @@
 		ResultsMessage resultsMsg = new ResultsMessage(request);
 		resultsMsg.setResults(new List[] {Arrays.asList(new Timestamp(0))});
 		resultsMsg.setColumnNames(new String[] { "TS" }); //$NON-NLS-1$
-		resultsMsg.setDataTypes(new String[] { MMJDBCSQLTypeInfo.TIMESTAMP }); 
+		resultsMsg.setDataTypes(new String[] { JDBCSQLTypeInfo.TIMESTAMP }); 
 		resultsMsg.setFirstRow(1);
 		resultsMsg.setFinalRow(1);
 		resultsMsg.setLastRow(1);
@@ -871,7 +871,7 @@
 	
 	@Test public void testWasNull() throws SQLException{
 		ResultsMessage message = exampleMessage(new List[] { Arrays.asList((String)null), Arrays.asList("1") }, new String[] { "string" }, //$NON-NLS-1$
-				new String[] { MMJDBCSQLTypeInfo.STRING });
+				new String[] { JDBCSQLTypeInfo.STRING });
 		ResultSetImpl rs = new ResultSetImpl(message, statement);
 		assertTrue(rs.next());
 		assertEquals(Boolean.FALSE.booleanValue(), rs.getBoolean(1));
@@ -898,7 +898,7 @@
 		TimeZone.setDefault(TimeZone.getTimeZone("GMT-05:00")); //$NON-NLS-1$
 		ResultsMessage message = exampleMessage(new List[] { Arrays.asList(1, TimestampUtil.createTime(0, 0, 0), TimestampUtil.createDate(1, 1, 1), TimestampUtil.createTimestamp(1, 1, 1, 1, 1, 1, 1), "<root/>") }, //$NON-NLS-1$ 
 				new String[] { "int", "time", "date", "timestamp", "sqlxml" }, //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ 
-				new String[] { MMJDBCSQLTypeInfo.INTEGER, MMJDBCSQLTypeInfo.TIME, MMJDBCSQLTypeInfo.DATE, MMJDBCSQLTypeInfo.TIMESTAMP, MMJDBCSQLTypeInfo.STRING });
+				new String[] { JDBCSQLTypeInfo.INTEGER, JDBCSQLTypeInfo.TIME, JDBCSQLTypeInfo.DATE, JDBCSQLTypeInfo.TIMESTAMP, JDBCSQLTypeInfo.STRING });
 		TimestampWithTimezone.resetCalendar(TimeZone.getTimeZone("GMT-06:00")); //$NON-NLS-1$
 		ResultSetImpl rs = new ResultSetImpl(message, statement);
 		assertTrue(rs.next());

Modified: trunk/client/src/test/java/org/teiid/jdbc/TestMMCallableStatement.java
===================================================================
--- trunk/client/src/test/java/org/teiid/jdbc/TestMMCallableStatement.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/client/src/test/java/org/teiid/jdbc/TestMMCallableStatement.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -42,7 +42,7 @@
 import org.teiid.jdbc.ResultSetImpl;
 import org.teiid.net.ServerConnection;
 
-import com.metamatrix.common.types.MMJDBCSQLTypeInfo;
+import com.metamatrix.common.types.JDBCSQLTypeInfo;
 
 public class TestMMCallableStatement extends TestCase {
 	
@@ -72,7 +72,7 @@
 		List[] results = new List[] {Arrays.asList(null, null, null), Arrays.asList(null, 1, 2)};
 		resultsMsg.setResults(results);
 		resultsMsg.setColumnNames(new String[] { "IntNum", "Out1", "Out2" }); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		resultsMsg.setDataTypes(new String[] { MMJDBCSQLTypeInfo.INTEGER, MMJDBCSQLTypeInfo.INTEGER, MMJDBCSQLTypeInfo.INTEGER }); 
+		resultsMsg.setDataTypes(new String[] { JDBCSQLTypeInfo.INTEGER, JDBCSQLTypeInfo.INTEGER, JDBCSQLTypeInfo.INTEGER }); 
 		resultsMsg.setFinalRow(results.length);
 		resultsMsg.setLastRow(results.length);
 		resultsMsg.setFirstRow(1);

Modified: trunk/common-core/src/main/java/com/metamatrix/common/types/ClobType.java
===================================================================
--- trunk/common-core/src/main/java/com/metamatrix/common/types/ClobType.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/common-core/src/main/java/com/metamatrix/common/types/ClobType.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -157,7 +157,7 @@
         return data;        
     }
     
-    private final static int CHAR_SEQUENCE_BUFFER_SIZE = 2 << 12;
+    private final static int CHAR_SEQUENCE_BUFFER_SIZE = 1 << 12;
     
     public CharSequence getCharSequence() {
         return new CharSequence() {

Modified: trunk/common-core/src/main/java/com/metamatrix/common/types/DataTypeManager.java
===================================================================
--- trunk/common-core/src/main/java/com/metamatrix/common/types/DataTypeManager.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/common-core/src/main/java/com/metamatrix/common/types/DataTypeManager.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -51,7 +51,6 @@
 import com.metamatrix.common.types.basic.AnyToStringTransform;
 import com.metamatrix.common.types.basic.BooleanToNumberTransform;
 import com.metamatrix.common.types.basic.ClobToSQLXMLTransform;
-import com.metamatrix.common.types.basic.ClobToStringTransform;
 import com.metamatrix.common.types.basic.FixedNumberToBigDecimalTransform;
 import com.metamatrix.common.types.basic.FixedNumberToBigIntegerTransform;
 import com.metamatrix.common.types.basic.FloatingNumberToBigDecimalTransform;
@@ -772,7 +771,7 @@
 				if (value instanceof InputStreamFactory) {
 					return new XMLType(new SQLXMLImpl((InputStreamFactory)value));
 				}
-				StandardXMLTranslator sxt = new StandardXMLTranslator(value, null);
+				StandardXMLTranslator sxt = new StandardXMLTranslator(value);
 				try {
 					return new XMLType(new SQLXMLImpl(sxt.getString()));
 				} catch (Exception e) {

Copied: trunk/common-core/src/main/java/com/metamatrix/common/types/JDBCSQLTypeInfo.java (from rev 1988, trunk/common-core/src/main/java/com/metamatrix/common/types/MMJDBCSQLTypeInfo.java)
===================================================================
--- trunk/common-core/src/main/java/com/metamatrix/common/types/JDBCSQLTypeInfo.java	                        (rev 0)
+++ trunk/common-core/src/main/java/com/metamatrix/common/types/JDBCSQLTypeInfo.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -0,0 +1,264 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership.  Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ * 
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ * 
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ * 
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+
+package com.metamatrix.common.types;
+
+import java.sql.Blob;
+import java.sql.Clob;
+//## JDBC4.0-begin ##
+import java.sql.SQLXML;
+//## JDBC4.0-end ##
+
+/*## JDBC3.0-JDK1.5-begin ##
+import com.metamatrix.core.jdbc.SQLXML; 
+## JDBC3.0-JDK1.5-end ##*/
+import java.sql.Types;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * <p> This is a helper class used to obtain SQL type information for java types.
+ * The SQL type information is obtained from java.sql.Types class. The integers and
+ * strings returned by methods in this class are based on constants in java.sql.Types.
+ */
+
+public final class JDBCSQLTypeInfo {
+
+
+    // Prevent instantiation
+    private JDBCSQLTypeInfo() {}
+    
+    // metamatrix types    
+    public static final String STRING = DataTypeManager.DefaultDataTypes.STRING;
+    public static final String BOOLEAN = DataTypeManager.DefaultDataTypes.BOOLEAN;
+    public static final String TIME = DataTypeManager.DefaultDataTypes.TIME;
+    public static final String DATE = DataTypeManager.DefaultDataTypes.DATE;
+    public static final String TIMESTAMP = DataTypeManager.DefaultDataTypes.TIMESTAMP;
+    public static final String INTEGER = DataTypeManager.DefaultDataTypes.INTEGER;
+    public static final String FLOAT = DataTypeManager.DefaultDataTypes.FLOAT;
+    public static final String DOUBLE = DataTypeManager.DefaultDataTypes.DOUBLE;
+    public static final String BIGDECIMAL = DataTypeManager.DefaultDataTypes.BIG_DECIMAL;
+    public static final String BIGINTEGER = DataTypeManager.DefaultDataTypes.BIG_INTEGER;
+    public static final String BYTE = DataTypeManager.DefaultDataTypes.BYTE;
+    public static final String SHORT = DataTypeManager.DefaultDataTypes.SHORT;
+    public static final String LONG = DataTypeManager.DefaultDataTypes.LONG;
+    public static final String CHAR = DataTypeManager.DefaultDataTypes.CHAR;
+    public static final String OBJECT = DataTypeManager.DefaultDataTypes.OBJECT;
+    public static final String CLOB = DataTypeManager.DefaultDataTypes.CLOB;
+    public static final String BLOB = DataTypeManager.DefaultDataTypes.BLOB;
+    public static final String XML = DataTypeManager.DefaultDataTypes.XML;
+    public static final String NULL = DataTypeManager.DefaultDataTypes.NULL;
+    
+    //java class names
+    public static final String STRING_CLASS = DataTypeManager.DefaultDataClasses.STRING.getName();
+    public static final String BOOLEAN_CLASS = DataTypeManager.DefaultDataClasses.BOOLEAN.getName();
+    public static final String TIME_CLASS = DataTypeManager.DefaultDataClasses.TIME.getName();
+    public static final String DATE_CLASS = DataTypeManager.DefaultDataClasses.DATE.getName();
+    public static final String TIMESTAMP_CLASS = DataTypeManager.DefaultDataClasses.TIMESTAMP.getName();
+    public static final String INTEGER_CLASS = DataTypeManager.DefaultDataClasses.INTEGER.getName();
+    public static final String FLOAT_CLASS = DataTypeManager.DefaultDataClasses.FLOAT.getName();
+    public static final String DOUBLE_CLASS = DataTypeManager.DefaultDataClasses.DOUBLE.getName();
+    public static final String BIGDECIMAL_CLASS = DataTypeManager.DefaultDataClasses.BIG_DECIMAL.getName();
+    public static final String BYTE_CLASS = DataTypeManager.DefaultDataClasses.BYTE.getName();
+    public static final String SHORT_CLASS = DataTypeManager.DefaultDataClasses.SHORT.getName();
+    public static final String LONG_CLASS = DataTypeManager.DefaultDataClasses.LONG.getName();
+    public static final String CHAR_CLASS = DataTypeManager.DefaultDataClasses.CHAR.getName();
+    public static final String BIGINTEGER_CLASS = DataTypeManager.DefaultDataClasses.BIG_INTEGER.getName();
+    public static final String OBJECT_CLASS = DataTypeManager.DefaultDataClasses.OBJECT.getName();
+    public static final String CLOB_CLASS = Clob.class.getName();
+    public static final String BLOB_CLASS = Blob.class.getName();
+    //## JDBC4.0-begin ##
+    public static final String XML_CLASS = SQLXML.class.getName();
+    //## JDBC4.0-end ##
+    /*## JDBC3.0-JDK1.5-begin ##
+    public static final String XML_CLASS = DataTypeManager.DefaultDataClasses.OBJECT.getName(); 
+    ## JDBC3.0-JDK1.5-end ##*/
+    
+    private static Map<String, Integer> NAME_TO_TYPE_MAP = new HashMap<String, Integer>();
+    private static Map<Integer, String> TYPE_TO_NAME_MAP = new HashMap<Integer, String>();
+    private static Map<String, String> NAME_TO_CLASSNAME = new HashMap<String, String>();
+    private static Map<String, String> CLASSNAME_TO_NAME = new HashMap<String, String>();
+    
+    static {
+        addTypeMapping(STRING, STRING_CLASS, Types.VARCHAR, Types.LONGVARCHAR, Types.CHAR);
+        addTypeMapping(CHAR, CHAR_CLASS, Types.CHAR, false);
+        addTypeMapping(BOOLEAN, BOOLEAN_CLASS, Types.BIT);
+        addTypeMapping(TIME, TIME_CLASS, Types.TIME);
+        addTypeMapping(DATE, DATE_CLASS, Types.DATE);
+        addTypeMapping(TIMESTAMP, TIMESTAMP_CLASS, Types.TIMESTAMP);
+        addTypeMapping(INTEGER, INTEGER_CLASS, Types.INTEGER);
+        addTypeMapping(FLOAT, FLOAT_CLASS, Types.REAL);
+        addTypeMapping(DOUBLE, DOUBLE_CLASS, Types.DOUBLE, Types.FLOAT);
+        addTypeMapping(BIGDECIMAL, BIGDECIMAL_CLASS, Types.NUMERIC, Types.DECIMAL);
+        addTypeMapping(BIGINTEGER, BIGINTEGER_CLASS, Types.NUMERIC, false);
+        addTypeMapping(BYTE, BYTE_CLASS, Types.TINYINT);
+        addTypeMapping(SHORT, SHORT_CLASS, Types.SMALLINT);
+        addTypeMapping(LONG, LONG_CLASS, Types.BIGINT);
+        addTypeMapping(OBJECT, OBJECT_CLASS, Types.JAVA_OBJECT);
+        addTypeMapping(CLOB, CLOB_CLASS, Types.CLOB);
+        addTypeMapping(BLOB, BLOB_CLASS, Types.BLOB, Types.BINARY, Types.VARBINARY, Types.LONGVARBINARY);
+        
+        addTypeMapping(NULL, null, Types.NULL);
+        
+        //## JDBC4.0-begin ##
+        addTypeMapping(XML, XML_CLASS, Types.SQLXML);
+		TYPE_TO_NAME_MAP.put(Types.NVARCHAR, STRING);
+        TYPE_TO_NAME_MAP.put(Types.LONGNVARCHAR, STRING);
+		TYPE_TO_NAME_MAP.put(Types.NCHAR, CHAR);
+		TYPE_TO_NAME_MAP.put(Types.NCLOB, CLOB);
+		//## JDBC4.0-end ##
+		
+		/*## JDBC3.0-JDK1.5-begin ##
+	    NAME_TO_CLASSNAME.put(XML, OBJECT_CLASS); 
+	    ## JDBC3.0-JDK1.5-end ##*/
+    }
+
+	private static void addTypeMapping(String typeName, String javaClass, int sqlType, int ... secondaryTypes) {
+		addTypeMapping(typeName, javaClass, sqlType, true);
+		for (int type : secondaryTypes) {
+			TYPE_TO_NAME_MAP.put(type, typeName);
+		}
+	}
+
+	private static void addTypeMapping(String typeName, String javaClass, int sqlType, boolean preferedType) {
+		NAME_TO_TYPE_MAP.put(typeName, sqlType);
+		if (preferedType) {
+			TYPE_TO_NAME_MAP.put(sqlType, typeName);
+		}
+		if (javaClass != null) {
+			NAME_TO_CLASSNAME.put(typeName, javaClass);
+			CLASSNAME_TO_NAME.put(javaClass, typeName);
+		}
+	}
+    
+    /**
+     * This method is used to obtain a short indicating JDBC SQL type for any object.
+     * The short values that give the type info are from java.sql.Types.
+     * @param Name of the metamatrix type.
+     * @return A short value representing SQL Type for the given java type.
+     */
+    public static final int getSQLType(String typeName) {
+
+        if (typeName == null) {
+            return Types.NULL;
+        }
+        
+        Integer sqlType = NAME_TO_TYPE_MAP.get(typeName);
+        
+        if (sqlType == null) {
+            return Types.JAVA_OBJECT;
+        }
+        
+        return sqlType.intValue();
+    }    
+
+    /**
+     * Get sql Type from java class type name.  This should not be called with runtime types
+     * as Clob and Blob are represented by ClobType and BlobType respectively.
+     * @param typeName
+     * @return int
+     */
+    public static final int getSQLTypeFromClass(String className) {
+
+        if (className == null) {
+            return Types.NULL;
+        }
+        
+        String name = CLASSNAME_TO_NAME.get(className);
+        
+        if (name == null) {
+            return Types.JAVA_OBJECT;
+        }
+        
+        return getSQLType(name);
+    } 
+    
+    /**
+     * Get the sql type from the given runtime type 
+     * @param type
+     * @return
+     */
+    public static final int getSQLTypeFromRuntimeType(Class<?> type) {
+    	if (type == null) {
+    		return Types.NULL;
+    	}
+    	
+        String name = DataTypeManager.getDataTypeName(type);
+        
+        if (name == null) {
+            return Types.JAVA_OBJECT;
+        }
+        
+        return getSQLType(name);
+    }
+    
+    /**
+     * This method is used to obtain a the java class name given an int value
+     * indicating JDBC SQL type. The int values that give the type info are from
+     * java.sql.Types.
+     * @param int value giving the SQL type code.
+     * @return A String representing the java class name for the given SQL Type.
+     */
+    public static final String getJavaClassName(int jdbcSQLType) {
+    	String className = NAME_TO_CLASSNAME.get(getTypeName(jdbcSQLType));
+    	
+    	if (className == null) {
+    		return OBJECT_CLASS;
+    	}
+    	
+    	return className;
+    }
+    
+    public static final String getTypeName(int sqlType) {
+    	String name = TYPE_TO_NAME_MAP.get(sqlType);
+    	
+    	if (name == null) {
+    		return OBJECT;
+    	}
+    	
+    	return name;
+    }
+
+    public static String[] getMMTypeNames() {
+        return new String[] {
+            STRING,
+            BOOLEAN,
+            TIME,
+            DATE,
+            TIMESTAMP,
+            INTEGER,
+            FLOAT,
+            DOUBLE,
+            BIGDECIMAL,
+            BIGINTEGER,
+            BYTE,
+            SHORT,
+            LONG,
+            CHAR,
+            OBJECT,
+            CLOB,
+            BLOB,
+            XML
+        };
+    }
+
+}

Deleted: trunk/common-core/src/main/java/com/metamatrix/common/types/MMJDBCSQLTypeInfo.java
===================================================================
--- trunk/common-core/src/main/java/com/metamatrix/common/types/MMJDBCSQLTypeInfo.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/common-core/src/main/java/com/metamatrix/common/types/MMJDBCSQLTypeInfo.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -1,264 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership.  Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- * 
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- * 
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- * 
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-
-package com.metamatrix.common.types;
-
-import java.sql.Blob;
-import java.sql.Clob;
-//## JDBC4.0-begin ##
-import java.sql.SQLXML;
-//## JDBC4.0-end ##
-
-/*## JDBC3.0-JDK1.5-begin ##
-import com.metamatrix.core.jdbc.SQLXML; 
-## JDBC3.0-JDK1.5-end ##*/
-import java.sql.Types;
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- * <p> This is a helper class used to obtain SQL type information for java types.
- * The SQL type information is obtained from java.sql.Types class. The integers and
- * strings returned by methods in this class are based on constants in java.sql.Types.
- */
-
-public final class MMJDBCSQLTypeInfo {
-
-
-    // Prevent instantiation
-    private MMJDBCSQLTypeInfo() {}
-    
-    // metamatrix types    
-    public static final String STRING = DataTypeManager.DefaultDataTypes.STRING;
-    public static final String BOOLEAN = DataTypeManager.DefaultDataTypes.BOOLEAN;
-    public static final String TIME = DataTypeManager.DefaultDataTypes.TIME;
-    public static final String DATE = DataTypeManager.DefaultDataTypes.DATE;
-    public static final String TIMESTAMP = DataTypeManager.DefaultDataTypes.TIMESTAMP;
-    public static final String INTEGER = DataTypeManager.DefaultDataTypes.INTEGER;
-    public static final String FLOAT = DataTypeManager.DefaultDataTypes.FLOAT;
-    public static final String DOUBLE = DataTypeManager.DefaultDataTypes.DOUBLE;
-    public static final String BIGDECIMAL = DataTypeManager.DefaultDataTypes.BIG_DECIMAL;
-    public static final String BIGINTEGER = DataTypeManager.DefaultDataTypes.BIG_INTEGER;
-    public static final String BYTE = DataTypeManager.DefaultDataTypes.BYTE;
-    public static final String SHORT = DataTypeManager.DefaultDataTypes.SHORT;
-    public static final String LONG = DataTypeManager.DefaultDataTypes.LONG;
-    public static final String CHAR = DataTypeManager.DefaultDataTypes.CHAR;
-    public static final String OBJECT = DataTypeManager.DefaultDataTypes.OBJECT;
-    public static final String CLOB = DataTypeManager.DefaultDataTypes.CLOB;
-    public static final String BLOB = DataTypeManager.DefaultDataTypes.BLOB;
-    public static final String XML = DataTypeManager.DefaultDataTypes.XML;
-    public static final String NULL = DataTypeManager.DefaultDataTypes.NULL;
-    
-    //java class names
-    public static final String STRING_CLASS = DataTypeManager.DefaultDataClasses.STRING.getName();
-    public static final String BOOLEAN_CLASS = DataTypeManager.DefaultDataClasses.BOOLEAN.getName();
-    public static final String TIME_CLASS = DataTypeManager.DefaultDataClasses.TIME.getName();
-    public static final String DATE_CLASS = DataTypeManager.DefaultDataClasses.DATE.getName();
-    public static final String TIMESTAMP_CLASS = DataTypeManager.DefaultDataClasses.TIMESTAMP.getName();
-    public static final String INTEGER_CLASS = DataTypeManager.DefaultDataClasses.INTEGER.getName();
-    public static final String FLOAT_CLASS = DataTypeManager.DefaultDataClasses.FLOAT.getName();
-    public static final String DOUBLE_CLASS = DataTypeManager.DefaultDataClasses.DOUBLE.getName();
-    public static final String BIGDECIMAL_CLASS = DataTypeManager.DefaultDataClasses.BIG_DECIMAL.getName();
-    public static final String BYTE_CLASS = DataTypeManager.DefaultDataClasses.BYTE.getName();
-    public static final String SHORT_CLASS = DataTypeManager.DefaultDataClasses.SHORT.getName();
-    public static final String LONG_CLASS = DataTypeManager.DefaultDataClasses.LONG.getName();
-    public static final String CHAR_CLASS = DataTypeManager.DefaultDataClasses.CHAR.getName();
-    public static final String BIGINTEGER_CLASS = DataTypeManager.DefaultDataClasses.BIG_INTEGER.getName();
-    public static final String OBJECT_CLASS = DataTypeManager.DefaultDataClasses.OBJECT.getName();
-    public static final String CLOB_CLASS = Clob.class.getName();
-    public static final String BLOB_CLASS = Blob.class.getName();
-    //## JDBC4.0-begin ##
-    public static final String XML_CLASS = SQLXML.class.getName();
-    //## JDBC4.0-end ##
-    /*## JDBC3.0-JDK1.5-begin ##
-    public static final String XML_CLASS = DataTypeManager.DefaultDataClasses.OBJECT.getName(); 
-    ## JDBC3.0-JDK1.5-end ##*/
-    
-    private static Map<String, Integer> NAME_TO_TYPE_MAP = new HashMap<String, Integer>();
-    private static Map<Integer, String> TYPE_TO_NAME_MAP = new HashMap<Integer, String>();
-    private static Map<String, String> NAME_TO_CLASSNAME = new HashMap<String, String>();
-    private static Map<String, String> CLASSNAME_TO_NAME = new HashMap<String, String>();
-    
-    static {
-        addTypeMapping(STRING, STRING_CLASS, Types.VARCHAR, Types.LONGVARCHAR, Types.CHAR);
-        addTypeMapping(CHAR, CHAR_CLASS, Types.CHAR, false);
-        addTypeMapping(BOOLEAN, BOOLEAN_CLASS, Types.BIT);
-        addTypeMapping(TIME, TIME_CLASS, Types.TIME);
-        addTypeMapping(DATE, DATE_CLASS, Types.DATE);
-        addTypeMapping(TIMESTAMP, TIMESTAMP_CLASS, Types.TIMESTAMP);
-        addTypeMapping(INTEGER, INTEGER_CLASS, Types.INTEGER);
-        addTypeMapping(FLOAT, FLOAT_CLASS, Types.REAL);
-        addTypeMapping(DOUBLE, DOUBLE_CLASS, Types.DOUBLE, Types.FLOAT);
-        addTypeMapping(BIGDECIMAL, BIGDECIMAL_CLASS, Types.NUMERIC, Types.DECIMAL);
-        addTypeMapping(BIGINTEGER, BIGINTEGER_CLASS, Types.NUMERIC, false);
-        addTypeMapping(BYTE, BYTE_CLASS, Types.TINYINT);
-        addTypeMapping(SHORT, SHORT_CLASS, Types.SMALLINT);
-        addTypeMapping(LONG, LONG_CLASS, Types.BIGINT);
-        addTypeMapping(OBJECT, OBJECT_CLASS, Types.JAVA_OBJECT);
-        addTypeMapping(CLOB, CLOB_CLASS, Types.CLOB);
-        addTypeMapping(BLOB, BLOB_CLASS, Types.BLOB, Types.BINARY, Types.VARBINARY, Types.LONGVARBINARY);
-        
-        addTypeMapping(NULL, null, Types.NULL);
-        
-        //## JDBC4.0-begin ##
-        addTypeMapping(XML, XML_CLASS, Types.SQLXML);
-		TYPE_TO_NAME_MAP.put(Types.NVARCHAR, STRING);
-        TYPE_TO_NAME_MAP.put(Types.LONGNVARCHAR, STRING);
-		TYPE_TO_NAME_MAP.put(Types.NCHAR, CHAR);
-		TYPE_TO_NAME_MAP.put(Types.NCLOB, CLOB);
-		//## JDBC4.0-end ##
-		
-		/*## JDBC3.0-JDK1.5-begin ##
-	    NAME_TO_CLASSNAME.put(XML, OBJECT_CLASS); 
-	    ## JDBC3.0-JDK1.5-end ##*/
-    }
-
-	private static void addTypeMapping(String typeName, String javaClass, int sqlType, int ... secondaryTypes) {
-		addTypeMapping(typeName, javaClass, sqlType, true);
-		for (int type : secondaryTypes) {
-			TYPE_TO_NAME_MAP.put(type, typeName);
-		}
-	}
-
-	private static void addTypeMapping(String typeName, String javaClass, int sqlType, boolean preferedType) {
-		NAME_TO_TYPE_MAP.put(typeName, sqlType);
-		if (preferedType) {
-			TYPE_TO_NAME_MAP.put(sqlType, typeName);
-		}
-		if (javaClass != null) {
-			NAME_TO_CLASSNAME.put(typeName, javaClass);
-			CLASSNAME_TO_NAME.put(javaClass, typeName);
-		}
-	}
-    
-    /**
-     * This method is used to obtain a short indicating JDBC SQL type for any object.
-     * The short values that give the type info are from java.sql.Types.
-     * @param Name of the metamatrix type.
-     * @return A short value representing SQL Type for the given java type.
-     */
-    public static final int getSQLType(String typeName) {
-
-        if (typeName == null) {
-            return Types.NULL;
-        }
-        
-        Integer sqlType = NAME_TO_TYPE_MAP.get(typeName);
-        
-        if (sqlType == null) {
-            return Types.JAVA_OBJECT;
-        }
-        
-        return sqlType.intValue();
-    }    
-
-    /**
-     * Get sql Type from java class type name.  This should not be called with runtime types
-     * as Clob and Blob are represented by ClobType and BlobType respectively.
-     * @param typeName
-     * @return int
-     */
-    public static final int getSQLTypeFromClass(String className) {
-
-        if (className == null) {
-            return Types.NULL;
-        }
-        
-        String name = CLASSNAME_TO_NAME.get(className);
-        
-        if (name == null) {
-            return Types.JAVA_OBJECT;
-        }
-        
-        return getSQLType(name);
-    } 
-    
-    /**
-     * Get the sql type from the given runtime type 
-     * @param type
-     * @return
-     */
-    public static final int getSQLTypeFromRuntimeType(Class<?> type) {
-    	if (type == null) {
-    		return Types.NULL;
-    	}
-    	
-        String name = DataTypeManager.getDataTypeName(type);
-        
-        if (name == null) {
-            return Types.JAVA_OBJECT;
-        }
-        
-        return getSQLType(name);
-    }
-    
-    /**
-     * This method is used to obtain a the java class name given an int value
-     * indicating JDBC SQL type. The int values that give the type info are from
-     * java.sql.Types.
-     * @param int value giving the SQL type code.
-     * @return A String representing the java class name for the given SQL Type.
-     */
-    public static final String getJavaClassName(int jdbcSQLType) {
-    	String className = NAME_TO_CLASSNAME.get(getTypeName(jdbcSQLType));
-    	
-    	if (className == null) {
-    		return OBJECT_CLASS;
-    	}
-    	
-    	return className;
-    }
-    
-    public static final String getTypeName(int sqlType) {
-    	String name = TYPE_TO_NAME_MAP.get(sqlType);
-    	
-    	if (name == null) {
-    		return OBJECT;
-    	}
-    	
-    	return name;
-    }
-
-    public static String[] getMMTypeNames() {
-        return new String[] {
-            STRING,
-            BOOLEAN,
-            TIME,
-            DATE,
-            TIMESTAMP,
-            INTEGER,
-            FLOAT,
-            DOUBLE,
-            BIGDECIMAL,
-            BIGINTEGER,
-            BYTE,
-            SHORT,
-            LONG,
-            CHAR,
-            OBJECT,
-            CLOB,
-            BLOB,
-            XML
-        };
-    }
-
-}

Modified: trunk/common-core/src/main/java/com/metamatrix/common/types/StandardXMLTranslator.java
===================================================================
--- trunk/common-core/src/main/java/com/metamatrix/common/types/StandardXMLTranslator.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/common-core/src/main/java/com/metamatrix/common/types/StandardXMLTranslator.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -23,57 +23,26 @@
 package com.metamatrix.common.types;
 
 import java.io.IOException;
-import java.io.StringReader;
 import java.io.Writer;
-import java.util.Properties;
 
 import javax.xml.transform.Source;
 import javax.xml.transform.Transformer;
 import javax.xml.transform.TransformerException;
 import javax.xml.transform.TransformerFactory;
 import javax.xml.transform.stream.StreamResult;
-import javax.xml.transform.stream.StreamSource;
 
 public class StandardXMLTranslator extends XMLTranslator {
-    static String lineSep = System.getProperty("line.separator"); //$NON-NLS-1$    
-    public static final String INDENT = "indent"; //$NON-NLS-1$
     
-    public static final String idenityTransform = 
-            "<xsl:stylesheet version=\"2.0\" xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\">" + lineSep + //$NON-NLS-1$
-            "<xsl:output method = \"xml\" omit-xml-declaration=\"yes\"/>" + lineSep + //$NON-NLS-1$
-            "<xsl:template match=\"@*|node()\">" + lineSep +//$NON-NLS-1$ 
-            "    <xsl:copy>\r\n" + lineSep+ //$NON-NLS-1$
-            "        <xsl:apply-templates select=\"@*|node()\"/>" +lineSep+//$NON-NLS-1$ 
-            "    </xsl:copy>" + lineSep + //$NON-NLS-1$
-            "</xsl:template>" + lineSep +//$NON-NLS-1$
-            "</xsl:stylesheet>" + lineSep + //$NON-NLS-1$
-            ""; //$NON-NLS-1$
-
-    static final String XMLPI = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"; //$NON-NLS-1$ 
-    static final String newLine = "\n"; //$NON-NLS-1$
-    
     private Source source;
-    private Properties properties;
         
-    public StandardXMLTranslator(Source source, Properties props) {
+    public StandardXMLTranslator(Source source) {
     	this.source = source;
-        this.properties = props;
     }
     
     @Override
     public void translate(Writer writer) throws TransformerException, IOException {
-        Transformer t = TransformerFactory.newInstance().newTransformer(new StreamSource(new StringReader(idenityTransform)));
-        writer.write(XMLPI);
-        if (useIndentation()) {
-            writer.write(newLine); 
-        }
+        Transformer t = TransformerFactory.newInstance().newTransformer();
         t.transform(source, new StreamResult(writer));
     }
         
-    private boolean useIndentation() {
-        if (properties != null) {
-            return "yes".equalsIgnoreCase(properties.getProperty(INDENT)); //$NON-NLS-1$            
-        }
-        return false;
-    }
 }

Modified: trunk/common-core/src/test/java/com/metamatrix/common/types/TestDataTypeManager.java
===================================================================
--- trunk/common-core/src/test/java/com/metamatrix/common/types/TestDataTypeManager.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/common-core/src/test/java/com/metamatrix/common/types/TestDataTypeManager.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -167,25 +167,25 @@
     
     @Test public void testJDBCSQLTypeInfo() {
         
-        String[] types = MMJDBCSQLTypeInfo.getMMTypeNames();
+        String[] types = JDBCSQLTypeInfo.getMMTypeNames();
         
         for (int i = 0; i < types.length; i++) {
             String type = types[i];
             
-            assertEquals("Didn't get match for "+ type, MMJDBCSQLTypeInfo.getSQLType(type), MMJDBCSQLTypeInfo.getSQLTypeFromRuntimeType(DataTypeManager.getDataTypeClass(type))); //$NON-NLS-1$
+            assertEquals("Didn't get match for "+ type, JDBCSQLTypeInfo.getSQLType(type), JDBCSQLTypeInfo.getSQLTypeFromRuntimeType(DataTypeManager.getDataTypeClass(type))); //$NON-NLS-1$
             
             //the classnames will not match the runtime types for xml, clob, blob
             if (!type.equalsIgnoreCase(DataTypeManager.DefaultDataTypes.XML) && !type.equalsIgnoreCase(DataTypeManager.DefaultDataTypes.CLOB) && !type.equalsIgnoreCase(DataTypeManager.DefaultDataTypes.BLOB)) {
-                assertEquals("Didn't get match for "+ type, MMJDBCSQLTypeInfo.getSQLType(type), MMJDBCSQLTypeInfo.getSQLTypeFromClass(DataTypeManager.getDataTypeClass(type).getName())); //$NON-NLS-1$
+                assertEquals("Didn't get match for "+ type, JDBCSQLTypeInfo.getSQLType(type), JDBCSQLTypeInfo.getSQLTypeFromClass(DataTypeManager.getDataTypeClass(type).getName())); //$NON-NLS-1$
             }
         }
         
-        assertEquals(Types.TIMESTAMP, MMJDBCSQLTypeInfo.getSQLTypeFromRuntimeType(DataTypeManager.DefaultDataClasses.TIMESTAMP));
+        assertEquals(Types.TIMESTAMP, JDBCSQLTypeInfo.getSQLTypeFromRuntimeType(DataTypeManager.DefaultDataClasses.TIMESTAMP));
         //## JDBC4.0-begin ##
-        assertEquals(Types.SQLXML, MMJDBCSQLTypeInfo.getSQLTypeFromRuntimeType(DataTypeManager.DefaultDataClasses.XML));
+        assertEquals(Types.SQLXML, JDBCSQLTypeInfo.getSQLTypeFromRuntimeType(DataTypeManager.DefaultDataClasses.XML));
         //## JDBC4.0-end ##
-        assertEquals(DataTypeManager.DefaultDataTypes.STRING, MMJDBCSQLTypeInfo.getTypeName(Types.CHAR));
-        assertEquals(Types.CHAR, MMJDBCSQLTypeInfo.getSQLTypeFromRuntimeType(DataTypeManager.DefaultDataClasses.CHAR));
+        assertEquals(DataTypeManager.DefaultDataTypes.STRING, JDBCSQLTypeInfo.getTypeName(Types.CHAR));
+        assertEquals(Types.CHAR, JDBCSQLTypeInfo.getSQLTypeFromRuntimeType(DataTypeManager.DefaultDataClasses.CHAR));
     }
     
     @Test public void testRuntimeTypeConversion() throws Exception {

Modified: trunk/common-core/src/test/java/com/metamatrix/common/types/TestXMLStreamSourceTranslator.java
===================================================================
--- trunk/common-core/src/test/java/com/metamatrix/common/types/TestXMLStreamSourceTranslator.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/common-core/src/test/java/com/metamatrix/common/types/TestXMLStreamSourceTranslator.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -23,7 +23,6 @@
 package com.metamatrix.common.types;
 
 import java.io.StringReader;
-import java.util.Properties;
 import java.util.StringTokenizer;
 
 import javax.xml.transform.stream.StreamSource;
@@ -78,7 +77,7 @@
         "</Books:bookCollection>"; //$NON-NLS-1$
    
     public void testStreamSourceWithStream() throws Exception {
-        StandardXMLTranslator translator = new StandardXMLTranslator(new StreamSource(new StringReader(sourceXML)),  new Properties());
+        StandardXMLTranslator translator = new StandardXMLTranslator(new StreamSource(new StringReader(sourceXML)));
         compareDocuments(sourceXML, translator.getString());
     }    
     

Modified: trunk/connector-api/src/main/java/org/teiid/connector/api/TypeFacility.java
===================================================================
--- trunk/connector-api/src/main/java/org/teiid/connector/api/TypeFacility.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/connector-api/src/main/java/org/teiid/connector/api/TypeFacility.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -26,7 +26,7 @@
 import java.util.TimeZone;
 
 import com.metamatrix.common.types.DataTypeManager;
-import com.metamatrix.common.types.MMJDBCSQLTypeInfo;
+import com.metamatrix.common.types.JDBCSQLTypeInfo;
 
 /**
  */
@@ -95,11 +95,11 @@
      * @return
      */
     public static final int getSQLTypeFromRuntimeType(Class<?> type) {
-        return MMJDBCSQLTypeInfo.getSQLTypeFromRuntimeType(type);
+        return JDBCSQLTypeInfo.getSQLTypeFromRuntimeType(type);
     } 
     
     public static final String getDataTypeNameFromSQLType(int sqlType) {
-    	return MMJDBCSQLTypeInfo.getTypeName(sqlType);
+    	return JDBCSQLTypeInfo.getTypeName(sqlType);
     }
     
     /**

Modified: trunk/connectors/connector-xml-file/src/main/java/org/teiid/connector/xmlsource/file/FileProcedureExecution.java
===================================================================
--- trunk/connectors/connector-xml-file/src/main/java/org/teiid/connector/xmlsource/file/FileProcedureExecution.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/connectors/connector-xml-file/src/main/java/org/teiid/connector/xmlsource/file/FileProcedureExecution.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -27,11 +27,10 @@
 import java.io.FileInputStream;
 import java.io.IOException;
 import java.io.InputStream;
+import java.sql.SQLXML;
 import java.util.Arrays;
 import java.util.List;
 
-import javax.xml.transform.Source;
-
 import org.teiid.connector.api.ConnectorException;
 import org.teiid.connector.api.DataNotAvailableException;
 import org.teiid.connector.api.ExecutionContext;
@@ -55,7 +54,7 @@
     private Call procedure;
     private FileManagedConnectionFactory config;
     private boolean returnedResult;
-    protected Source returnValue;
+    private SQLXML returnValue;
     
     /** 
      * @param env
@@ -95,13 +94,13 @@
         
         String encoding = this.config.getCharacterEncodingScheme();
         
-        returnValue = new InputStreamFactory(encoding) {
+        returnValue = (SQLXML)this.config.getTypeFacility().convertToRuntimeType(new InputStreamFactory(encoding) {
 			
 			@Override
 			public InputStream getInputStream() throws IOException {
 				return new BufferedInputStream(new FileInputStream(xmlFile));
 			}
-		};
+		});
         
         this.config.getLogger().logDetail(XMLSourcePlugin.Util.getString("executing_procedure", new Object[] {procedure.getProcedureName()})); //$NON-NLS-1$
     }

Modified: trunk/connectors/connector-xml-file/src/test/java/org/teiid/connector/xmlsource/file/TestFileExecution.java
===================================================================
--- trunk/connectors/connector-xml-file/src/test/java/org/teiid/connector/xmlsource/file/TestFileExecution.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/connectors/connector-xml-file/src/test/java/org/teiid/connector/xmlsource/file/TestFileExecution.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -22,9 +22,8 @@
 
 package org.teiid.connector.xmlsource.file;
 
-import java.io.FileReader;
+import java.io.File;
 import java.io.PrintWriter;
-import java.io.Reader;
 import java.sql.SQLXML;
 import java.util.List;
 
@@ -33,60 +32,54 @@
 import org.mockito.Mockito;
 import org.teiid.connector.api.ConnectorException;
 import org.teiid.connector.api.ExecutionContext;
-import org.teiid.connector.language.LanguageFactory;
 import org.teiid.connector.language.Call;
+import org.teiid.connector.language.LanguageFactory;
 import org.teiid.connector.metadata.runtime.Procedure;
 import org.teiid.connector.metadata.runtime.RuntimeMetadata;
-import org.teiid.connector.xmlsource.file.FileConnection;
-import org.teiid.connector.xmlsource.file.FileProcedureExecution;
-import org.teiid.connector.xmlsource.file.FileManagedConnectionFactory;
 
+import com.metamatrix.core.util.ObjectConverterUtil;
 import com.metamatrix.core.util.UnitTestUtil;
 
 
 /** 
  */
+ at SuppressWarnings("nls")
 public class TestFileExecution extends TestCase {
     
-    public void testGoodFile() throws Exception {
+	public void testGoodFile() throws Exception {
         String file = UnitTestUtil.getTestDataPath(); 
         FileManagedConnectionFactory config = new FileManagedConnectionFactory();
         config.setLogWriter(Mockito.mock(PrintWriter.class));
         config.setDirectoryLocation(file);
         
-        try {
-            FileConnection conn = new FileConnection(config);
-            assertTrue(conn.isConnected());
-            RuntimeMetadata metadata = Mockito.mock(RuntimeMetadata.class);
+        FileConnection conn = new FileConnection(config);
+        assertTrue(conn.isConnected());
+        RuntimeMetadata metadata = Mockito.mock(RuntimeMetadata.class);
 
-            LanguageFactory fact = config.getLanguageFactory();
-           	Call procedure = fact.createCall("GetXMLFile", null, createMockProcedureMetadata("BookCollection.xml")); //$NON-NLS-1$
+        LanguageFactory fact = config.getLanguageFactory();
+       	Call procedure = fact.createCall("GetXMLFile", null, createMockProcedureMetadata("BookCollection.xml")); //$NON-NLS-1$
 
-            FileProcedureExecution exec = (FileProcedureExecution)conn.createExecution(procedure, Mockito.mock(ExecutionContext.class), metadata); //$NON-NLS-1$ //$NON-NLS-2$
-            
-            exec.execute();
-            
-            List result = exec.next();
-            assertNotNull(result);
-            assertNull(exec.next());
-            try {
-                exec.getOutputParameterValues();
-                fail("should have thrown error in returning a return"); //$NON-NLS-1$
-            }catch(Exception e) {                
-            }
-            SQLXML xmlSource = (SQLXML)result.get(0);            
-            assertNotNull(xmlSource);
-            String xml = xmlSource.getString();
-                        
-            String fileContents = readFile(file+"/BookCollection.xml"); //$NON-NLS-1$
-            fileContents = fileContents.replaceAll("\r", ""); //$NON-NLS-1$ //$NON-NLS-2$
-            //System.out.println(fileContents);
-            
-            assertEquals(fileContents, xml);
-        } catch (ConnectorException e) {
-            e.printStackTrace();
-            fail("must have passed connection"); //$NON-NLS-1$
-        }                    
+        FileProcedureExecution exec = (FileProcedureExecution)conn.createExecution(procedure, Mockito.mock(ExecutionContext.class), metadata); //$NON-NLS-1$ //$NON-NLS-2$
+        
+        exec.execute();
+        
+        List<?> result = exec.next();
+        assertNotNull(result);
+        assertNull(exec.next());
+        try {
+            exec.getOutputParameterValues();
+            fail("should have thrown error in returning a return"); //$NON-NLS-1$
+        }catch(Exception e) {                
+        }
+        SQLXML xmlSource = (SQLXML)result.get(0);            
+        assertNotNull(xmlSource);
+        String xml = xmlSource.getString();
+                    
+        String fileContents = ObjectConverterUtil.convertFileToString(new File(file+"/BookCollection.xml")); //$NON-NLS-1$
+        fileContents = fileContents.replaceAll("\r", ""); //$NON-NLS-1$ //$NON-NLS-2$
+        //System.out.println(fileContents);
+        
+        assertEquals(fileContents, xml);
     }
         
     public void testBadFile() throws Exception {
@@ -111,18 +104,6 @@
         }         
     }    
  
-    String readFile(String filename) throws Exception {
-        Reader reader = new FileReader(filename); 
-        StringBuffer fileContents = new StringBuffer();
-        int c= reader.read();
-        while (c != -1) {
-            fileContents.append((char)c);
-            c = reader.read();
-        }        
-        reader.close();
-        return fileContents.toString();
-    }    
-    
     public static Procedure createMockProcedureMetadata(String nameInSource) {
     	Procedure rm = Mockito.mock(Procedure.class);
 		Mockito.stub(rm.getNameInSource()).toReturn(nameInSource);

Modified: trunk/engine/src/main/java/com/metamatrix/common/buffer/impl/BufferManagerImpl.java
===================================================================
--- trunk/engine/src/main/java/com/metamatrix/common/buffer/impl/BufferManagerImpl.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/main/java/com/metamatrix/common/buffer/impl/BufferManagerImpl.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -371,7 +371,7 @@
 				if (value instanceof InputStreamFactory) {
 					return new XMLType(new SQLXMLImpl((InputStreamFactory)value));
 				}
-				StandardXMLTranslator sxt = new StandardXMLTranslator(value, null);
+				StandardXMLTranslator sxt = new StandardXMLTranslator(value);
 				SQLXMLImpl sqlxml;
 				try {
 					sqlxml = XMLUtil.saveToBufferManager(BufferManagerImpl.this, sxt, Streamable.STREAMING_BATCH_SIZE_IN_BYTES);

Modified: trunk/engine/src/main/java/com/metamatrix/common/log/LogConstants.java
===================================================================
--- trunk/engine/src/main/java/com/metamatrix/common/log/LogConstants.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/main/java/com/metamatrix/common/log/LogConstants.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -26,9 +26,7 @@
 
 public interface LogConstants {
 	// add the new contexts to the Log4JUtil.java class, for configuration purpose
-	public static final String CTX_SESSION = "SESSION"; //$NON-NLS-1$
-	public static final String CTX_MEMBERSHIP = "MEMBERSHIP"; //$NON-NLS-1$
-	public static final String CTX_AUTHORIZATION = "AUTHORIZATION"; //$NON-NLS-1$
+	public static final String CTX_SECURITY = "SECURITY"; //$NON-NLS-1$
 	public static final String CTX_TRANSPORT = "TRANSPORT"; //$NON-NLS-1$
 	public static final String CTX_QUERY_PLANNER = "PLANNER"; //$NON-NLS-1$
 	public static final String CTX_DQP = "PROCESSOR"; //$NON-NLS-1$

Modified: trunk/engine/src/main/java/com/metamatrix/query/analysis/AnalysisRecord.java
===================================================================
--- trunk/engine/src/main/java/com/metamatrix/query/analysis/AnalysisRecord.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/main/java/com/metamatrix/query/analysis/AnalysisRecord.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -25,6 +25,10 @@
 import java.io.*;
 import java.util.*;
 
+import com.metamatrix.common.log.LogConstants;
+import com.metamatrix.common.log.LogManager;
+import com.metamatrix.core.log.MessageLevel;
+
 /**
  * <p>The AnalysisRecord holds all debug/analysis information for 
  * a particular query as it is executed.  This includes:</p>
@@ -38,37 +42,41 @@
 public class AnalysisRecord implements Serializable {
 
     // Flags regarding what should be recorded
-    private boolean recordQueryPlan = false;
-    private boolean recordAnnotations = false;
-    private boolean recordDebug = false;
+    private boolean recordQueryPlan;
+    private boolean recordDebug;
+    private boolean logDebug;
     
     // Query plan
     private Map queryPlan;
     
     // Annotations
-    private Collection annotations;
+    private Collection<QueryAnnotation> annotations;
     
     // Debug trace log
     private StringWriter stringWriter;  // inner
     private PrintWriter debugWriter;    // public
     
-    public AnalysisRecord(boolean recordQueryPlan, boolean recordAnnotations, boolean recordDebug) {
+    public AnalysisRecord(boolean recordQueryPlan, boolean recordDebug) {
         this.recordQueryPlan = recordQueryPlan;
-        this.recordAnnotations = recordAnnotations;
-        this.recordDebug = recordDebug;
+        this.logDebug = recordDebug;
+        this.recordDebug = recordDebug | LogManager.isMessageToBeRecorded(LogConstants.CTX_QUERY_PLANNER, MessageLevel.TRACE);
         
-        if(recordAnnotations) {
-            this.annotations = new ArrayList();
+        if(recordQueryPlan) {
+            this.annotations = new ArrayList<QueryAnnotation>();
         }
         
-        if(recordDebug) {
+        if(this.recordDebug) {
             this.stringWriter = new StringWriter();
             this.debugWriter = new PrintWriter(this.stringWriter); 
         }
     }
     
+    public boolean logDebug() {
+		return logDebug;
+	}
+    
     public static AnalysisRecord createNonRecordingRecord() {
-        return new AnalysisRecord(false, false, false);
+        return new AnalysisRecord(false, false);
     }
 
     /**
@@ -84,7 +92,7 @@
      * @return True to record
      */
     public boolean recordAnnotations() {
-        return this.recordAnnotations;
+        return this.recordQueryPlan;
     }
     
     /**
@@ -124,7 +132,7 @@
      * Get annotations.  
      * @return
      */
-    public Collection getAnnotations() {
+    public Collection<QueryAnnotation> getAnnotations() {
         return this.annotations;
     }
     

Modified: trunk/engine/src/main/java/com/metamatrix/query/analysis/QueryAnnotation.java
===================================================================
--- trunk/engine/src/main/java/com/metamatrix/query/analysis/QueryAnnotation.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/main/java/com/metamatrix/query/analysis/QueryAnnotation.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -28,6 +28,7 @@
 public class QueryAnnotation {
     
     public static final String MATERIALIZED_VIEW = "Materialized View"; //$NON-NLS-1$
+    public static final String HINTS = "Hints"; //$NON-NLS-1$
     
     public static final int LOW = 1;
     public static final int MEDIUM = 2;

Modified: trunk/engine/src/main/java/com/metamatrix/query/optimizer/QueryOptimizer.java
===================================================================
--- trunk/engine/src/main/java/com/metamatrix/query/optimizer/QueryOptimizer.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/main/java/com/metamatrix/query/optimizer/QueryOptimizer.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -70,7 +70,7 @@
 		throws QueryPlannerException, QueryMetadataException, MetaMatrixComponentException {
 
 		if (analysisRecord == null) {
-			analysisRecord = new AnalysisRecord(false, false, false);
+			analysisRecord = new AnalysisRecord(false, false);
 		}
 		
 		if (context == null) {

Modified: trunk/engine/src/main/java/com/metamatrix/query/optimizer/proc/ProcedurePlanner.java
===================================================================
--- trunk/engine/src/main/java/com/metamatrix/query/optimizer/proc/ProcedurePlanner.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/main/java/com/metamatrix/query/optimizer/proc/ProcedurePlanner.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -22,7 +22,6 @@
 
 package com.metamatrix.query.optimizer.proc;
 
-import java.util.Iterator;
 import java.util.Map;
 
 import com.metamatrix.api.exception.MetaMatrixComponentException;

Modified: trunk/engine/src/main/java/com/metamatrix/query/optimizer/relational/RelationalPlanner.java
===================================================================
--- trunk/engine/src/main/java/com/metamatrix/query/optimizer/relational/RelationalPlanner.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/main/java/com/metamatrix/query/optimizer/relational/RelationalPlanner.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -237,7 +237,7 @@
      * @param groups List of groups (Strings) to be made dependent
      * @param plan The canonical plan
      */
-    private static void distributeDependentHints(Collection<String> groups, PlanNode plan, QueryMetadataInterface metadata, NodeConstants.Info hintProperty)
+    private void distributeDependentHints(Collection<String> groups, PlanNode plan, QueryMetadataInterface metadata, NodeConstants.Info hintProperty)
         throws QueryMetadataException, MetaMatrixComponentException {
     
         if(groups == null || groups.isEmpty()) {
@@ -261,7 +261,9 @@
                 }
                 
                 if(! appliedHint) {
-                    LogManager.logWarning(LogConstants.CTX_QUERY_PLANNER, QueryExecPlugin.Util.getString(ErrorMessageKeys.OPTIMIZER_0010, groupName));
+                	String msg = QueryExecPlugin.Util.getString(ErrorMessageKeys.OPTIMIZER_0010, groupName);
+                    LogManager.logInfo(LogConstants.CTX_QUERY_PLANNER, msg);
+                    this.analysisRecord.addAnnotation(new QueryAnnotation(QueryAnnotation.HINTS, msg, "ignoring hint", QueryAnnotation.MEDIUM)); //$NON-NLS-1$
                 }
             }
         }

Modified: trunk/engine/src/main/java/com/metamatrix/query/optimizer/relational/rules/RuleChooseDependent.java
===================================================================
--- trunk/engine/src/main/java/com/metamatrix/query/optimizer/relational/rules/RuleChooseDependent.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/main/java/com/metamatrix/query/optimizer/relational/rules/RuleChooseDependent.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -31,8 +31,6 @@
 import com.metamatrix.api.exception.MetaMatrixComponentException;
 import com.metamatrix.api.exception.query.QueryMetadataException;
 import com.metamatrix.api.exception.query.QueryPlannerException;
-import com.metamatrix.common.log.LogConstants;
-import com.metamatrix.common.log.LogManager;
 import com.metamatrix.query.analysis.AnalysisRecord;
 import com.metamatrix.query.metadata.QueryMetadataInterface;
 import com.metamatrix.query.optimizer.capabilities.CapabilitiesFinder;
@@ -68,7 +66,7 @@
         throws QueryPlannerException, QueryMetadataException, MetaMatrixComponentException {
         
         // Find first criteria node in plan with conjuncts        
-        List<CandidateJoin> matches = findCandidate(plan, metadata);
+        List<CandidateJoin> matches = findCandidate(plan, metadata, analysisRecord);
         
         boolean pushCriteria = false;
 
@@ -84,7 +82,7 @@
             
             JoinStrategyType joinStrategy = (JoinStrategyType)joinNode.getProperty(NodeConstants.Info.JOIN_STRATEGY);
             
-            PlanNode chosenNode = chooseDepWithoutCosting(sourceNode, bothCandidates?siblingNode:null);
+            PlanNode chosenNode = chooseDepWithoutCosting(sourceNode, bothCandidates?siblingNode:null, analysisRecord);
             if(chosenNode != null) {
                 pushCriteria |= markDependent(chosenNode, joinNode);
                 continue;
@@ -148,7 +146,7 @@
      * @param node Root node to search
      * @param matches Collection to accumulate matches in
      */
-    List<CandidateJoin> findCandidate(PlanNode root, QueryMetadataInterface metadata) {
+    List<CandidateJoin> findCandidate(PlanNode root, QueryMetadataInterface metadata, AnalysisRecord analysisRecord) {
 
         List<CandidateJoin> candidates = new ArrayList<CandidateJoin>();
         
@@ -159,7 +157,7 @@
                 PlanNode child = (PlanNode)j.next();
                 child = FrameUtil.findJoinSourceNode(child);
                 
-                if(child.hasBooleanProperty(NodeConstants.Info.MAKE_NOT_DEP) || !isValidJoin(joinNode, child)) {
+                if(child.hasBooleanProperty(NodeConstants.Info.MAKE_NOT_DEP) || !isValidJoin(joinNode, child, analysisRecord)) {
                 	continue;
                 }
                 if (candidate == null) {
@@ -185,39 +183,48 @@
      * join that has the outer side not the same as the dependent.
      * @param joinNode The join node to check
      * @param sourceNode The access node being considered
+     * @param analysisRecord TODO
      * @return True if valid for making dependent
      */
-    boolean isValidJoin(PlanNode joinNode, PlanNode sourceNode) {
+    boolean isValidJoin(PlanNode joinNode, PlanNode sourceNode, AnalysisRecord analysisRecord) {
         JoinType jtype = (JoinType) joinNode.getProperty(NodeConstants.Info.JOIN_TYPE);
 
         // Check that join is not a CROSS join or FULL OUTER join
         if(jtype.equals(JoinType.JOIN_CROSS) || jtype.equals(JoinType.JOIN_FULL_OUTER)) {
-            LogManager.logTrace(LogConstants.CTX_QUERY_PLANNER, new Object[] {"Rejecting dependent access node as parent join is CROSS or FULL OUTER: ", sourceNode.nodeToString()}); //$NON-NLS-1$
+        	if (analysisRecord.recordDebug()) {
+        		analysisRecord.println("Rejecting dependent access node as parent join is CROSS or FULL OUTER: "+ sourceNode.nodeToString()); //$NON-NLS-1$
+        	}
             return false;
         }
 
         // Check that join criteria exist
         List jcrit = (List) joinNode.getProperty(NodeConstants.Info.JOIN_CRITERIA);
         if(jcrit == null || jcrit.size() == 0) {
-            LogManager.logTrace(LogConstants.CTX_QUERY_PLANNER, new Object[] {"Rejecting dependent access node as parent join has no join criteria: ", sourceNode.nodeToString()}); //$NON-NLS-1$
+        	if (analysisRecord.recordDebug()) {
+        		analysisRecord.println("Rejecting dependent access node as parent join has no join criteria: "+ sourceNode.nodeToString()); //$NON-NLS-1$
+        	}
             return false;
         }
         
         if(joinNode.getProperty(NodeConstants.Info.LEFT_EXPRESSIONS) == null) { 
-            LogManager.logTrace(LogConstants.CTX_QUERY_PLANNER, new Object[] {"Rejecting dependent access node as parent join has no equality expressions: ", sourceNode.nodeToString()}); //$NON-NLS-1$
+        	if (analysisRecord.recordDebug()) {
+        		analysisRecord.println("Rejecting dependent access node as parent join has no equality expressions: "+ sourceNode.nodeToString()); //$NON-NLS-1$
+        	}
             return false;
         }
                         
         // Check that for a left or right outer join the dependent side must be the inner 
         if(jtype.isOuter() && JoinUtil.getInnerSideJoinNodes(joinNode)[0] != sourceNode) {
-            LogManager.logTrace(LogConstants.CTX_QUERY_PLANNER, new Object[] {"Rejecting dependent access node as it is on outer side of a join: ", sourceNode.nodeToString()}); //$NON-NLS-1$
+        	if (analysisRecord.recordDebug()) {
+        		analysisRecord.println("Rejecting dependent access node as it is on outer side of a join: "+ sourceNode.nodeToString()); //$NON-NLS-1$
+        	}
             return false;
         }
 
         return true;        
     }
     
-    PlanNode chooseDepWithoutCosting(PlanNode rootNode1, PlanNode rootNode2)  {
+    PlanNode chooseDepWithoutCosting(PlanNode rootNode1, PlanNode rootNode2, AnalysisRecord analysisRecord)  {
     	PlanNode sourceNode1 = FrameUtil.findJoinSourceNode(rootNode1);
         PlanNode sourceNode2 = null;
         
@@ -228,23 +235,31 @@
             if (sourceNode2 != null && sourceNode2.hasCollectionProperty(NodeConstants.Info.ACCESS_PATTERNS) ) {
                 //Return null - query planning should fail because both access nodes
                 //have unsatisfied access patterns
-                LogManager.logTrace(LogConstants.CTX_QUERY_PLANNER, new Object[] {"Neither access node can be made dependent because both have unsatisfied access patterns: ", sourceNode1.nodeToString(), "\n", sourceNode2.toString()}); //$NON-NLS-1$ //$NON-NLS-2$
+            	if (analysisRecord.recordDebug()) {
+            		analysisRecord.println("Neither access node can be made dependent because both have unsatisfied access patterns: " + sourceNode1.nodeToString() + "\n" + sourceNode2.toString()); //$NON-NLS-1$ //$NON-NLS-2$
+            	}
                 return null;
             }  
             return rootNode1;
         } else if (sourceNode2 != null && sourceNode2.hasCollectionProperty(NodeConstants.Info.ACCESS_PATTERNS) ) {
             //Access node 2 has unsatisfied access pattern,
             //so try to make node 2 dependent
-            LogManager.logTrace(LogConstants.CTX_QUERY_PLANNER, new Object[] {"Making access node dependent to satisfy access pattern: ", sourceNode2.nodeToString()}); //$NON-NLS-1$
+        	if (analysisRecord.recordDebug()) {
+        		analysisRecord.println("Making access node dependent to satisfy access pattern: "+ sourceNode2.nodeToString()); //$NON-NLS-1$
+        	}
             return rootNode2;
         } 
         
         // Check for hints, which over-rule heuristics
         if(sourceNode1.hasBooleanProperty(NodeConstants.Info.MAKE_DEP)) {
-            LogManager.logTrace(LogConstants.CTX_QUERY_PLANNER, new Object[] {"Making access node dependent due to hint: ", sourceNode1.nodeToString()});                     //$NON-NLS-1$
+        	if (analysisRecord.recordDebug()) {
+        		analysisRecord.println("Making access node dependent due to hint: "+ sourceNode1.nodeToString());                     //$NON-NLS-1$
+        	}
             return rootNode1;
         } else if(sourceNode2 != null && sourceNode2.hasBooleanProperty(NodeConstants.Info.MAKE_DEP)) {
-            LogManager.logTrace(LogConstants.CTX_QUERY_PLANNER, new Object[] {"Making access node dependent due to hint: ", sourceNode2.nodeToString()});                     //$NON-NLS-1$
+        	if (analysisRecord.recordDebug()) {
+        		analysisRecord.println("Making access node dependent due to hint: "+ sourceNode2.nodeToString());                     //$NON-NLS-1$
+        	}
             return rootNode2;
         }
         

Modified: trunk/engine/src/main/java/org/teiid/dqp/internal/datamgr/impl/ConnectorManager.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/dqp/internal/datamgr/impl/ConnectorManager.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/main/java/org/teiid/dqp/internal/datamgr/impl/ConnectorManager.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -239,7 +239,7 @@
      * @param qr Request that contains the MetaMatrix command information in the transaction.
      */
     void logSRCCommand(AtomicRequestMessage qr, ExecutionContext context, Event cmdStatus, Integer finalRowCnt) {
-    	if (!LogManager.isMessageToBeRecorded(LogConstants.CTX_COMMANDLOGGING, MessageLevel.INFO)) {
+    	if (!LogManager.isMessageToBeRecorded(LogConstants.CTX_COMMANDLOGGING, MessageLevel.DETAIL)) {
     		return;
     	}
         String sqlStr = null;

Modified: trunk/engine/src/main/java/org/teiid/dqp/internal/process/DQPCore.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/dqp/internal/process/DQPCore.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/main/java/org/teiid/dqp/internal/process/DQPCore.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -547,7 +547,7 @@
 	}	
 	
     void logMMCommand(RequestWorkItem workItem, Event status, Integer rowCount) {
-    	if (!LogManager.isMessageToBeRecorded(LogConstants.CTX_COMMANDLOGGING, MessageLevel.INFO)) {
+    	if (!LogManager.isMessageToBeRecorded(LogConstants.CTX_COMMANDLOGGING, MessageLevel.DETAIL)) {
     		return;
     	}
     	

Modified: trunk/engine/src/main/java/org/teiid/dqp/internal/process/Request.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/dqp/internal/process/Request.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/main/java/org/teiid/dqp/internal/process/Request.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -50,6 +50,7 @@
 import com.metamatrix.common.types.DataTypeManager;
 import com.metamatrix.core.id.IDGenerator;
 import com.metamatrix.core.id.IntegerIDFactory;
+import com.metamatrix.core.log.MessageLevel;
 import com.metamatrix.core.util.Assertion;
 import com.metamatrix.dqp.DQPPlugin;
 import com.metamatrix.dqp.message.RequestID;
@@ -255,7 +256,7 @@
         context.setSecurityFunctionEvaluator(new SecurityFunctionEvaluator() {
 			@Override
 			public boolean hasRole(String roleType, String roleName) throws MetaMatrixComponentException {
-				if (isEntitled() || !useEntitlements) {
+				if (!useEntitlements) {
 					return true;
 				}
 		        if (!DATA_ROLE.equalsIgnoreCase(roleType)) {
@@ -450,14 +451,12 @@
             } finally {
                 String debugLog = analysisRecord.getDebugLog();
                 if(debugLog != null && debugLog.length() > 0) {
-                    LogManager.logInfo(LogConstants.CTX_DQP, debugLog);               
+                    LogManager.log(analysisRecord.logDebug()?MessageLevel.INFO:MessageLevel.TRACE, LogConstants.CTX_QUERY_PLANNER, debugLog);               
                 }
             }
             LogManager.logDetail(LogConstants.CTX_DQP, new Object[] { DQPPlugin.Util.getString("BasicInterceptor.ProcessTree_for__4"), requestId, processPlan }); //$NON-NLS-1$
         } catch (QueryMetadataException e) {
-            Object[] params = new Object[] { requestId};
-            String msg = DQPPlugin.Util.getString("DQPCore.Unknown_query_metadata_exception_while_registering_query__{0}.", params); //$NON-NLS-1$
-            throw new QueryPlannerException(e, msg);
+            throw new QueryPlannerException(e, DQPPlugin.Util.getString("DQPCore.Unknown_query_metadata_exception_while_registering_query__{0}.", requestId)); //$NON-NLS-1$
         }
     }
 
@@ -470,7 +469,7 @@
             debug = option.getDebug();
         }
         
-        this.analysisRecord = new AnalysisRecord(getPlan, getPlan, debug);
+        this.analysisRecord = new AnalysisRecord(getPlan, debug);
     }
 
     public void processRequest() 
@@ -545,15 +544,8 @@
 	}
 
 	protected void validateAccess(Command command) throws QueryValidatorException, MetaMatrixComponentException {
-		AuthorizationValidationVisitor visitor = new AuthorizationValidationVisitor(this.workContext.getVDB(), !isEntitled() && this.useEntitlements, this.workContext.getAllowedDataPolicies(), this.workContext.getUserName());
+		AuthorizationValidationVisitor visitor = new AuthorizationValidationVisitor(this.workContext.getVDB(), this.useEntitlements, this.workContext.getAllowedDataPolicies(), this.workContext.getUserName());
 		validateWithVisitor(visitor, this.metadata, command);
 	}
 	
-    protected boolean isEntitled(){
-        if (this.workContext.getSubject() == null) {
-            LogManager.logDetail(com.metamatrix.common.log.LogConstants.CTX_AUTHORIZATION,new Object[]{ "Automatically entitling principal", this.workContext.getUserName()}); //$NON-NLS-1$ 
-            return true;
-        }
-        return false;
-    }	
 }

Modified: trunk/engine/src/main/java/org/teiid/dqp/internal/process/validator/AuthorizationValidationVisitor.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/dqp/internal/process/validator/AuthorizationValidationVisitor.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/main/java/org/teiid/dqp/internal/process/validator/AuthorizationValidationVisitor.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -44,6 +44,7 @@
 import com.metamatrix.api.exception.MetaMatrixComponentException;
 import com.metamatrix.api.exception.MetaMatrixProcessingException;
 import com.metamatrix.api.exception.query.QueryMetadataException;
+import com.metamatrix.common.log.LogConstants;
 import com.metamatrix.common.log.LogManager;
 import com.metamatrix.core.log.MessageLevel;
 import com.metamatrix.dqp.DQPPlugin;
@@ -316,16 +317,15 @@
      * Out of resources specified, return the subset for which the specified not have authorization to access.
      */
     public Set<String> getInaccessibleResources(DataPolicy.PermissionType action, Set<String> resources, Context context) {
-    	
-        LogManager.logDetail(com.metamatrix.common.log.LogConstants.CTX_AUTHORIZATION, new Object[]{"getInaccessibleResources(", this.userName, ", ", context, ", ", resources, ")"}); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-        
         if (!this.useEntitlements) {
-        	return Collections.EMPTY_SET;
+        	return Collections.emptySet();
         }
         
-        // Audit - request
-    	AuditMessage msg = new AuditMessage(context.name(), "getInaccessibleResources-request", this.userName, resources.toArray(new String[resources.size()])); //$NON-NLS-1$
-    	LogManager.log(MessageLevel.INFO, com.metamatrix.common.log.LogConstants.CTX_AUDITLOGGING, msg);
+        if (LogManager.isMessageToBeRecorded(LogConstants.CTX_AUDITLOGGING, MessageLevel.DETAIL)) {
+	        // Audit - request
+	    	AuditMessage msg = new AuditMessage(context.name(), "getInaccessibleResources-request", this.userName, resources.toArray(new String[resources.size()])); //$NON-NLS-1$
+	    	LogManager.logDetail(LogConstants.CTX_AUDITLOGGING, msg);
+        }
         
         HashSet<String> results = new HashSet<String>(resources);
         
@@ -344,13 +344,15 @@
 			}
 		}
 
-        if (results.isEmpty()) {
-        	msg = new AuditMessage(context.name(), "getInaccessibleResources-granted all", this.userName, resources.toArray(new String[resources.size()])); //$NON-NLS-1$
-        	LogManager.log(MessageLevel.INFO, com.metamatrix.common.log.LogConstants.CTX_AUDITLOGGING, msg);
-        } else {
-        	msg = new AuditMessage(context.name(), "getInaccessibleResources-denied", this.userName, resources.toArray(new String[resources.size()])); //$NON-NLS-1$
-        	LogManager.log(MessageLevel.INFO, com.metamatrix.common.log.LogConstants.CTX_AUDITLOGGING, msg);
-        }
+		if (LogManager.isMessageToBeRecorded(LogConstants.CTX_AUDITLOGGING, MessageLevel.DETAIL)) {
+	        if (results.isEmpty()) {
+	        	AuditMessage msg = new AuditMessage(context.name(), "getInaccessibleResources-granted all", this.userName, resources.toArray(new String[resources.size()])); //$NON-NLS-1$
+	        	LogManager.logDetail(LogConstants.CTX_AUDITLOGGING, msg);
+	        } else {
+	        	AuditMessage msg = new AuditMessage(context.name(), "getInaccessibleResources-denied", this.userName, resources.toArray(new String[resources.size()])); //$NON-NLS-1$
+	        	LogManager.logDetail(LogConstants.CTX_AUDITLOGGING, msg);
+	        }
+		}
         return results;
     }    
 }

Modified: trunk/engine/src/test/java/com/metamatrix/query/analysis/TestAnalysisRecord.java
===================================================================
--- trunk/engine/src/test/java/com/metamatrix/query/analysis/TestAnalysisRecord.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/test/java/com/metamatrix/query/analysis/TestAnalysisRecord.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -41,7 +41,7 @@
     }
 
     public void testQueryPlan() {
-        AnalysisRecord rec = new AnalysisRecord(true, false, false);
+        AnalysisRecord rec = new AnalysisRecord(true, false);
         assertTrue(rec.recordQueryPlan());
         
         Map plan = new HashMap();
@@ -51,7 +51,7 @@
     }
     
     public void testAnnotations() {
-        AnalysisRecord rec = new AnalysisRecord(false, true, false);
+        AnalysisRecord rec = new AnalysisRecord(true, false);
         assertTrue(rec.recordAnnotations());
         
         QueryAnnotation ann1 = new QueryAnnotation("cat", "ann", "res", QueryAnnotation.MEDIUM); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
@@ -60,7 +60,7 @@
         rec.addAnnotation(ann1);
         rec.addAnnotation(ann2);
         
-        Collection annotations = rec.getAnnotations();
+        Collection<QueryAnnotation> annotations = rec.getAnnotations();
         assertEquals(2, annotations.size());
         assertTrue(annotations.contains(ann1));
         assertTrue(annotations.contains(ann2));
@@ -68,7 +68,7 @@
     }
     
     public void testDebugLog() {
-        AnalysisRecord rec = new AnalysisRecord(false, false, true);
+        AnalysisRecord rec = new AnalysisRecord(false, true);
         assertTrue(rec.recordDebug());
         
         rec.println("a"); //$NON-NLS-1$

Modified: trunk/engine/src/test/java/com/metamatrix/query/optimizer/TestOptimizer.java
===================================================================
--- trunk/engine/src/test/java/com/metamatrix/query/optimizer/TestOptimizer.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/test/java/com/metamatrix/query/optimizer/TestOptimizer.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -282,7 +282,7 @@
 		// plan
 		ProcessorPlan plan = null;
 		if (analysisRecord == null) {
-        	analysisRecord = new AnalysisRecord(false, false, DEBUG);
+        	analysisRecord = new AnalysisRecord(false, DEBUG);
 		}
 		if (shouldSucceed) {
 			try {

Modified: trunk/engine/src/test/java/com/metamatrix/query/optimizer/batch/TestBatchedUpdatePlanner.java
===================================================================
--- trunk/engine/src/test/java/com/metamatrix/query/optimizer/batch/TestBatchedUpdatePlanner.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/test/java/com/metamatrix/query/optimizer/batch/TestBatchedUpdatePlanner.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -95,7 +95,7 @@
         
         // plan
         ProcessorPlan plan = null;
-        AnalysisRecord analysisRecord = new AnalysisRecord(false, false, DEBUG);
+        AnalysisRecord analysisRecord = new AnalysisRecord(false, DEBUG);
         if (shouldSucceed) {
             try {
                 //do planning

Modified: trunk/engine/src/test/java/com/metamatrix/query/optimizer/proc/TestProcedurePlanner.java
===================================================================
--- trunk/engine/src/test/java/com/metamatrix/query/optimizer/proc/TestProcedurePlanner.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/test/java/com/metamatrix/query/optimizer/proc/TestProcedurePlanner.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -82,7 +82,7 @@
         }
         userCommand = QueryRewriter.rewrite(userCommand, metadata, null);
         
-        AnalysisRecord analysisRecord = new AnalysisRecord(false, false, DEBUG);
+        AnalysisRecord analysisRecord = new AnalysisRecord(false, DEBUG);
         
         try {
             return QueryOptimizer.optimizePlan(userCommand, metadata, null, new DefaultCapabilitiesFinder(), analysisRecord, null);

Modified: trunk/engine/src/test/java/com/metamatrix/query/optimizer/relational/TestMaterialization.java
===================================================================
--- trunk/engine/src/test/java/com/metamatrix/query/optimizer/relational/TestMaterialization.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/test/java/com/metamatrix/query/optimizer/relational/TestMaterialization.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -43,16 +43,16 @@
         String userSql = "SELECT MATVIEW.E1 FROM MATVIEW"; //$NON-NLS-1$
         
         QueryMetadataInterface metadata = FakeMetadataFactory.exampleMaterializedView();
-        AnalysisRecord analysis = new AnalysisRecord(false, true, DEBUG);
+        AnalysisRecord analysis = new AnalysisRecord(true, DEBUG);
         
         Command command = helpGetCommand(userSql, metadata, null);
         
         TestOptimizer.helpPlanCommand(command, metadata, getGenericFinder(), analysis, new String[] {"SELECT g_0.e1 FROM MatTable.MatTable AS g_0"}, ComparisonMode.EXACT_COMMAND_STRING); //$NON-NLS-1$
 
-        Collection annotations = analysis.getAnnotations();
+        Collection<QueryAnnotation> annotations = analysis.getAnnotations();
         assertNotNull("Expected annotations but got none", annotations); //$NON-NLS-1$
         assertTrue("Expected one annotation", annotations.size() == 1); //$NON-NLS-1$
-        assertEquals("Expected catagory mat view", ((QueryAnnotation)annotations.iterator().next()).getCategory(), QueryAnnotation.MATERIALIZED_VIEW); //$NON-NLS-1$
+        assertEquals("Expected catagory mat view", annotations.iterator().next().getCategory(), QueryAnnotation.MATERIALIZED_VIEW); //$NON-NLS-1$
     }
 
     @Ignore("we no longer auto detect this case, if we need this logic it will have to be added to the rewriter since it changes select into to an insert")
@@ -60,32 +60,32 @@
         String userSql = "SELECT MATVIEW.E1 INTO MatTable.MatStage FROM MATVIEW"; //$NON-NLS-1$
         
         QueryMetadataInterface metadata = FakeMetadataFactory.exampleMaterializedView();
-        AnalysisRecord analysis = new AnalysisRecord(false, true, DEBUG);
+        AnalysisRecord analysis = new AnalysisRecord(true, DEBUG);
 
         Command command = helpGetCommand(userSql, metadata, null);
         
         TestOptimizer.helpPlanCommand(command, metadata, getGenericFinder(), analysis, new String[] {"SELECT g_0.x FROM MatSrc.MatSrc AS g_0"}, ComparisonMode.EXACT_COMMAND_STRING); //$NON-NLS-1$
 
-        Collection annotations = analysis.getAnnotations();
+        Collection<QueryAnnotation> annotations = analysis.getAnnotations();
         assertNotNull("Expected annotations but got none", annotations); //$NON-NLS-1$
         assertTrue("Expected one annotation", annotations.size() == 1); //$NON-NLS-1$
-        assertEquals("Expected catagory mat view", ((QueryAnnotation)annotations.iterator().next()).getCategory(), QueryAnnotation.MATERIALIZED_VIEW); //$NON-NLS-1$
+        assertEquals("Expected catagory mat view", annotations.iterator().next().getCategory(), QueryAnnotation.MATERIALIZED_VIEW); //$NON-NLS-1$
     }    
     
     @Test public void testMaterializedTransformationNoCache() throws Exception {
         String userSql = "SELECT MATVIEW.E1 FROM MATVIEW OPTION NOCACHE MatView.MatView"; //$NON-NLS-1$
         
         QueryMetadataInterface metadata = FakeMetadataFactory.exampleMaterializedView();
-        AnalysisRecord analysis = new AnalysisRecord(false, true, DEBUG);
+        AnalysisRecord analysis = new AnalysisRecord(true, DEBUG);
         
         Command command = helpGetCommand(userSql, metadata, null);
         
         TestOptimizer.helpPlanCommand(command, metadata, getGenericFinder(), analysis, new String[] {"SELECT g_0.x FROM MatSrc.MatSrc AS g_0"}, ComparisonMode.EXACT_COMMAND_STRING); //$NON-NLS-1$
         
-        Collection annotations = analysis.getAnnotations();
+        Collection<QueryAnnotation> annotations = analysis.getAnnotations();
         assertNotNull("Expected annotations but got none", annotations); //$NON-NLS-1$
         assertTrue("Expected one annotation", annotations.size() == 1); //$NON-NLS-1$
-        assertEquals("Expected catagory mat view", ((QueryAnnotation)annotations.iterator().next()).getCategory(), QueryAnnotation.MATERIALIZED_VIEW); //$NON-NLS-1$
+        assertEquals("Expected catagory mat view", annotations.iterator().next().getCategory(), QueryAnnotation.MATERIALIZED_VIEW); //$NON-NLS-1$
     }
     
     //related to defect 14423
@@ -93,23 +93,23 @@
         String userSql = "SELECT MATVIEW.E1 FROM MATVIEW OPTION NOCACHE"; //$NON-NLS-1$
         
         QueryMetadataInterface metadata = FakeMetadataFactory.exampleMaterializedView();
-        AnalysisRecord analysis = new AnalysisRecord(false, true, DEBUG);
+        AnalysisRecord analysis = new AnalysisRecord(true, DEBUG);
         
         Command command = helpGetCommand(userSql, metadata, null);
         
         TestOptimizer.helpPlanCommand(command, metadata, getGenericFinder(), analysis, new String[] {"SELECT g_0.x FROM MatSrc.MatSrc AS g_0"}, ComparisonMode.EXACT_COMMAND_STRING); //$NON-NLS-1$
         
-        Collection annotations = analysis.getAnnotations();
+        Collection<QueryAnnotation> annotations = analysis.getAnnotations();
         assertNotNull("Expected annotations but got none", annotations); //$NON-NLS-1$
         assertTrue("Expected one annotation", annotations.size() == 1); //$NON-NLS-1$
-        assertEquals("Expected catagory mat view", ((QueryAnnotation)annotations.iterator().next()).getCategory(), QueryAnnotation.MATERIALIZED_VIEW); //$NON-NLS-1$
+        assertEquals("Expected catagory mat view", annotations.iterator().next().getCategory(), QueryAnnotation.MATERIALIZED_VIEW); //$NON-NLS-1$
     }
     
     @Test public void testNoCacheInTransformation() throws Exception {
         String userSql = "SELECT VGROUP.E1 FROM VGROUP"; //$NON-NLS-1$
         
         QueryMetadataInterface metadata = FakeMetadataFactory.exampleMaterializedView();
-        AnalysisRecord analysis = new AnalysisRecord(false, true, DEBUG);
+        AnalysisRecord analysis = new AnalysisRecord(true, DEBUG);
         
         Command command = helpGetCommand(userSql, metadata, null);
         
@@ -120,7 +120,7 @@
         String userSql = "SELECT MATVIEW1.E1 FROM MATVIEW1 option nocache matview.matview1"; //$NON-NLS-1$
         
         QueryMetadataInterface metadata = FakeMetadataFactory.exampleMaterializedView();
-        AnalysisRecord analysis = new AnalysisRecord(false, true, DEBUG);
+        AnalysisRecord analysis = new AnalysisRecord(true, DEBUG);
         
         Command command = helpGetCommand(userSql, metadata, null);
         
@@ -131,7 +131,7 @@
         String userSql = "SELECT MATVIEW1.E1 FROM MATVIEW1 option nocache"; //$NON-NLS-1$
         
         QueryMetadataInterface metadata = FakeMetadataFactory.exampleMaterializedView();
-        AnalysisRecord analysis = new AnalysisRecord(false, true, DEBUG);
+        AnalysisRecord analysis = new AnalysisRecord(true, DEBUG);
         
         Command command = helpGetCommand(userSql, metadata, null);
         

Modified: trunk/engine/src/test/java/com/metamatrix/query/optimizer/relational/rules/TestRuleAccessPatternValidation.java
===================================================================
--- trunk/engine/src/test/java/com/metamatrix/query/optimizer/relational/rules/TestRuleAccessPatternValidation.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/test/java/com/metamatrix/query/optimizer/relational/rules/TestRuleAccessPatternValidation.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -119,7 +119,7 @@
 				System.out.println("EXECUTING " + rule); //$NON-NLS-1$
 			}
              
-            plan = rule.execute(plan, metadata, FINDER, rules, new AnalysisRecord(false, false, debug), context);
+            plan = rule.execute(plan, metadata, FINDER, rules, new AnalysisRecord(false, debug), context);
 			if(debug) {
 				System.out.println("\nAFTER: \n" + plan); //$NON-NLS-1$
 			}

Modified: trunk/engine/src/test/java/com/metamatrix/query/optimizer/relational/rules/TestRuleChooseDependent.java
===================================================================
--- trunk/engine/src/test/java/com/metamatrix/query/optimizer/relational/rules/TestRuleChooseDependent.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/test/java/com/metamatrix/query/optimizer/relational/rules/TestRuleChooseDependent.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -35,6 +35,7 @@
 import com.metamatrix.api.exception.MetaMatrixComponentException;
 import com.metamatrix.api.exception.query.QueryMetadataException;
 import com.metamatrix.api.exception.query.QueryPlannerException;
+import com.metamatrix.query.analysis.AnalysisRecord;
 import com.metamatrix.query.optimizer.TestOptimizer;
 import com.metamatrix.query.optimizer.capabilities.FakeCapabilitiesFinder;
 import com.metamatrix.query.optimizer.relational.RuleStack;
@@ -168,7 +169,7 @@
     public void helpTestValidJoin(PlanNode joinNode, PlanNode accessNode, boolean expectedValid) {
         RuleChooseDependent rule = new RuleChooseDependent();
         RuleChooseJoinStrategy.chooseJoinStrategy(joinNode, metadata);
-        boolean isValid = rule.isValidJoin(joinNode, accessNode);
+        boolean isValid = rule.isValidJoin(joinNode, accessNode, AnalysisRecord.createNonRecordingRecord());
         assertEquals("Valid join check is wrong ", expectedValid, isValid);         //$NON-NLS-1$
     }
 

Modified: trunk/engine/src/test/java/com/metamatrix/query/optimizer/xml/TestXMLPlanner.java
===================================================================
--- trunk/engine/src/test/java/com/metamatrix/query/optimizer/xml/TestXMLPlanner.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/test/java/com/metamatrix/query/optimizer/xml/TestXMLPlanner.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -793,7 +793,7 @@
         throws QueryPlannerException, QueryMetadataException, MetaMatrixComponentException {
         IDGenerator idGenerator = new IDGenerator();
         idGenerator.setDefaultFactory(new IntegerIDFactory());
-        AnalysisRecord analysis = new AnalysisRecord(false, false, DEBUG);
+        AnalysisRecord analysis = new AnalysisRecord(false, DEBUG);
         try {
             if (DEBUG) {
                 System.out.println("\n####################################\n" + command); //$NON-NLS-1$

Modified: trunk/engine/src/test/java/com/metamatrix/query/processor/TestProcessor.java
===================================================================
--- trunk/engine/src/test/java/com/metamatrix/query/processor/TestProcessor.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/test/java/com/metamatrix/query/processor/TestProcessor.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -144,7 +144,7 @@
 	
     static ProcessorPlan helpGetPlan(Command command, QueryMetadataInterface metadata, CapabilitiesFinder capFinder, CommandContext context) {
 		if(DEBUG) System.out.println("\n####################################\n" + command); //$NON-NLS-1$
-		AnalysisRecord analysisRecord = new AnalysisRecord(false, false, DEBUG);
+		AnalysisRecord analysisRecord = new AnalysisRecord(false, DEBUG);
 		try {
 			QueryResolver.resolveCommand(command, metadata);
         

Modified: trunk/engine/src/test/java/com/metamatrix/query/processor/dynamic/TestSqlEval.java
===================================================================
--- trunk/engine/src/test/java/com/metamatrix/query/processor/dynamic/TestSqlEval.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/test/java/com/metamatrix/query/processor/dynamic/TestSqlEval.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -70,7 +70,7 @@
     }
     
     String toXMLString(Source xmlSrc) throws Exception{
-    	StandardXMLTranslator sxt = new StandardXMLTranslator(xmlSrc, null);
+    	StandardXMLTranslator sxt = new StandardXMLTranslator(xmlSrc);
     	return sxt.getString();
     }
       

Modified: trunk/engine/src/test/java/com/metamatrix/query/processor/proc/TestProcedureProcessor.java
===================================================================
--- trunk/engine/src/test/java/com/metamatrix/query/processor/proc/TestProcedureProcessor.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/test/java/com/metamatrix/query/processor/proc/TestProcedureProcessor.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -91,7 +91,7 @@
         }
         QueryRewriter.rewrite(userCommand, metadata, new CommandContext());
 
-        AnalysisRecord analysisRecord = new AnalysisRecord(false, false, DEBUG);
+        AnalysisRecord analysisRecord = new AnalysisRecord(false, DEBUG);
         try {
         	if ( capabilitiesFinder == null ) capabilitiesFinder = new DefaultCapabilitiesFinder();
         	ProcessorPlan plan = QueryOptimizer.optimizePlan(userCommand, metadata, null, capabilitiesFinder, analysisRecord, null);

Modified: trunk/engine/src/test/java/com/metamatrix/query/processor/xml/TestXMLProcessor.java
===================================================================
--- trunk/engine/src/test/java/com/metamatrix/query/processor/xml/TestXMLProcessor.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/test/java/com/metamatrix/query/processor/xml/TestXMLProcessor.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -2951,7 +2951,7 @@
 
         if (shouldSucceed){
             
-            AnalysisRecord analysisRecord = new AnalysisRecord(false, false, DEBUG);
+            AnalysisRecord analysisRecord = new AnalysisRecord(false, DEBUG);
             CommandContext planningContext = new CommandContext(); //this should be the same as the processing context, but that's not easy to do
             
             ProcessorPlan plan = QueryOptimizer.optimizePlan(command, metadata, null, capFinder, analysisRecord, planningContext);
@@ -2995,7 +2995,7 @@
             return plan;
         } 
         Exception expected = null;
-        AnalysisRecord analysisRecord = new AnalysisRecord(false, false, DEBUG);                                              
+        AnalysisRecord analysisRecord = new AnalysisRecord(false, DEBUG);                                              
         try{
             ProcessorPlan plan = QueryOptimizer.optimizePlan(command, metadata, null, new DefaultCapabilitiesFinder(), analysisRecord, null);
     
@@ -3039,7 +3039,7 @@
 
 	private void helpTestProcess(String sql, String[] expectedDocs, FakeMetadataFacade metadata, FakeDataManager dataMgr) throws Exception{
         Command command = helpGetCommand(sql, metadata);
-        AnalysisRecord analysisRecord = new AnalysisRecord(false, false, DEBUG);                                              
+        AnalysisRecord analysisRecord = new AnalysisRecord(false, DEBUG);                                              
         XMLPlan plan = (XMLPlan)QueryOptimizer.optimizePlan(command, metadata, null, new DefaultCapabilitiesFinder(), analysisRecord, null);
         if(DEBUG) {
             System.out.println(analysisRecord.getDebugLog());

Modified: trunk/engine/src/test/java/org/teiid/dqp/internal/process/TestPreparedPlanCache.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/dqp/internal/process/TestPreparedPlanCache.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/test/java/org/teiid/dqp/internal/process/TestPreparedPlanCache.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -155,7 +155,7 @@
     		pPlan.setPlan(new RelationalPlan(new ProjectNode(i)));
             Map props = new HashMap();
             props.put("desc", "desc"+i); //$NON-NLS-1$ //$NON-NLS-2$
-            AnalysisRecord analysisRecord = new AnalysisRecord(true, true, false);
+            AnalysisRecord analysisRecord = new AnalysisRecord(true, false);
             analysisRecord.setQueryPlan(props);
     		pPlan.setAnalysisRecord(analysisRecord);
     		ArrayList refs = new ArrayList();

Modified: trunk/engine/src/test/java/org/teiid/dqp/internal/process/multisource/TestMultiSourcePlanToProcessConverter.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/dqp/internal/process/multisource/TestMultiSourcePlanToProcessConverter.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/engine/src/test/java/org/teiid/dqp/internal/process/multisource/TestMultiSourcePlanToProcessConverter.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -106,7 +106,7 @@
         }
         
         MultiSourceMetadataWrapper wrapper = new MultiSourceMetadataWrapper(metadata, multiSourceModels); 
-        AnalysisRecord analysis = new AnalysisRecord(false, false, DEBUG);
+        AnalysisRecord analysis = new AnalysisRecord(false, DEBUG);
         
         Command command = TestResolver.helpResolve(userSql, wrapper, analysis);               
                 

Modified: trunk/jboss-integration/src/main/java/org/teiid/jboss/deployers/RuntimeEngineDeployer.java
===================================================================
--- trunk/jboss-integration/src/main/java/org/teiid/jboss/deployers/RuntimeEngineDeployer.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/jboss-integration/src/main/java/org/teiid/jboss/deployers/RuntimeEngineDeployer.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -113,14 +113,14 @@
 	}
 	
     public void start() {
-		dqpCore.setTransactionService((TransactionService)LogManager.createLoggingProxy(com.metamatrix.common.log.LogConstants.CTX_TXN_LOG, transactionServerImpl, new Class[] {TransactionService.class}, MessageLevel.DETAIL));
+		dqpCore.setTransactionService((TransactionService)LogManager.createLoggingProxy(LogConstants.CTX_TXN_LOG, transactionServerImpl, new Class[] {TransactionService.class}, MessageLevel.DETAIL));
 
     	// create the necessary services
     	createClientServices();
     	
-    	this.csr.registerClientService(ILogon.class, logon, com.metamatrix.common.log.LogConstants.CTX_SESSION);
-    	this.csr.registerClientService(DQP.class, proxyService(DQP.class, this.dqpCore), com.metamatrix.common.log.LogConstants.CTX_DQP);
-    	this.csr.registerClientService(Admin.class, proxyService(Admin.class, admin), com.metamatrix.common.log.LogConstants.CTX_ADMIN_API);
+    	this.csr.registerClientService(ILogon.class, logon, LogConstants.CTX_SECURITY);
+    	this.csr.registerClientService(DQP.class, proxyService(DQP.class, this.dqpCore), LogConstants.CTX_DQP);
+    	this.csr.registerClientService(Admin.class, proxyService(Admin.class, admin), LogConstants.CTX_ADMIN_API);
     	
     	if (this.jdbcSocketConfiguration.isEnabled()) {
 	    	this.jdbcSocket = new SocketTransport(this.jdbcSocketConfiguration, csr);
@@ -133,11 +133,11 @@
     	if (this.adminSocketConfiguration.isEnabled()) {
 	    	this.adminSocket = new SocketTransport(this.adminSocketConfiguration, csr);
 	    	this.adminSocket.start(); 
-	    	LogManager.logInfo(com.metamatrix.common.log.LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("socket_enabled","Teiid Admin", (this.adminSocketConfiguration.getSSLConfiguration().isSslEnabled()?"mms://":"mm://")+this.adminSocketConfiguration.getHostAddress().getHostName()+":"+this.adminSocketConfiguration.getPortNumber())); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
+	    	LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("socket_enabled","Teiid Admin", (this.adminSocketConfiguration.getSSLConfiguration().isSslEnabled()?"mms://":"mm://")+this.adminSocketConfiguration.getHostAddress().getHostName()+":"+this.adminSocketConfiguration.getPortNumber())); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
     	} else {
-    		LogManager.logInfo(com.metamatrix.common.log.LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("socket_not_enabled", "admin connections")); //$NON-NLS-1$ //$NON-NLS-2$
+    		LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("socket_not_enabled", "admin connections")); //$NON-NLS-1$ //$NON-NLS-2$
     	}
-    	LogManager.logInfo(com.metamatrix.common.log.LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("engine_started", new Date(System.currentTimeMillis()).toString())); //$NON-NLS-1$
+    	LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("engine_started", new Date(System.currentTimeMillis()).toString())); //$NON-NLS-1$
 	}	
     
     public void stop() {
@@ -158,7 +158,7 @@
     		this.adminSocket.stop();
     		this.adminSocket = null;
     	}    	
-    	LogManager.logInfo(com.metamatrix.common.log.LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("engine_stopped", new Date(System.currentTimeMillis()).toString())); //$NON-NLS-1$
+    	LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("engine_stopped", new Date(System.currentTimeMillis()).toString())); //$NON-NLS-1$
     }
     
 	private void createClientServices() {

Modified: trunk/runtime/src/main/java/org/teiid/deployers/VDBRepository.java
===================================================================
--- trunk/runtime/src/main/java/org/teiid/deployers/VDBRepository.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/runtime/src/main/java/org/teiid/deployers/VDBRepository.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -123,7 +123,7 @@
 
 			// now save the change in the configuration.
 			saveVDB(vdb);
-			LogManager.logInfo(LogConstants.CTX_DQP, RuntimePlugin.Util.getString("VDBService.vdb_change_status", new Object[] { vdbName, vdbVersion, status})); //$NON-NLS-1$
+			LogManager.logInfo(LogConstants.CTX_RUNTIME, RuntimePlugin.Util.getString("VDBService.vdb_change_status", new Object[] { vdbName, vdbVersion, status})); //$NON-NLS-1$
 		}
 	}
 	

Modified: trunk/runtime/src/main/java/org/teiid/logging/Log4JUtil.java
===================================================================
--- trunk/runtime/src/main/java/org/teiid/logging/Log4JUtil.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/runtime/src/main/java/org/teiid/logging/Log4JUtil.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -104,9 +104,7 @@
 		contexts.add(ROOT_CONTEXT+com.metamatrix.common.log.LogConstants.CTX_TXN_LOG);
 		contexts.add(ROOT_CONTEXT+com.metamatrix.common.log.LogConstants.CTX_COMMANDLOGGING);
 		contexts.add(ROOT_CONTEXT+com.metamatrix.common.log.LogConstants.CTX_AUDITLOGGING);
-		contexts.add(ROOT_CONTEXT+com.metamatrix.common.log.LogConstants.CTX_SESSION);
-		contexts.add(ROOT_CONTEXT+com.metamatrix.common.log.LogConstants.CTX_AUTHORIZATION);
-		contexts.add(ROOT_CONTEXT+com.metamatrix.common.log.LogConstants.CTX_MEMBERSHIP);
+		contexts.add(ROOT_CONTEXT+com.metamatrix.common.log.LogConstants.CTX_SECURITY);
 		contexts.add(ROOT_CONTEXT+com.metamatrix.common.log.LogConstants.CTX_TRANSPORT);
 		contexts.add(ROOT_CONTEXT+com.metamatrix.common.log.LogConstants.CTX_ADMIN_API);
 		contexts.add(ROOT_CONTEXT+com.metamatrix.common.log.LogConstants.CTX_QUERY_PLANNER);

Modified: trunk/runtime/src/main/java/org/teiid/services/SessionServiceImpl.java
===================================================================
--- trunk/runtime/src/main/java/org/teiid/services/SessionServiceImpl.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/runtime/src/main/java/org/teiid/services/SessionServiceImpl.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -97,21 +97,21 @@
 		for (SessionMetadata info : sessionCache.values()) {
 			try {
     			if (!info.isEmbedded() && currentTime - info.getLastPingTime() > ServerConnection.PING_INTERVAL * 5) {
-    				LogManager.logInfo(LogConstants.CTX_SESSION, RuntimePlugin.Util.getString( "SessionServiceImpl.keepaliveFailed", info.getSessionId())); //$NON-NLS-1$
+    				LogManager.logInfo(LogConstants.CTX_SECURITY, RuntimePlugin.Util.getString( "SessionServiceImpl.keepaliveFailed", info.getSessionId())); //$NON-NLS-1$
     				closeSession(info.getSessionId());
     			} else if (sessionExpirationTimeLimit > 0 && currentTime - info.getCreatedTime() > sessionExpirationTimeLimit) {
-    				LogManager.logInfo(LogConstants.CTX_SESSION, RuntimePlugin.Util.getString( "SessionServiceImpl.expireSession", info.getSessionId())); //$NON-NLS-1$
+    				LogManager.logInfo(LogConstants.CTX_SECURITY, RuntimePlugin.Util.getString( "SessionServiceImpl.expireSession", info.getSessionId())); //$NON-NLS-1$
     				closeSession(info.getSessionId());
     			}
 			} catch (Exception e) {
-				LogManager.logDetail(LogConstants.CTX_SESSION, e, "error running session monitor, unable to monitor: " + info.getSessionId()); //$NON-NLS-1$
+				LogManager.logDetail(LogConstants.CTX_SECURITY, e, "error running session monitor, unable to monitor: " + info.getSessionId()); //$NON-NLS-1$
 			}
 		}
 	}
 
 	@Override
 	public void closeSession(long sessionID) throws InvalidSessionException {
-		LogManager.logDetail(LogConstants.CTX_SESSION, new Object[] {"closeSession", sessionID}); //$NON-NLS-1$
+		LogManager.logDetail(LogConstants.CTX_SECURITY, new Object[] {"closeSession", sessionID}); //$NON-NLS-1$
 		SessionMetadata info = this.sessionCache.remove(sessionID);
 		if (info == null) {
 			throw new InvalidSessionException(RuntimePlugin.Util.getString("SessionServiceImpl.invalid_session", sessionID)); //$NON-NLS-1$
@@ -120,7 +120,7 @@
             try {
     			dqp.terminateSession(info.getSessionId());
             } catch (Exception e) {
-                LogManager.logWarning(LogConstants.CTX_SESSION,e,"Exception terminitating session"); //$NON-NLS-1$
+                LogManager.logWarning(LogConstants.CTX_SECURITY,e,"Exception terminitating session"); //$NON-NLS-1$
             }
 		}
 
@@ -131,7 +131,7 @@
         		context.logout();
         	}
 		} catch (LoginException e) {
-			 LogManager.logWarning(LogConstants.CTX_SESSION,e,"Exception terminitating session"); //$NON-NLS-1$
+			 LogManager.logWarning(LogConstants.CTX_SECURITY,e,"Exception terminitating session"); //$NON-NLS-1$
 		}
 	}
 	
@@ -141,8 +141,6 @@
 		ArgCheck.isNotNull(applicationName);
         ArgCheck.isNotNull(properties);
         
-        Properties productInfo = new Properties();
-
         LoginContext loginContext = null;
         String securityDomain = "none"; //$NON-NLS-1$
         Object securityContext = null;
@@ -173,10 +171,6 @@
                 else {
                 	vdb = this.vdbRepository.getVDB(vdbName, Integer.parseInt(vdbVersion));
                 }            
-                
-                // Reset product info with validated constants
-                productInfo.put(TeiidURL.JDBC.VDB_NAME, vdb.getName());
-                productInfo.put(TeiidURL.JDBC.VDB_VERSION, vdb.getVersion());                
             } catch (VirtualDatabaseException e) {
             	throw new SessionServiceException(RuntimePlugin.Util.getString("VDBService.VDB_does_not_exist._2", vdbName, vdbVersion==null?"latest":vdbVersion)); //$NON-NLS-1$ //$NON-NLS-2$ 
 			}            
@@ -208,7 +202,7 @@
         newSession.setSecurityContext(securityContext);
         newSession.setVdb(vdb);
         newSession.setSessionToken(new SessionToken(id, userName));
-        LogManager.logDetail(LogConstants.CTX_SESSION, new Object[] {"Logon successful for \"", userName, "\" - created SessionID \"", "" + id, "\"" }); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
+        LogManager.logDetail(LogConstants.CTX_SECURITY, new Object[] {"Logon successful for \"", userName, "\" - created SessionID \"", "" + id, "\"" }); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
         this.sessionCache.put(newSession.getSessionId(), newSession);
         return newSession;
 	}
@@ -260,12 +254,12 @@
 	@Override
 	public boolean terminateSession(long terminatedSessionID, long adminSessionID) {
 		Object[] params = {adminSessionID, terminatedSessionID};
-		LogManager.logInfo(LogConstants.CTX_SESSION, RuntimePlugin.Util.getString( "SessionServiceImpl.terminateSession", params)); //$NON-NLS-1$
+		LogManager.logInfo(LogConstants.CTX_SECURITY, RuntimePlugin.Util.getString( "SessionServiceImpl.terminateSession", params)); //$NON-NLS-1$
 		try {
 			closeSession(terminatedSessionID);
 			return true;
 		} catch (InvalidSessionException e) {
-			LogManager.logWarning(LogConstants.CTX_SESSION,e,RuntimePlugin.Util.getString("SessionServiceImpl.invalid_session", new Object[] {e.getMessage()})); //$NON-NLS-1$
+			LogManager.logWarning(LogConstants.CTX_SECURITY,e,RuntimePlugin.Util.getString("SessionServiceImpl.invalid_session", new Object[] {e.getMessage()})); //$NON-NLS-1$
 			return false;
 		}
 	}
@@ -305,7 +299,7 @@
 	
 	public void setSecurityDomains(String domainNameOrder) {
         if (domainNameOrder != null && domainNameOrder.trim().length()>0) {
-        	LogManager.logDetail(LogConstants.CTX_MEMBERSHIP, "Security Enabled: true"); //$NON-NLS-1$
+        	LogManager.logDetail(LogConstants.CTX_SECURITY, "Security Enabled: true"); //$NON-NLS-1$
 
 	        String[] domainNames = domainNameOrder.split(","); //$NON-NLS-1$
 	        for (String domainName : domainNames) {
@@ -316,7 +310,7 @@
 	
 	public void setAdminSecurityDomain(String domain) {
 		this.adminSecurityDomains.add(domain);
-		LogManager.logDetail(LogConstants.CTX_MEMBERSHIP, "Admin Security Enabled: true"); //$NON-NLS-1$
+		LogManager.logDetail(LogConstants.CTX_SECURITY, "Admin Security Enabled: true"); //$NON-NLS-1$
 	}
 
 	public void start() {

Modified: trunk/runtime/src/main/java/org/teiid/services/TeiidLoginContext.java
===================================================================
--- trunk/runtime/src/main/java/org/teiid/services/TeiidLoginContext.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/runtime/src/main/java/org/teiid/services/TeiidLoginContext.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -59,7 +59,7 @@
 	
 	public void authenticateUser(String username, Credentials credential, String applicationName, List<String> domains) throws LoginException {
         
-        LogManager.logDetail(LogConstants.CTX_MEMBERSHIP, new Object[] {"authenticateUser", username, applicationName}); //$NON-NLS-1$
+        LogManager.logDetail(LogConstants.CTX_SECURITY, new Object[] {"authenticateUser", username, applicationName}); //$NON-NLS-1$
                 
         final String baseUsername = getBaseUsername(username);
         final char[] password = credential.getCredentialsAsCharArray();
@@ -92,10 +92,10 @@
 				this.loginContext.login();
 				this.userName = baseUsername+AT+domain;
 				this.securitydomain = domain;
-				LogManager.logDetail(LogConstants.CTX_MEMBERSHIP, new Object[] {"Logon successful for \"", username, "\""}); //$NON-NLS-1$ //$NON-NLS-2$
+				LogManager.logDetail(LogConstants.CTX_SECURITY, new Object[] {"Logon successful for \"", username, "\""}); //$NON-NLS-1$ //$NON-NLS-2$
 				return;
 			} catch (LoginException e) {
-				LogManager.logDetail(LogConstants.CTX_MEMBERSHIP,e, e.getMessage()); 
+				LogManager.logDetail(LogConstants.CTX_SECURITY,e, e.getMessage()); 
 			}
         }
         throw new LoginException(RuntimePlugin.Util.getString("SessionServiceImpl.The_username_0_and/or_password_are_incorrect", username )); //$NON-NLS-1$       

Modified: trunk/test-integration/common/src/test/java/org/teiid/dqp/internal/process/BaseQueryTest.java
===================================================================
--- trunk/test-integration/common/src/test/java/org/teiid/dqp/internal/process/BaseQueryTest.java	2010-03-25 16:42:20 UTC (rev 2000)
+++ trunk/test-integration/common/src/test/java/org/teiid/dqp/internal/process/BaseQueryTest.java	2010-03-25 16:55:55 UTC (rev 2001)
@@ -60,7 +60,7 @@
         Command command = TestOptimizer.helpGetCommand(sql, metadata, null);
 
         // plan
-        AnalysisRecord analysisRecord = new AnalysisRecord(false, debug, debug);
+        AnalysisRecord analysisRecord = new AnalysisRecord(false, debug);
         ProcessorPlan plan = null;
         try {
             plan = QueryOptimizer.optimizePlan(command, metadata, null, capFinder, analysisRecord, createCommandContext());



More information about the teiid-commits mailing list