EMMA Coverage Report (generated Tue Nov 24 15:49:41 EST 2009)
[all classes][atg.adapter.gsa]

COVERAGE SUMMARY FOR SOURCE FILE [DatabaseTypeNameToJDBC.java]

nameclass, %method, %block, %line, %
DatabaseTypeNameToJDBC.java100% (1/1)100% (2/2)90%  (73/81)83%  (19/23)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class DatabaseTypeNameToJDBC100% (1/1)100% (2/2)90%  (73/81)83%  (19/23)
databaseTypeNametoJDBCType (String): int 100% (1/1)89%  (64/72)79%  (15/19)
DatabaseTypeNameToJDBC (DatabaseTableInfo): void 100% (1/1)100% (9/9)100% (4/4)

1/**
2 * Copyright 2009 ATG DUST Project
3 * 
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * 
7 * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
8 * 
9 * Unless required by applicable law or agreed to in writing, software 
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and limitations under the License.
13 */
14 
15package atg.adapter.gsa;
16 
17/**
18 * The purpose of this class is to map from a the database specific type name
19 * for a column to the <code>java.sql.Types</code> for that column. Given a
20 * DatabaseTableInfo for a given database it will return the jdbc type for the
21 * supported GSA types.
22 * 
23 * @version $Id: //test/UnitTests/base/main/src/Java/atg/adapter/gsa/DatabaseTypeNameToJDBC.java#2 $
24 * @author adamb
25 * @see java.sql.Types
26 */
27public class DatabaseTypeNameToJDBC {
28 
29  public DatabaseTableInfo mTableInfo = null;
30  public static final int UNKNOWN = -9999;
31 
32  // -------------------------------
33  /**
34   * Creates a new instance of this class initialized with the given
35   * DatabaseTableInfo object.
36   * 
37   * @param pTableInfo
38   */
39  public DatabaseTypeNameToJDBC(DatabaseTableInfo pTableInfo) {
40    mTableInfo = pTableInfo;
41  }
42 
43// -------------------------------
44  /**
45   * Given a database specific type name, returns the matching
46   * <code>java.sql.Types</code> constant. If there is no suitable match this
47   * method returns the constant <code>UNKNOWN</code>.
48   * 
49   * @param pTypeName
50   * @return
51   */
52  public int databaseTypeNametoJDBCType(String pTypeName) {
53    // Walk the DatabaseTableInfo and do a comparison.
54    if (mTableInfo.mVarcharType.equals(pTypeName)) {
55      return java.sql.Types.VARCHAR;
56    } else if (mTableInfo.mIntType.equals(pTypeName)) {
57      // Fix for MS SQLServer
58      if("NUMERIC".equals(pTypeName)){
59        return java.sql.Types.NUMERIC;
60      }else{
61        return java.sql.Types.INTEGER;
62      }
63    } else if (mTableInfo.mBinaryType.equals(pTypeName)) {
64      return java.sql.Types.BLOB;
65    } else if (mTableInfo.mLongVarcharType.equals(pTypeName)) {
66      return java.sql.Types.LONGVARCHAR;
67    } else if (mTableInfo.mTimestampType.equals(pTypeName)) {
68      return java.sql.Types.TIMESTAMP;
69    } else if (mTableInfo.mCharType.equals(pTypeName)) {
70      return java.sql.Types.CHAR;
71    } else if (mTableInfo.mDateType.equals(pTypeName)) {
72      return java.sql.Types.DATE;
73    } else if (mTableInfo.mDecimalType.equals(pTypeName)) {
74      return java.sql.Types.DECIMAL;
75    } else
76      return UNKNOWN;
77  }
78}

[all classes][atg.adapter.gsa]
EMMA 2.0.5312 (C) Vladimir Roubtsov