Class DBInfo

java.lang.Object
quadbase.common.util.internal.DBInfoBasic
quadbase.reportdesigner.ReportAPI.DBInfo
All Implemented Interfaces:
quadbase.common.util.IDatabaseInfo, quadbase.common.util.IJNDIDatabaseInfo, IDatabaseInfo
Direct Known Subclasses:
SimpleQueryFileInfo

public class DBInfo extends quadbase.common.util.internal.DBInfoBasic implements IDatabaseInfo
DBInfo

This class provides an implementation for the quadbase.reportdesigner.util.IDatabaseInfo interface. It stores information necessary to retrieve data from a database.

See Also:
  • Field Summary

    Fields inherited from class quadbase.common.util.internal.DBInfoBasic

    additionalDb, connection, doNotCloseConnection, driver, env, info, JNDIName, query, tableNameFormat, url, useJNDIDataSource, XMLTAG

    Fields inherited from interface quadbase.common.util.IDatabaseInfo

    DB_DRIVER_ACCESS, DB_DRIVER_DB2, DB_DRIVER_HSQL, DB_DRIVER_INFORMIX, DB_DRIVER_JTDS, DB_DRIVER_MSSSQL, DB_DRIVER_MYSQL, DB_DRIVER_ORACLE, DB_DRIVER_POINTBASE, DB_DRIVER_POSTGRESQL
  • Constructor Summary

    Constructors
    Constructor
    Description
    DBInfo(String url, String driver, String username, String password, String query)
    Create a new instance of DbInfo
    DBInfo(String url, String driver, String username, String password, String query, Applet applet)
    Deprecated. 
    DBInfo(String url, String driver, String username, String password, String query, Vector<String> additionalDb)
    Create a new instance of DbInfo
    DBInfo(String JNDIName, String query, Hashtable<String,String> env)
    Create a new instance of DBInfo
    DBInfo(Connection conn, String query)
    Create a new instance of DBInfo using the given Connection object
    DBInfo(Connection conn, String query, Applet applet)
    Deprecated. 
    DBInfo(Connection conn, String query, quadbase.common.paramquery.QueryInParamSet inSet)
    Create a new instance of DBInfo using the given Connection object
    DBInfo(quadbase.common.util.IDatabaseInfo dbInfo)
    Create a new instance of DBInfo
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    internal use only This function closes the connection to the database
    boolean
    internal use only This function establishes a connection to the database specified by the url string
    Get the data from database, return as instance of DbData ClassNotFoundException is thrown if JDBC driver not found.
    static quadbase.reportdesigner.report.ColData[]
    getColData(quadbase.common.util.IDatabaseInfo dbInfo, boolean isSpreadSheet, boolean[] transposeCol, int startIndex, int displayRow)
    Retrieves data in column form using the database information provided.
    static quadbase.reportdesigner.report.ColData[]
    getColData(quadbase.common.util.IDatabaseInfo dbInfo, boolean isSpreadSheet, boolean[] transposeCol, int startIndex, int displayRow, boolean optimizeMemory)
    Retrieves data in column form using the database information provided.
    Gets the connection object, if one exists
    static Connection
    getDatabaseConnection(String driverName, String urlString, String userName, String passwd)
    This static function establishes a connection to the specified database and returns a connection object to it.
    static Connection
    This static function establishes a connection to the specified database and returns a connection object to it.
    Gets the JDBC driver name
    Gets environment properties for initial context
    quadbase.common.paramquery.QueryInParamSet
    Gets the query parameter set
    Gets the JNDI lookup name of the data base
    Gets the password
    Get the SQL query
    Gets the URL of database
    Get the user name
    boolean
    Returns if the DBInfo is use JNDI DataSource
    void
    This function sets the connection field in this object.
    void
    Sets the JDBC driver name
    void
    Sets environment properties for initial context
    void
    setInSet(quadbase.common.paramquery.QueryInParamSet inSet)
    Sets the query parameter set
    void
    Sets the JNDI lookup name
    void
    setPassword(String password)
    Set the password
    void
    Set the SQL query
    void
    Sets the URL of database
    void
    Sets if use JNDI DataSource
    void
    setUserID(String username)
    Sets the user name

    Methods inherited from class quadbase.common.util.internal.DBInfoBasic

    clone, equals, equals, equalsIgnoreQuery, getAdditionalDb, getContextFactory, getProviderURL, getTableNameFormat, isCloseConnectionEnabled, openConnection, read, readXML, setAdditionalDb, setTableNameFormat, toString, write, writeXML

    Methods inherited from class java.lang.Object

    equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • DBInfo

      @Deprecated public DBInfo(String url, String driver, String username, String password, String query, Applet applet)
      Deprecated.
      Create a new instance of DbInfo
      Parameters:
      url - URL of database in form of jdbc:databaseName://machineName(or IPaddress)/schemeName
      driver - JDBC driver class name use
      username - login user name
      password - login password
      query - SQL query to retrieve data from database
      applet - an applet or null if the program is an application
    • DBInfo

      public DBInfo(String url, String driver, String username, String password, String query)
      Create a new instance of DbInfo
      Parameters:
      url - URL of database in form of jdbc:databaseName://machineName(or IPaddress)/schemeName
      driver - JDBC driver class name use
      username - login user name
      password - login password
      query - SQL query to retrieve data from database
    • DBInfo

      public DBInfo(String url, String driver, String username, String password, String query, Vector<String> additionalDb)
      Create a new instance of DbInfo
      Parameters:
      url - URL of database in form of jdbc:databaseName://machineName(or IPaddress)/schemeName
      driver - JDBC driver class name use
      username - login user name
      password - login password
      query - SQL query to retrieve data from database
    • DBInfo

      public DBInfo(String JNDIName, String query, Hashtable<String,String> env)
      Create a new instance of DBInfo
      Parameters:
      JNDIName - JNDI lookup name for the data base
      query - SQL query to retrieve data from data base
      env - Environment properties for the initial context
    • DBInfo

      public DBInfo(quadbase.common.util.IDatabaseInfo dbInfo)
      Create a new instance of DBInfo
      Parameters:
      dbInfo - Another DBInfoURL of database in form of
    • DBInfo

      @Deprecated public DBInfo(Connection conn, String query, Applet applet)
      Deprecated.
      Create a new instance of DBInfo using the given Connection object
      Parameters:
      conn - a connection to the database
      query - SQL query to retrieve data from database
      applet - the parent applet
    • DBInfo

      public DBInfo(Connection conn, String query)
      Create a new instance of DBInfo using the given Connection object
      Parameters:
      conn - a connection to the database
      query - SQL query to retrieve data from database
    • DBInfo

      public DBInfo(Connection conn, String query, quadbase.common.paramquery.QueryInParamSet inSet)
      Create a new instance of DBInfo using the given Connection object
      Parameters:
      conn - a connection to the database
      query - SQL query to retrieve data from database
      inSet - Parameter set in the query
  • Method Details

    • getURLString

      public String getURLString()
      Gets the URL of database
      Specified by:
      getURLString in interface quadbase.common.util.IDatabaseInfo
      Specified by:
      getURLString in interface IDatabaseInfo
      Overrides:
      getURLString in class quadbase.common.util.internal.DBInfoBasic
    • getDriverName

      public String getDriverName()
      Gets the JDBC driver name
      Specified by:
      getDriverName in interface quadbase.common.util.IDatabaseInfo
      Specified by:
      getDriverName in interface IDatabaseInfo
      Overrides:
      getDriverName in class quadbase.common.util.internal.DBInfoBasic
    • getUserID

      public String getUserID()
      Get the user name
      Specified by:
      getUserID in interface quadbase.common.util.IDatabaseInfo
      Specified by:
      getUserID in interface IDatabaseInfo
      Overrides:
      getUserID in class quadbase.common.util.internal.DBInfoBasic
    • getPassword

      public String getPassword()
      Gets the password
      Specified by:
      getPassword in interface quadbase.common.util.IDatabaseInfo
      Specified by:
      getPassword in interface IDatabaseInfo
      Overrides:
      getPassword in class quadbase.common.util.internal.DBInfoBasic
    • getQuery

      public String getQuery()
      Get the SQL query
      Specified by:
      getQuery in interface quadbase.common.util.IDatabaseInfo
      Specified by:
      getQuery in interface IDatabaseInfo
      Specified by:
      getQuery in interface quadbase.common.util.IJNDIDatabaseInfo
      Overrides:
      getQuery in class quadbase.common.util.internal.DBInfoBasic
    • getConnection

      public Connection getConnection()
      Gets the connection object, if one exists
      Specified by:
      getConnection in interface quadbase.common.util.IDatabaseInfo
      Specified by:
      getConnection in interface IDatabaseInfo
      Specified by:
      getConnection in interface quadbase.common.util.IJNDIDatabaseInfo
      Overrides:
      getConnection in class quadbase.common.util.internal.DBInfoBasic
    • getJNDIName

      public String getJNDIName()
      Gets the JNDI lookup name of the data base
      Specified by:
      getJNDIName in interface quadbase.common.util.IJNDIDatabaseInfo
      Overrides:
      getJNDIName in class quadbase.common.util.internal.DBInfoBasic
    • isUseJNDIDataSource

      public boolean isUseJNDIDataSource()
      Returns if the DBInfo is use JNDI DataSource
      Overrides:
      isUseJNDIDataSource in class quadbase.common.util.internal.DBInfoBasic
    • getEnvProperties

      public Hashtable<String,String> getEnvProperties()
      Gets environment properties for initial context
      Specified by:
      getEnvProperties in interface quadbase.common.util.IJNDIDatabaseInfo
      Overrides:
      getEnvProperties in class quadbase.common.util.internal.DBInfoBasic
    • setURLString

      public void setURLString(String url)
      Sets the URL of database
      Overrides:
      setURLString in class quadbase.common.util.internal.DBInfoBasic
    • setDriverName

      public void setDriverName(String driver)
      Sets the JDBC driver name
      Overrides:
      setDriverName in class quadbase.common.util.internal.DBInfoBasic
    • setUserID

      public void setUserID(String username)
      Sets the user name
      Overrides:
      setUserID in class quadbase.common.util.internal.DBInfoBasic
    • setPassword

      public void setPassword(String password)
      Set the password
      Overrides:
      setPassword in class quadbase.common.util.internal.DBInfoBasic
    • setQuery

      public void setQuery(String query)
      Set the SQL query
      Overrides:
      setQuery in class quadbase.common.util.internal.DBInfoBasic
    • setJNDIName

      public void setJNDIName(String name)
      Sets the JNDI lookup name
      Overrides:
      setJNDIName in class quadbase.common.util.internal.DBInfoBasic
    • setUseJNDIDataSource

      public void setUseJNDIDataSource(boolean b)
      Sets if use JNDI DataSource
      Overrides:
      setUseJNDIDataSource in class quadbase.common.util.internal.DBInfoBasic
    • setEnvProperties

      public void setEnvProperties(Hashtable<String,String> env)
      Sets environment properties for initial context
      Overrides:
      setEnvProperties in class quadbase.common.util.internal.DBInfoBasic
    • getDatabaseConnection

      public static Connection getDatabaseConnection(String driverName, String urlString, String userName, String passwd)
      This static function establishes a connection to the specified database and returns a connection object to it.
      Parameters:
      driver - The driver name
      url - The url to the database
      username - The username used to connect to the database
      password - The database password
      Returns:
      connection The connection object
    • getDatabaseConnection

      public static Connection getDatabaseConnection(String JNDIName, Hashtable<String,String> env) throws SQLException
      This static function establishes a connection to the specified database and returns a connection object to it.
      Parameters:
      JNDIName - JNDI lookup name for the database
      env - Environment properties for initial context
      Returns:
      connection The connection object
      Throws:
      SQLException
    • setConnection

      public void setConnection(Connection conn)
      This function sets the connection field in this object.
      Overrides:
      setConnection in class quadbase.common.util.internal.DBInfoBasic
      Parameters:
      connection - A reference to the Connection object.
    • establishConnection

      public boolean establishConnection()
      internal use only This function establishes a connection to the database specified by the url string
      Overrides:
      establishConnection in class quadbase.common.util.internal.DBInfoBasic
      Returns:
      true is connection is established, false otherwise
    • closeConnection

      public void closeConnection()
      internal use only This function closes the connection to the database
      Overrides:
      closeConnection in class quadbase.common.util.internal.DBInfoBasic
    • fetchData

      public DbData fetchData() throws SQLException
      Get the data from database, return as instance of DbData ClassNotFoundException is thrown if JDBC driver not found. If there is error in SQL execution an SQLException will throw.
      Throws:
      SQLException
    • getColData

      public static quadbase.reportdesigner.report.ColData[] getColData(quadbase.common.util.IDatabaseInfo dbInfo, boolean isSpreadSheet, boolean[] transposeCol, int startIndex, int displayRow) throws Exception
      Retrieves data in column form using the database information provided.
      Parameters:
      dbInfo - database connection information
      isSpreadSheet - states whether this column data is a spread sheet
      transposeCol - transpose column mapping
      startIndex - starting row to retrieve data
      displayRow - number of rows to retrieve (-1 retrieves all data)
      Throws:
      Exception
    • getColData

      public static quadbase.reportdesigner.report.ColData[] getColData(quadbase.common.util.IDatabaseInfo dbInfo, boolean isSpreadSheet, boolean[] transposeCol, int startIndex, int displayRow, boolean optimizeMemory) throws Exception
      Retrieves data in column form using the database information provided.
      Parameters:
      dbInfo - database connection information
      isSpreadSheet - states whether this column data is a spread sheet
      transposeCol - transpose column mapping
      startIndex - starting row to retrieve data
      displayRow - number of rows to retrieve (-1 retrieves all data)
      optimizeMemory - whether to optimize memory
      Throws:
      Exception
    • getInSet

      public quadbase.common.paramquery.QueryInParamSet getInSet()
      Gets the query parameter set
    • setInSet

      public void setInSet(quadbase.common.paramquery.QueryInParamSet inSet)
      Sets the query parameter set