You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafodion.apache.org by db...@apache.org on 2016/05/02 18:11:50 UTC
[11/60] incubator-trafodion git commit: TRAFODION-1933 JDBC TYpe4
driver build scripts migrated to use maven instead of ant
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/72e17019/core/conn/jdbc_type4/src/org/trafodion/jdbc/t4/T4Address.java
----------------------------------------------------------------------
diff --git a/core/conn/jdbc_type4/src/org/trafodion/jdbc/t4/T4Address.java b/core/conn/jdbc_type4/src/org/trafodion/jdbc/t4/T4Address.java
deleted file mode 100644
index 6cc2085..0000000
--- a/core/conn/jdbc_type4/src/org/trafodion/jdbc/t4/T4Address.java
+++ /dev/null
@@ -1,315 +0,0 @@
-// @@@ START COPYRIGHT @@@
-//
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements. See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership. The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License. You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied. See the License for the
-// specific language governing permissions and limitations
-// under the License.
-//
-// @@@ END COPYRIGHT @@@
-
-package org.trafodion.jdbc.t4;
-
-/**********************************************************
- * This class represents an address reference.
- *
- * @version 1.0
- **********************************************************/
-
-import java.io.ByteArrayInputStream;
-import java.io.IOException;
-import java.sql.SQLException;
-import java.util.Locale;
-import java.util.Properties;
-
-final class T4Address extends Address {
-
- private static final String t4ConnectionPrefix = "jdbc:t4jdbc:";
- private static final String urlPrefix = t4ConnectionPrefix + "//";
- private static final int minT4ConnectionAddrLen = t4ConnectionPrefix.length() + 4;
- private static final int AS_type = 1; // jdbc:subprotocol:subname
-
- /**
- * The constructor.
- *
- * @param addr
- * The addr has two forms:
- *
- * DriverManager getConnection addr parameter format for connecting via the
- * Fast JDBC Type 4 driver.
- *
- * jdbc:subprotocol:subname
- *
- * Where:
- *
- * subprotocol = t4jdbc
- *
- * subname = //<{IP Address|Machine Name}[:port]>/<properties>
- *
- * Example: jdbc:t4jdbc://130.168.200.30:1433/database1
- *
- */
-
- // ----------------------------------------------------------
- T4Address(T4Properties t4props, Locale locale, String addr) throws SQLException {
- super(t4props, locale, addr);
-
- if (addr == null) {
- SQLException se = HPT4Messages.createSQLException(m_t4props, m_locale, "address_null_error", null);
- throw se;
- }
-
- //
- // We are now expecting addr = "//<{IP Address|Machine
- // Name}[:port]>/<properties>"
- //
- m_type = AS_type;
-
- //
- // We don't recognize this address syntax
- //
- if (acceptsURL(addr) == false) {
- SQLException se = HPT4Messages.createSQLException(m_t4props, m_locale, "address_parsing_error", addr);
- SQLException se2 = HPT4Messages.createSQLException(m_t4props, m_locale, "unknown_prefix_error", null);
-
- se.setNextException(se2);
- throw se;
- }
-
- //
- // We are now expecting addr = "<{IP Address|Machine Name}[:port]>"
- // Get the IP or Name
- //
- String IPorName = extractHostFromUrl(addr);
- if (isIPAddress(IPorName)) {
- m_ipAddress = IPorName;
- } else {
- m_machineName = IPorName;
-
- //
- // Get the port number if there is one.
- //
- }
- m_portNumber = new Integer(extractPortFromUrl(addr));
- m_properties = extractPropertiesFromString(addr);
-
- m_url = recreateAddress();
-
- validateAddress();
- setInputOutput();
- }
-
- String recreateAddress() {
- String addr = null;
-
- addr = t4ConnectionPrefix + "//";
-
- if (m_machineName != null) {
- addr = addr + m_machineName;
- } else if (m_ipAddress != null) {
- addr = addr + m_ipAddress;
-
- }
- if (m_portNumber != null) {
- addr = addr + ":" + m_portNumber;
-
- }
- addr = addr + "/";
-
- return addr;
- } // end recreateAddress
-
- static boolean acceptsURL(String url) throws SQLException {
- try {
- return url.toLowerCase().startsWith(t4ConnectionPrefix);
- } catch (Exception ex) {
- throw new SQLException(ex.toString());
- }
- }
-
- // ----------------------------------------------------------
- String getUrl() {
- return urlPrefix + getIPorName() + ':' + getPort().toString() + "/:";
- } // end getProps()
-
- // ----------------------------------------------------------
- Properties getProps() {
- return m_properties;
- } // end getProps()
-
- /**
- * Return the host value
- *
- * @param url
- * of format jdbc:t4jdbc://host:port/:[prop-name=prop-value]..
- * @return host string
- */
- private String extractHostFromUrl(String url) throws SQLException {
- if (url.length() < minT4ConnectionAddrLen) {
- SQLException se = HPT4Messages.createSQLException(m_t4props, m_locale, "address_parsing_error", url);
- SQLException se2 = HPT4Messages.createSQLException(m_t4props, m_locale, "min_address_length_error", null);
-
- se.setNextException(se2);
- throw se;
- }
-
- int hostStartIndex = urlPrefix.length();
- int hostEndIndex = -1;
- if (isIPV6(url)) {
- hostEndIndex = url.lastIndexOf(']', hostStartIndex); // IP6
- } else {
- hostEndIndex = url.indexOf(':', hostStartIndex); // IP4
-
- }
- if (hostEndIndex < 0) {
- SQLException se = HPT4Messages.createSQLException(m_t4props, m_locale, "address_parsing_error", url);
- SQLException se2 = HPT4Messages.createSQLException(m_t4props, m_locale, "address_format_error", url);
-
- se.setNextException(se2);
- throw se;
- }
-
- String host = url.substring(hostStartIndex, hostEndIndex);
- if ((host == null) || (host.length() == 0)) {
- SQLException se = HPT4Messages.createSQLException(m_t4props, m_locale, "address_parsing_error", url);
- SQLException se2 = HPT4Messages.createSQLException(m_t4props, m_locale, "address_format_error", null);
- SQLException se3 = HPT4Messages.createSQLException(m_t4props, m_locale, "missing_ip_or_name_error", null);
- se.setNextException(se2);
- se2.setNextException(se3);
- throw se;
- }
-
- return host;
- }
-
- /**
- * Return the port value
- *
- * @param url
- * of format jdbc:t4jdbc://host:port/:[prop-name=prop-value]..
- * @return port string
- */
- private String extractPortFromUrl(String url) throws SQLException {
- int portStartIndex = url.indexOf(':', urlPrefix.length()) + 1;
- int portEndIndex = url.indexOf('/', portStartIndex);
- if (portEndIndex < 0) {
- portEndIndex = url.length();
-
- }
- String port = url.substring(portStartIndex, portEndIndex);
- if (port.length() < 1) {
- throw new SQLException("Incorrect port value in the URL.");
- }
- ;
-
- int asPort;
- try {
- asPort = Integer.parseInt(port);
- } catch (Exception e) {
- throw new SQLException("Incorrect port value in the URL.");
- }
-
- if ((asPort < 0) || (asPort > 65535)) {
- throw new SQLException("Port value out of range in the URL.");
- }
-
- return port;
- }
-
- /**
- * Checks if the url is of IP6 protocol
- */
- private boolean isIPV6(String url) throws SQLException {
- if (url == null) {
- SQLException se = HPT4Messages.createSQLException(m_t4props, m_locale, "address_parsing_error", url);
- SQLException se2 = HPT4Messages.createSQLException(m_t4props, m_locale, "address_format_2_error", null);
- se.setNextException(se2);
- throw se;
-
- }
- int hostStartIndex = urlPrefix.length();
- return (url.charAt(hostStartIndex) == '[');
- }
-
- /**
- * Extracts the property name, value pair from a url String, seperated by ;
- *
- * @param url
- * of format jdbc:t4jdbc://host:port/:[prop-name=prop-value]..
- * @return Propeties object
- * @throws IOException
- */
- private Properties extractPropertiesFromString(String url) throws SQLException {
- int urLength = url.length();
- int hostStartIndex = urlPrefix.length();
- int propStartIndex = url.indexOf('/', hostStartIndex);
- if (propStartIndex < 0) {
- return null;
- }
-
- if (propStartIndex == urLength) {
- return null;
- }
-
- if (url.charAt(propStartIndex) == '/') {
- propStartIndex++;
-
- }
- if (propStartIndex == urLength) {
- return null;
- }
-
- if (url.charAt(propStartIndex) == ':') {
- propStartIndex++;
-
- }
- if (propStartIndex == urLength) {
- return null;
- }
-
- String propStr = url.substring(propStartIndex);
- if ((propStr == null) || (propStr.length() == 0)) {
- return null;
- }
-
- Properties props = new Properties();
- propStr = propStr.replace(';', '\n');
- ByteArrayInputStream byteArrIPStream = new ByteArrayInputStream(propStr.getBytes());
-
- try {
- props.load(byteArrIPStream);
- } catch (IOException ioex) {
- throw new SQLException(ioex.getMessage());
- }
-
- return props;
- }
-
- /**
- * Checks the string is host or port.
- *
- * @param IPorName
- * @return true if the address is a IP address
- */
- private boolean isIPAddress(String IPorName) {
- // Minimum length = 7; 1.1.1.1
- if (IPorName.length() < 7)
- return false;
- //
- // If first letter is a digit or ":" (i.e. IPv6), I'll assume it is an
- // IP address
- //
- return (Character.isDigit(IPorName.charAt(0)) || (IPorName.charAt(1) == ':'));
- }
-} // end class Address
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/72e17019/core/conn/jdbc_type4/src/org/trafodion/jdbc/t4/T4Connection.java
----------------------------------------------------------------------
diff --git a/core/conn/jdbc_type4/src/org/trafodion/jdbc/t4/T4Connection.java b/core/conn/jdbc_type4/src/org/trafodion/jdbc/t4/T4Connection.java
deleted file mode 100644
index d1ce34f..0000000
--- a/core/conn/jdbc_type4/src/org/trafodion/jdbc/t4/T4Connection.java
+++ /dev/null
@@ -1,505 +0,0 @@
-// @@@ START COPYRIGHT @@@
-//
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements. See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership. The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License. You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied. See the License for the
-// specific language governing permissions and limitations
-// under the License.
-//
-// @@@ END COPYRIGHT @@@
-
-package org.trafodion.jdbc.t4;
-
-import java.nio.charset.CharacterCodingException;
-import java.nio.charset.UnsupportedCharsetException;
-import java.sql.SQLException;
-import java.util.Locale;
-import java.util.logging.Level;
-
-class T4Connection {
- protected Locale m_locale;
- protected int m_dialogueId;
- protected NCSAddress m_ncsAddress;
- private InputOutput m_io;
- private USER_DESC_def m_userDesc;
- private CONNECTION_CONTEXT_def m_inContext;
- private String m_sessionName;
- InterfaceConnection m_ic;
-
- static final int INCONTEXT_OPT1_SESSIONNAME = 0x80000000; // (2^31)
- static final int INCONTEXT_OPT1_FETCHAHEAD = 0x40000000; // (2^30)
- static final int INCONTEXT_OPT1_CERTIFICATE_TIMESTAMP = 0x20000000; //(2^29)
- static final int INCONTEXT_OPT1_CLIENT_USERNAME = 0x10000000; //(2^28)
-
- T4Connection(InterfaceConnection ic) throws SQLException {
- if (ic == null) {
- throwInternalException();
-
- }
- m_ic = ic;
- m_locale = ic.getLocale();
- m_dialogueId = ic.getDialogueId();
- m_ncsAddress = ic.getNCSAddress();
- m_userDesc = ic.getUserDescription();
- m_inContext = ic.getInContext();
- m_sessionName = ic.getSessionName();
-
- if (m_dialogueId < 1 || m_ncsAddress == null || m_userDesc == null || m_inContext == null) {
- throwInternalException();
-
- }
- m_io = m_ncsAddress.getInputOutput();
- if (m_io == null) {
- throwInternalException();
- }
- m_io.setDialogueId(m_dialogueId);
- m_io.setConnectionIdleTimeout(ic.getConnectionTimeout());
- // trace_connection - AM
- m_io.setT4Connection(this);
- m_io.openIO();
- getInputOutput().setTimeout(ic.getLoginTimeout());
- checkConnectionIdleTimeout();
- resetConnectionIdleTimeout();
- }
-
- public void finalizer() {
- closeTimers();
- }
-
- protected int getDialogueId() {
- return m_dialogueId;
- }
-
- protected Locale getLocale() {
- return m_locale;
- }
-
- protected String getSessionName() {
- return this.m_sessionName;
- }
-
- protected NCSAddress getNCSAddress() {
- return m_ncsAddress;
- }
-
- void closeTimers() {
- if (m_io != null) {
- m_io.closeTimers();
- }
- }
-
- protected void reuse() {
- resetConnectionIdleTimeout();
- }
-
- private void setConnectionIdleTimeout() {
- m_io.startConnectionIdleTimeout();
- }
-
- private void resetConnectionIdleTimeout() {
- m_io.resetConnectionIdleTimeout();
- }
-
- private void checkConnectionIdleTimeout() throws SQLException {
- if (m_io.checkConnectionIdleTimeout()) {
- try {
- m_ic.close();
- } catch (SQLException sqex) {
- // ignores
- }
- throw HPT4Messages.createSQLException(m_ic.t4props_, m_locale, "ids_s1_t00", null);
- }
- }
-
- protected boolean connectionIdleTimeoutOccured() {
- return m_io.checkConnectionIdleTimeout();
- }
-
- protected InputOutput getInputOutput() throws SQLException {
- checkConnectionIdleTimeout();
- resetConnectionIdleTimeout();
- return m_io;
- }
-
- protected void throwInternalException() throws SQLException {
- T4Properties tempP = null;
-
- if (m_ic != null) {
- tempP = m_ic.t4props_;
-
- }
- SQLException se = HPT4Messages.createSQLException(tempP, m_locale, "internal_error", null);
- SQLException se2 = HPT4Messages.createSQLException(tempP, m_locale, "contact_hp_error", null);
-
- se.setNextException(se2);
- throw se;
- }
-
- // --------------------------------------------------------------------------------
- protected LogicalByteArray getReadBuffer(short odbcAPI, LogicalByteArray wbuffer) throws SQLException {
- // trace_connection - AM
- if (m_ic.t4props_.t4Logger_.isLoggable(Level.FINEST) == true) {
- Object p[] = T4LoggingUtilities.makeParams(m_ic.t4props_);
- String temp = "LogicalByteArray";
- m_ic.t4props_.t4Logger_.logp(Level.FINEST, "T4Connection", "getReadBuffer", temp, p);
- }
- LogicalByteArray rbuffer = m_io.doIO(odbcAPI, wbuffer);
-
- return rbuffer;
- }
-
- // --------------------------------------------------------------------------------
- /**
- * This class corresponds to the ODBC client driver function
- * odbc_SQLSvc_InitializeDialogue_pst_ as taken from odbccs_drvr.cpp.
- * @version 1.0
- *
- * This method will make a connection to an ODBC server. The ODBC server's
- * locaiton This method will make a connection to an ODBC server. The ODBC
- * server's locaiton (i.e. ip address and port number), were provided by an
- * earlier call to the ODBC association server.
- *
- * @param inContext
- * a CONNETION_CONTEXT_def object containing connection
- * information
- * @param userDesc
- * a USER_DESC_def object containing user information
- * @param inContext
- * a CONNECTION_CONTEXT_def object containing information for
- * this connection
- * @param dialogueId
- * a unique id identifing this connection as supplied by an
- * earlier call to the association server
- *
- * @retrun a InitializeDialogueReply class representing the reply from the
- * ODBC server is returned
- *
- * @exception A
- * SQLException is thrown
- */
-
- InitializeDialogueReply InitializeDialogue(boolean setTimestamp, boolean downloadCert) throws SQLException {
- try {
- int optionFlags1 = INCONTEXT_OPT1_CLIENT_USERNAME;
- int optionFlags2 = 0;
-
- if(setTimestamp) {
- optionFlags1 |= INCONTEXT_OPT1_CERTIFICATE_TIMESTAMP;
- }
-
- if (m_sessionName != null && m_sessionName.length() > 0) {
- optionFlags1 |= INCONTEXT_OPT1_SESSIONNAME;
- }
-
- if (this.m_ic.t4props_.getFetchAhead()) {
- optionFlags1 |= INCONTEXT_OPT1_FETCHAHEAD;
- }
-
- // trace_connection - AM
- if (m_ic.t4props_.t4Logger_.isLoggable(Level.FINEST) == true) {
- Object p[] = T4LoggingUtilities.makeParams(m_ic.t4props_);
- String temp = "m_dialogueId=" + m_dialogueId;
- m_ic.t4props_.t4Logger_.logp(Level.FINEST, "T4Connection", "InitializeDialogue", temp, p);
- }
- LogicalByteArray wbuffer = InitializeDialogueMessage.marshal(m_userDesc, m_inContext, m_dialogueId,
- optionFlags1, optionFlags2, m_sessionName, m_ic);
-
- getInputOutput().setTimeout(m_ic.t4props_.getLoginTimeout());
-
- LogicalByteArray rbuffer = getReadBuffer(TRANSPORT.SRVR_API_SQLCONNECT, wbuffer);
-
- //
- // Process output parameters
- //
- InitializeDialogueReply idr1 = new InitializeDialogueReply(rbuffer, m_ncsAddress.getIPorName(), m_ic, downloadCert);
-
- return idr1;
- } catch (SQLException se) {
- throw se;
- } catch (CharacterCodingException e) {
- SQLException se = HPT4Messages.createSQLException(m_ic.t4props_, m_locale,
- "translation_of_parameter_failed", "InitializeDialogueMessage", e.getMessage());
- se.initCause(e);
- throw se;
- } catch (UnsupportedCharsetException e) {
- SQLException se = HPT4Messages.createSQLException(m_ic.t4props_, m_locale, "unsupported_encoding", e
- .getCharsetName());
- se.initCause(e);
- throw se;
- }
-
- catch (Exception e) {
- SQLException se = HPT4Messages.createSQLException(m_ic.t4props_, m_locale,
- "initialize_dialogue_message_error", e.getMessage());
-
- se.initCause(e);
- throw se;
- } // end catch
- } // end InitializeDialogue
-
- /**
- * This method will end a connection to an ODBC server. The ODBC server's
- * locaiton (i.e. ip address and port number), were provided by an earlier
- * call to the ODBC association server.
- *
- * @retrun a TerminateDialogueReply class representing the reply from the
- * ODBC server is returned
- *
- * @exception A
- * SQLException is thrown
- */
- TerminateDialogueReply TerminateDialogue() throws SQLException {
- try {
- // trace_connection - AM
- if (m_ic.t4props_.t4Logger_.isLoggable(Level.FINEST) == true) {
- Object p[] = T4LoggingUtilities.makeParams(m_ic.t4props_);
- String temp = "m_dialogueId=" + m_dialogueId;
- m_ic.t4props_.t4Logger_.logp(Level.FINEST, "T4Connection", "TerminateDialogue", temp, p);
- }
- LogicalByteArray wbuffer = TerminateDialogueMessage.marshal(m_dialogueId, this.m_ic);
-
- //
- // used m_ic instead of getInputOutput, because getInputOutput
- // implicitly calls close at timeout, which will call
- // TerminateDialogue
- // which causes recursion.
- //
- // m_io.setTimeout(m_ic.t4props_.getCloseConnectionTimeout());
- m_io.setTimeout(m_ic.t4props_.getLoginTimeout());
-
- LogicalByteArray rbuffer = getReadBuffer(TRANSPORT.SRVR_API_SQLDISCONNECT, wbuffer);
-
- //
- // Process output parameters
- //
- TerminateDialogueReply tdr1 = new TerminateDialogueReply(rbuffer, m_ncsAddress.getIPorName(), m_ic);
-
- //
- // Send a close message and close the port if we don't have an
- // error.
- // If there is an error, it's up to the calling routine to decide
- // what to do.
- //
- if (tdr1.m_p1.exception_nr == TRANSPORT.CEE_SUCCESS) {
- m_io.CloseIO(wbuffer); // note, I'm re-using wbuffer
-
- }
-
- closeTimers();
-
- return tdr1;
- } // end try
- catch (SQLException se) {
- throw se;
- } catch (CharacterCodingException e) {
- SQLException se = HPT4Messages.createSQLException(m_ic.t4props_, m_locale,
- "translation_of_parameter_failed", "TerminateDialogMessage", e.getMessage());
- se.initCause(e);
- throw se;
- } catch (UnsupportedCharsetException e) {
- SQLException se = HPT4Messages.createSQLException(m_ic.t4props_, m_locale, "unsupported_encoding", e
- .getCharsetName());
- se.initCause(e);
- throw se;
- } catch (Exception e) {
- SQLException se = HPT4Messages.createSQLException(m_ic.t4props_, m_locale,
- "terminate_dialogue_message_error", e.getMessage());
-
- se.initCause(e);
- throw se;
- } // end catch
- } // end TerminateDialogue
-
- /**
- * This method will send a set connection option command to the server.
- *
- * @param connetionOption
- * The connection option to be set
- * @param optionValueNum
- * The number value of the option
- * @param optionValueStr
- * The string value of the option
- *
- * @retrun a SetConnectionOptionReply class representing the reply from the
- * ODBC server is returned
- *
- * @exception A
- * SQLException is thrown
- */
- SetConnectionOptionReply SetConnectionOption(short connectionOption, int optionValueNum, String optionValueStr)
- throws SQLException {
-
- if (optionValueStr == null) {
- throwInternalException();
-
- }
- try {
-
- LogicalByteArray wbuffer = SetConnectionOptionMessage.marshal(m_dialogueId, connectionOption,
- optionValueNum, optionValueStr, this.m_ic);
-
- getInputOutput().setTimeout(m_ic.t4props_.getNetworkTimeout());
-
- LogicalByteArray rbuffer = getReadBuffer(TRANSPORT.SRVR_API_SQLSETCONNECTATTR, wbuffer);
-
- SetConnectionOptionReply scor = new SetConnectionOptionReply(rbuffer, m_ncsAddress.getIPorName(), m_ic);
-
- return scor;
- } // end try
- catch (SQLException se) {
- throw se;
- } catch (CharacterCodingException e) {
- SQLException se = HPT4Messages.createSQLException(m_ic.t4props_, m_locale,
- "translation_of_parameter_failed", "SetConnectionOptionReply", e.getMessage());
- se.initCause(e);
- throw se;
- } catch (UnsupportedCharsetException e) {
- SQLException se = HPT4Messages.createSQLException(m_ic.t4props_, m_locale, "unsupported_encoding", e
- .getCharsetName());
- se.initCause(e);
- throw se;
- } catch (Exception e) {
- SQLException se = HPT4Messages.createSQLException(m_ic.t4props_, m_locale,
- "set_connection_option_message_error", e.getMessage());
-
- se.initCause(e);
- throw se;
- } // end catch
- } // end SetConnectionOption
-
- /**
- * This method will send an End Transaction command, which does not return
- * any rowsets, to the ODBC server.
- *
- * @param transactionOpt
- * A transaction opt
- *
- * @retrun A EndTransactionReply class representing the reply from the ODBC
- * server is returned
- *
- * @exception A
- * SQLException is thrown
- */
- EndTransactionReply EndTransaction(short transactionOpt) throws SQLException {
-
- try {
- LogicalByteArray wbuffer = EndTransactionMessage.marshal(m_dialogueId, transactionOpt, this.m_ic);
-
- getInputOutput().setTimeout(m_ic.t4props_.getNetworkTimeout());
-
- LogicalByteArray rbuffer = getReadBuffer(TRANSPORT.SRVR_API_SQLENDTRAN, wbuffer);
-
- EndTransactionReply cr = new EndTransactionReply(rbuffer, m_ncsAddress.getIPorName(), m_ic);
- return cr;
- } // end try
- catch (SQLException se) {
- throw se;
- } catch (CharacterCodingException e) {
- SQLException se = HPT4Messages.createSQLException(m_ic.t4props_, m_locale,
- "translation_of_parameter_failed", "EndTransactionMessage", e.getMessage());
- se.initCause(e);
- throw se;
- } catch (UnsupportedCharsetException e) {
- SQLException se = HPT4Messages.createSQLException(m_ic.t4props_, m_locale, "unsupported_encoding", e
- .getCharsetName());
- se.initCause(e);
- throw se;
- } catch (Exception e) {
- SQLException se = HPT4Messages.createSQLException(m_ic.t4props_, m_locale, "end_transaction_message_error",
- e.getMessage());
-
- se.initCause(e);
- throw se;
- } // end catch
-
- } // end EndTransaction
-
- /**
- * This method will send an get SQL catalogs command to the ODBC server.
- *
- * @param stmtLabel
- * a statement label for use by the ODBC server
- * @param APIType
- * @param catalogNm
- * @param schemaNm
- * @param tableNm
- * @param tableTypeList
- * @param columnNm
- * @param columnType
- * @param rowIdScope
- * @param nullable
- * @param uniqueness
- * @param accuracy
- * @param sqlType
- * @param metadataId
- * @param fkcatalogNm
- * @param fkschemaNm
- * @param fktableNm
- *
- * @retrun a GetSQLCatalogsReply class representing the reply from the ODBC
- * server is returned
- *
- * @exception A
- * SQLException is thrown
- */
- GetSQLCatalogsReply GetSQLCatalogs(String stmtLabel, short APIType, String catalogNm, String schemaNm,
- String tableNm, String tableTypeList, String columnNm, int columnType, int rowIdScope, int nullable,
- int uniqueness, int accuracy, short sqlType, int metadataId, String fkcatalogNm, String fkschemaNm,
- String fktableNm) throws SQLException {
-
- if (stmtLabel == null) {
- throwInternalException();
-
- }
- try {
- LogicalByteArray wbuffer;
-
- wbuffer = GetSQLCatalogsMessage.marshal(m_dialogueId, stmtLabel, APIType, catalogNm, schemaNm, tableNm,
- tableTypeList, columnNm, columnType, rowIdScope, nullable, uniqueness, accuracy, sqlType,
- metadataId, fkcatalogNm, fkschemaNm, fktableNm, m_ic);
-
- getInputOutput().setTimeout(m_ic.t4props_.getNetworkTimeout());
-
- LogicalByteArray rbuffer = getReadBuffer(TRANSPORT.SRVR_API_GETCATALOGS, wbuffer);
-
- //
- // Process output parameters
- //
- GetSQLCatalogsReply gscr = new GetSQLCatalogsReply(rbuffer, m_ncsAddress.getIPorName(), m_ic);
-
- return gscr;
- } // end try
- catch (SQLException se) {
- throw se;
- } catch (CharacterCodingException e) {
- SQLException se = HPT4Messages.createSQLException(m_ic.t4props_, m_locale,
- "translation_of_parameter_failed", "GetSQLCatalogsMessage", e.getMessage());
- se.initCause(e);
- throw se;
- } catch (UnsupportedCharsetException e) {
- SQLException se = HPT4Messages.createSQLException(m_ic.t4props_, m_locale, "unsupported_encoding", e
- .getCharsetName());
- se.initCause(e);
- throw se;
- } catch (Exception e) {
- SQLException se = HPT4Messages.createSQLException(m_ic.t4props_, m_locale,
- "get_sql_catalogs_message_error", e.getMessage());
-
- se.initCause(e);
- throw se;
- } // end catch
-
- } // end GetSQLCatalogs
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/72e17019/core/conn/jdbc_type4/src/org/trafodion/jdbc/t4/T4DSProperties.java
----------------------------------------------------------------------
diff --git a/core/conn/jdbc_type4/src/org/trafodion/jdbc/t4/T4DSProperties.java b/core/conn/jdbc_type4/src/org/trafodion/jdbc/t4/T4DSProperties.java
deleted file mode 100644
index a44d0f3..0000000
--- a/core/conn/jdbc_type4/src/org/trafodion/jdbc/t4/T4DSProperties.java
+++ /dev/null
@@ -1,967 +0,0 @@
-// @@@ START COPYRIGHT @@@
-//
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements. See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership. The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License. You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied. See the License for the
-// specific language governing permissions and limitations
-// under the License.
-//
-// @@@ END COPYRIGHT @@@
-
-package org.trafodion.jdbc.t4;
-
-import java.sql.SQLException;
-import java.util.Locale;
-import java.util.Properties;
-import java.util.logging.Level;
-
-/**
- * <p>
- * JDBC Type 4 driver data source connetion properties class.
- * </p>
- * <p>
- * Description: The <code>T4DSProperties</code> class contains all the
- * properties associated with Type 4 data source connection.
- * <code>T4DSProperties</code> is inherited by the <code>HPT4DataSource,
- * HPT4ConnectionPooledDataSource</code>
- * classes for configuring Type 4 connection properties.
- * <p>
- * The properties passed to the Type 4 driver have this precedence order in
- * event of the values set through more than one option:
- * </p>
- * <blockquote>
- * <p>
- * 1. java.util.properties parameter in the
- * <code>DriverManager.getConnection</code> call or through
- * <code>DataSource.setXXX()</code> call.
- * </p>
- * <p>
- * 2. <code>java.util.properties</code> file properties set through
- * <code>-Dt4jdbc.properties</code> option.
- * </p>
- * <p>
- * 3. Command line properties using -D option. All the system properties passed
- * through the command-line option have to be prefixed with
- * <code>t4jdbc</code>, to distinguish JDBC Type 4 driver properties
- * from other system properties. For example: property <code>user</code> when
- * specified with -D has to be qualified as
- * <code>-Dt4jdbc.user=super.super</code>.
- * </p>
- * </blockquote>
- * <p>
- * Copyright: (C) Apache Software Foundation (ASF)
- * </p>
- *
- */
-public class T4DSProperties extends T4Properties {
-
- public T4DSProperties() {
- super();
- }
-
- public T4DSProperties(Properties props) {
- super(props);
- }
-
- /**
- * Sets the description for the current Type 4 connection.
- *
- * @param description
- * For the current Type 4 connection.
- * @see #getDescription()
- */
- public void setDescription(String description) {
- super.setDescription(description);
- }
-
- /**
- * Returns the description associated with the current Type 4 connection.
- *
- * @return The description associated with the current Type 4 connection.
- * @see #setDescription(String)
- */
- public String getDescription() {
- return super.getDescription();
- }
-
- /**
- * Sets the data source name for the current Type 4 connection.
- *
- * @param dataSourceName
- * For the client side <code>DataSource</code> object.
- * @see #getDataSourceName()
- */
- public void setDataSourceName(String dataSourceName) {
- super.setDataSourceName(dataSourceName);
- }
-
- /**
- * Returns the client's data source name.
- *
- * @return data source name.
- * @see #setDataSourceName(String)
- */
- public String getDataSourceName() {
- return super.getDataSourceName();
- }
-
- /**
- * Sets the NDCS server data source name. The NDCS server data source is
- * defined by NDCS on the server.
- *
- * @param serverDataSource
- * the NDCS data source name to use on the NDCS server side. The
- * default value is an empty string.
- * @see #getServerDataSourceName()
- */
- public void setServerDataSource(String serverDataSource) {
- super.setServerDataSource(serverDataSource);
- }
-
- /**
- * Returns the NDCS server-side data source name used for the current Type 4
- * connection.
- *
- * @return NDCS server-side data source name.
- * @see #setServerDataSource(String)
- */
- public String getServerDataSource() {
- return super.getServerDataSource();
- }
-
- /**
- * Sets the default catalog that will be used to access SQL objects
- * referenced in SQL statements if the SQL objects are not fully qualified.
- *
- * @param catalog
- * Database catalog name. The default catalog name is
- * set by the DCS server-side data source.
- * @see #getCatalog()
- */
- public void setCatalog(String catalog) {
- super.setCatalog(catalog);
- }
-
- /**
- * Gets the default catalog that will be used to access SQL objects
- * referenced in SQL statements if the SQL objects are not fully qualified.
- *
- * @return HPT4 catalog name.
- * @see #setCatalog(String)
- */
- public String getCatalog() {
- return super.getCatalog();
- }
-
- /**
- * Sets the default schema that will be used to access SQL objects
- * referenced in SQL statements if the SQL objects are not fully qualified.
- *
- * @param schema
- * Database schema name. The default schema name is
- * set by the DCS server side data source.
- * @see #getSchema()
- */
- public void setSchema(String schema) {
- super.setSchema(schema);
- }
-
- /**
- * Gets the default schema that will be used to access SQL objects
- * referenced in SQL statements if the SQL objects are not fully qualified.
- *
- * @return The schema associated with the current Type 4 connection.
- * @see #setSchema(String)
- */
- public String getSchema() {
- return super.getSchema();
- }
-
- /**
- * Configure the Type 4 connection to continue batch processing of next
- * commands even after errors. Default value is true.
- *
- * @param batchRecovery
- */
- void setBatchRecovery(String batchRecovery) {
- boolean boolBatchRecovery = true;
- if (batchRecovery != null) {
- if (batchRecovery.equalsIgnoreCase("false")) {
- boolBatchRecovery = false;
- }
- }
- setBatchRecovery(boolBatchRecovery);
- }
-
- /**
- * Configure the Type 4 connection to continue batch processing of next
- * commands even after errors. Default value is true.
- *
- * @param batchRecovery
- */
- void setBatchRecovery(boolean batchRecovery) {
- super.setBatchRecovery(batchRecovery);
- }
-
- /**
- * Return whether the Type 4 connection is configured to continue batch
- * processing of next commands even after errors.
- *
- * @return batchRecovery
- */
- boolean getBatchRecovery() {
- return super.getBatchRecovery();
- }
-
- /**
- * Returns the <code>java.util.Locale</code> object associated with the
- * current Type 4 connection.
- *
- * @return <code>java.util.Locale</code> object.
- */
- public Locale getLocale() {
- return super.getLocale();
- }
-
- /**
- * The maximum number of physical connections that the pool (free and
- * in-use) should contain. When the maximum number of physical connections
- * is reached, the Type 4 driver throws an <code>SQLException
- * </code> with
- * the message "Maximum pool size reached." Specifying a value of 0 (zero)
- * indicates there is no maximum size for the pool. Specifying a value of -1
- * indicates no connection pooling is performed. The default value is -1,
- * indicating that no pooling of physical connections is done.
- *
- * @param maxPoolSize
- * the maximum number of physical connections the pool should
- * contain (free and in use).
- * @see #getMaxPoolSize()
- * @see #setMaxPoolSize(int)
- */
- public void setMaxPoolSize(String maxPoolSize) {
- super.setMaxPoolSize(maxPoolSize);
- }
-
- /**
- * The maximum number of physical connections that the pool (free and
- * in-use) should contain. When the maximum number of physical connections
- * is reached, the Type 4 driver throws an <code>SQLException
- * </code> with
- * the message "Maximum pool size reached." Specifying a value of 0 (zero)
- * indicates there is no maximum size for the pool. Specifying a value of -1
- * indicates no connection pooling is performed. The default value is -1,
- * indicating that no pooling of physical connections is done.
- *
- * @param maxPoolSize
- * the maximum number of physical connections the pool should
- * contain (free and in use).
- * @see #getMaxPoolSize()
- * @see #setMaxPoolSize(String)
- */
-
- public void setMaxPoolSize(int maxPoolSize) {
- super.setMaxPoolSize(maxPoolSize);
- }
-
- /**
- * Returns the maximum number of physical connections that the pool (free
- * and inuse) should contain. A value of zero (0) indicates no maximum size.
- * A value of -1 indicates that connection pooling is not being done.
- *
- * @return the maximum number of physical connections that the pool should
- * contain.
- * @see #setMaxPoolSize(int)
- */
- public int getMaxPoolSize() {
- return super.getMaxPoolSize();
- }
-
- /**
- * Sets the number of physical connections the pool should keep available at
- * all times.
- *
- * @param minPoolSize
- * Limits the number of physical connection that can be in the
- * free pool. When the number of physical connections in the free
- * pool reaches the value of minPoolSize, subsequent connections
- * that are closed are physically closed and are not added to the
- * free pool. Specifying a value of 0 means that the value of
- * minPoolSize is the same as the value of maxPoolSize. If the
- * value of maxPoolSize is -1, the value of minPoolSize is
- * ignored. The default value is 0. For this data source, it is
- * recommended that you use the default value.
- * @see #getMinPoolSize()
- * @see #setMinPoolSize(int minPoolSize)
- */
- public void setMinPoolSize(String minPoolSize) {
- super.setMinPoolSize(minPoolSize);
- }
-
- /**
- * Sets the number of physical connections the pool should keep available at
- * all times.
- *
- * @param minPoolSize
- * Limits the number of physical connection that can be in the
- * free pool. When the number of physical connections in the free
- * pool reaches the value of minPoolSize, subsequent connections
- * that are closed are physically closed and are not added to the
- * free pool. Specifying a value of 0 means that the value of
- * minPoolSize is the same as the value of maxPoolSize. If the
- * value of maxPoolSize is -1, the value of minPoolSize is
- * ignored. The default value is 0. For this data source, it is
- * recommended that you use the default value.
- * @see #getMinPoolSize()
- * @see #setMinPoolSize(String minPoolSize)
- */
- public void setMinPoolSize(int minPoolSize) {
- super.setMinPoolSize(minPoolSize);
- }
-
- /**
- * Returns the number of physical connections the pool should keep in the
- * free pool. A value of 0 (zero) indicates that minPoolSize is equal to
- * maxPoolsize. If maxPoolsize is equal to -1, the value of minPoolSize is
- * ignored. The default value is 0.
- *
- * @return The number of physical connections the pool should maintain in
- * the free pool.
- * @see #setMinPoolSize(int)
- * @see #setMaxPoolSize(int)
- */
- public int getMinPoolSize() {
- return super.getMinPoolSize();
- }
-
- /**
- * The initial number of physical connections that the pool should be
- * created with. Specifying a value of 0 (zero) or less indicates that the
- * pool should not be created with any initial connections. The default
- * value is -1 indicating that no initial pool of physical connections is
- * created. The value can be less than minPoolSize but must be less than or
- * equal to the value of maxPoolSize. Specifying a value greater than
- * maxPoolSize will set the initialPoolSize to the value of maxPoolSize.
- *
- * @param initialPoolSize
- * the initial number of physical connections the pool should be
- * created with.
- * @see #setInitialPoolSize(int)
- */
- public void setInitialPoolSize(String initialPoolSize) {
- super.setInitialPoolSize(initialPoolSize);
- }
-
- /**
- * The initial number of physical connections that the pool should be
- * created with. Specifying a value of 0 (zero) or less indicates that the
- * pool should not be created with any initial connections. The default
- * value is -1 indicating that no initial pool of physical connections is
- * created. The value can be less than minPoolSize but must be less than or
- * equal to the value of maxPoolSize. Specifying a value greater than
- * maxPoolSize will set the initialPoolSize to the value of maxPoolSize.
- *
- * @param initialPoolSize
- * the initial number of physical connections the pool should be
- * created with.
- * @see #setInitialPoolSize(String)
- */
- public void setInitialPoolSize(int initialPoolSize) {
- super.setInitialPoolSize(initialPoolSize);
- }
-
- /**
- * Returns the number of physical connections that the pool should be
- * created with. A value of -1 indicates that the pool is not created with
- * any initial connections.
- *
- * @return initialPoolSize the number of physical connections that the pool
- * should be created with.
- * @see #setInitialPoolSize(int)
- */
- public int getInitialPoolSize() {
- return super.getInitialPoolSize();
- }
-
- /**
- * Total number of statements that can be cached. A value of zero (0)
- * indicates that caching of statements is disabled.
- *
- * @param maxStatements
- * The number of statements that can be cached.
- * @see #setMaxStatements(int)
- */
- public void setMaxStatements(String maxStatements) {
- super.setMaxStatements(maxStatements);
- }
-
- /**
- * Total number of statements that can be cached. A value of zero (0)
- * indicates that caching of statements is disabled.
- *
- * @param maxStatements
- * The number of statements that can be cached.
- * @see #setMaxStatements(String)
- */
- public void setMaxStatements(int maxStatements) {
- super.setMaxStatements(maxStatements);
- }
-
- /**
- * Returns the total number of statements that can be cached. A value of
- * zero (0) indicates that pooling of statements is disabled.
- *
- * @return The total number of statements that can be cached.
- */
- public int getMaxStatements() {
- return super.getMaxStatements();
- }
-
- /**
- * Returns the URL used in the current Type 4 connection. JDBC Type 4
- * driver URL uses the format: <code>jdbc:t4jdbc://host:port/:</code>
- *
- * @deprecated Use the <code>getUrl()</code> to obtain the URL string.
- * @return the URL string.
- * @see #getUrl()
- */
- public String getURL() {
- return getURL();
- }
-
- /**
- * Sets the URL for the Type 4 connection. JDBC Type 4 driver URL uses
- * the format: <code>jdbc:t4jdbc://host:port/:prop-name=value</code>.
- * This validates the URL value and throws SQLException if the URL value is
- * incorrect.
- *
- * @param url
- * the URL.
- * @see #getUrl()
- */
- public Properties setURL(String url) throws SQLException {
- return super.setURL(url);
- }
-
- /**
- * Returns the URL used in the current Type 4 connection. JDBC Type 4
- * driver URL uses the format:
- * <code>jdbc:t4jdbc://host:port/[:][prop-name=value][,prop-name=value]...</code>
- *
- * @return the URL string.
- * @see #setUrl(String)
- */
- public String getUrl() {
- return super.getUrl();
- }
-
- /**
- * Sets the URL for the Type 4 connection. JDBC Type 4 driver URL uses
- * the format:
- * <code>jdbc:t4jdbc://host:port/[:][prop-name=value][,prop-name=value]...</code>
- * This method does not validate the URL value.
- *
- * @param url
- * the URL.
- * @see #getUrl()
- */
- public void setUrl(String url) {
- super.setUrl(url);
- }
-
- /**
- * Sets the Safeguard user name to be used while connecting to NDCS server
- * for authentication.
- *
- * @param user
- * Sets the user for the current Type 4 connection.
- * @see #getUser()
- */
- public void setUser(String user) {
- super.setUser(user);
- }
-
- /**
- * Returns the Safeguard user name associated with this Type 4 connection.
- *
- * @return The user name.
- * @see #setUser(String)
- */
- public String getUser() {
- return super.getUser();
- }
-
- /**
- * Sets the Safeguard password to be used for authentication when connecting
- * to the NDCS server.
- *
- * @param pwd
- * The Safeguard password for the current Type 4 connection.
- */
- public void setPassword(String pwd) {
- super.setPassword(pwd);
- }
-
- /**
- * Sets the login timeout in seconds for the Type 4 connection. The default
- * login timeout value is set to 60 seconds.
- *
- * @param loginTimeout
- * The login timeout value in seconds.
- * @see #setLoginTimeout(int)
- * @see #getLoginTimeout()
- */
- public void setLoginTimeout(String loginTimeout) {
- super.setLoginTimeout(loginTimeout);
- }
-
- /**
- * Sets the login timeout in seconds for the Type 4 connection. The default
- * login timeout value is set to 60 seconds.
- *
- * @param loginTimeout
- * The login timeout value in seconds.
- * @see #setLoginTimeout(String)
- * @see #getLoginTimeout()
- */
- public void setLoginTimeout(int loginTimeout) {
- super.setLoginTimeout(loginTimeout);
- }
-
- /**
- * Returns the login timeout value set for the current Type 4 connection.
- *
- * @return the login timeout value in seconds.
- * @see #setLoginTimeout(int)
- * @see #setLoginTimeout(String)
- */
- public int getLoginTimeout() {
- return super.getLoginTimeout();
- }
-
- /**
- * Sets the network timeout in seconds for the Type 4 connection. The
- * default network timeout value is set to infinity.
- *
- * @param networkTimeout
- * The network timeout value in seconds.
- * @see #setNetworkTimeout(int)
- * @see #getNetworkTimeout()
- */
- public void setNetworkTimeout(String networkTimeout) {
- super.setNetworkTimeout(networkTimeout);
- }
-
- /**
- * Sets the network timeout in seconds for the Type 4 connection. The
- * default network timeout value is set to infinity.
- *
- * @param networkTimeout
- * The network timeout value in seconds.
- * @see #setNetworkTimeout(String)
- * @see #getNetworkTimeout()
- */
- public void setNetworkTimeout(int networkTimeout) {
- super.setNetworkTimeout(networkTimeout);
- }
-
- /**
- * Returns the network timeout value set for the current Type 4 connection.
- *
- * @return The network timeout value in seconds.
- * @see #setNetworkTimeout(int)
- * @see #setNetworkTimeout(String)
- */
- public int getNetworkTimeout() {
- return super.getNetworkTimeout();
- }
-
- // -----------------------------------------------------------------
-
- /*
- * Sets the connection timeout value for the Type 4 connection. Set this
- * value to 0 for infinite timeout. The default is set to -1. A negative
- * value indicates the NDCS server to use the connection timeout value set
- * by the administrator on the NDCS data source. @param connectionTimeout
- * The connection timeout value in seconds.
- *
- * @see #setConnectionTimeout(int)
- * @see #setServerDataSource(String)
- */
- public void setConnectionTimeout(String connectionTimeout) {
- super.setConnectionTimeout(connectionTimeout);
- }
-
- /*
- * Sets the connection timeout value for the Type 4 connection. Set this
- * value to 0 for infinite timeout. The default is set to -1. A negative
- * value indicates the NDCS server to use the connection timeout value set
- * by the administrator on the NDCS data source. @param connectionTimeout
- * The connection timeout value in seconds.
- *
- * @see #setConnectionTimeout(String)
- * @see #setServerDataSource(String)
- */
- public void setConnectionTimeout(int connectionTimeout) {
- super.setConnectionTimeout(connectionTimeout);
- }
-
- /**
- * Sets the max idle time value for the Type 4 connection. The default is
- * set to 0 (no timeout). Negative values are treated as 0.
- *
- * @param maxIdleTime
- * The timeout value in seconds.
- * @see #setMaxIdleTime(int)
- */
- public void setMaxIdleTime(String maxIdleTime) {
- super.setMaxIdleTime(maxIdleTime);
- }
-
- /**
- * Sets the max idle time value for the Type 4 connection.The default is set
- * to 0 (no timeout). Negative values are treated as 0.
- *
- * @param maxIdleTime
- * The timeout value in seconds.
- * @see #setMaxIdleTime(String)
- */
- public void setMaxIdleTime(int maxIdleTime) {
- super.setMaxIdleTime(maxIdleTime);
- }
-
- /*
- * Returns the connection timeout value associated with this Type 4
- * connection. @return The connection timeout value in seconds.
- *
- * @see #setConnectionTimeout(int)
- */
-
- public int getConnectionTimeout() {
- return super.getConnectionTimeout();
- }
-
- /**
- * Returns the max idle time value associated with this Type 4 connection.
- *
- * @return The max idle timeout value in seconds.
- * @see #setMaxIdleTime(int)
- */
- public int getMaxIdleTime() {
- return super.getMaxIdleTime();
- }
-
- /**
- * Sets the logging level for the current Type 4 connection. The default
- * value is OFF. Valid values are:
- *
- * <PRE>
- * OFF (no logging)
- * SEVERE (highest value)
- * WARNING
- * INFO
- * CONFIG
- * FINE
- * FINER
- * FINEST (lowest value).
- * ALL (log all messages)
- * </PRE>
- *
- * @param level
- * logging level.
- * @see #getT4LogLevel()
- * @see java.util.logging.Level
- */
- public void setT4LogLevel(String level) {
- super.setT4LogLevel(level);
- }
-
- /**
- * Returns the Type 4 log level associated with the current Type 4
- * connection. Possible log levels are described in java.util.logging.Level
- *
- * @return <code>java.util.logging.Level</code> associated with the
- * current Type 4 connection.
- * @see #setT4LogLevel(String)
- * @see java.util.logging.Level
- */
- public Level getT4LogLevel() {
- return super.getT4LogLevel();
- }
-
- /**
- * Sets the location of the file to which the logging is to be done.
- * Changing this location after making a connection has no effect; because
- * the driver reads this property before the connection is made. The default
- * name is a generated file name defined by the following pattern:
- * %h/t4jdbc%u.log where: "/" represents the local pathname separator "%h"
- * represents the value of the "user.home" system property. If %h is not
- * defined, then the behavior is undefined "%u" represents a unique number
- * to resolve conflicts
- *
- * @param t4LogFile
- * The Type 4 log file location. If the parameter is null, then
- * the T4LogFile is set to the global log file.
- * @see #getT4LogFile()
- * @see java.util.logging.Logger
- */
- public void setT4LogFile(String t4LogFile) {
- super.setT4LogFile(t4LogFile);
- }
-
- /**
- * Returns the Type 4 log file location associated with the current Type 4
- * connection.
- *
- * @return The Type 4 log file location.
- * @see #setT4LogFile(String)
- */
- public String getT4LogFile() {
- return super.getT4LogFile();
- }
-
- /**
- * Sets the table name to store and retrieve the CLOB data for all CLOB
- * columns accessed in the connection using the data source.
- *
- * @param clobTableName
- * The clob table name, which is in the format
- * <code><var>catalog_name.schema_name.clob_table_name</code></var>
- *
- * @since 1.1
- */
- public void setClobTableName(String clobTableName) throws SQLException {
- super.setClobTableName(clobTableName);
- }
-
- /**
- * Retrieves the table name used to store CBLOB data for all CLOB columns
- * accessed in the connection using the data source.
- *
- * @return the clob table name, which is in the format
- * <code><var>catalog_name.schema_name.clob_table_name</code></var>
- *
- * @since 1.1
- */
- public String getClobTableName() {
- return super.getClobTableName();
- }
-
- /**
- * Sets the table name to store and retrieve the BLOB data for all BLOB
- * columns accessed in the connection using the data source.
- *
- * @param blobTableName
- * the blob table name, which is in the format
- * <code><var>catalog_name.schema_name.blob_table_name</code></var>
- *
- * @since 1.1
- */
- public void setBlobTableName(String blobTableName) throws SQLException {
- super.setBlobTableName(blobTableName);
- }
-
- /**
- * Retrieves the table name used to store BLOB data for all BLOB columns
- * accessed in the connection using the data source.
- *
- * @return the blob table name which is of the format
- * <code><var>catalog_name.schema_name.blob_table_name</code></var>
- *
- * @since 1.1
- */
- public String getBlobTableName() {
- return super.getBlobTableName();
- }
-
- /**
- * Configures the number of data locators to be reserved by the Type 4
- * connection. Default value is 100.
- *
- * @param reserveDataLocator
- * Sets the value of the reserve data locator length for the
- * binding) feature.
- *
- * @since 1.1
- */
- public void setReserveDataLocator(String reserveDataLocator) {
- super.setReserveDataLocator(reserveDataLocator);
- }
-
- /**
- * Configures the number of data locators to be reserved by the Type 4
- * connection. Default value is 100.
- *
- * @param reserveDataLocatorLen
- * Sets the value of the reserve data locator length for the Type
- * 4 connection.
- *
- * @since 1.1
- */
- public void setReserveDataLocator(long reserveDataLocatorLen) {
- super.setReserveDataLocator(reserveDataLocatorLen);
- }
-
- /**
- * Returns the value of the reserve data locator length.
- *
- * @return The value of the reserved data locator length.
- *
- * @since 1.1
- */
- public long getReserveDataLocator() {
- return super.getReserveDataLocator();
- }
-
- /**
- * @return Returns the rounding mode set for the driver as an Integer value
- * with one of the values:
- *
- * <PRE>
- * static int ROUND_CEILING
- * Rounding mode to round toward positive infinity.
- * static int ROUND_DOWN
- * Rounding mode to round toward zero.
- * static int ROUND_FLOOR
- * Rounding mode to round toward negative infinity.
- * static int ROUND_HALF_DOWN
- * Rounding mode to round toward "nearest neighbor" unless both
- * neighbors are equidistant, in which case round down.
- * static int ROUND_HALF_EVEN
- * Rounding mode to round toward the "nearest neighbor" unless
- * both neighbors are equidistant, in which case, round towards the even neighbor.
- * static int ROUND_HALF_UP
- * Rounding mode to round toward "nearest neighbor" unless both
- * neighbors are equidistant, in which case round up.
- * static int ROUND_UNNECESSARY
- * Rounding mode to assert that the requested operation has an exact
- * result; hence no rounding is necessary.
- * static int ROUND_UP
- * Rounding mode to round away from zero.
- * </PRE>
- */
- public int getRoundingMode() {
- return super.getRoundingMode();
- }
-
- /**
- * Sets the round mode behaviour for the driver.
- *
- * @param roundMode
- * String value with one of the values:
- *
- * <PRE>
- * static int ROUND_CEILING
- * Rounding mode to round toward positive infinity.
- * static int ROUND_DOWN
- * Rounding mode to round toward zero.
- * static int ROUND_FLOOR
- * Rounding mode to round toward negative infinity.
- * static int ROUND_HALF_DOWN
- * Rounding mode to round toward "nearest neighbor" unless both
- * neighbors are equidistant, in which case round down.
- * static int ROUND_HALF_EVEN
- * Rounding mode to round toward the "nearest neighbor" unless
- * both neighbors are equidistant, in which case, round towards the even neighbor.
- * static int ROUND_HALF_UP
- * Rounding mode to round toward "nearest neighbor" unless both
- * neighbors are equidistant, in which case round up.
- * static int ROUND_UNNECESSARY
- * Rounding mode to assert that the requested operation has an exact
- * result; hence no rounding is necessary.
- * static int ROUND_UP
- * Rounding mode to round away from zero.
- * </PRE>
- *
- * The default value is ROUND_HALF_EVEN.
- */
- public void setRoundingMode(String roundMode) {
- super.setRoundingMode(roundMode);
- }
-
- /**
- * Sets the round mode behaviour for the driver.
- *
- * @param roundMode
- * Integer value with one of the values:
- *
- * <PRE>
- * static int ROUND_CEILING
- * Rounding mode to round toward positive infinity.
- * static int ROUND_DOWN
- * Rounding mode to round toward zero.
- * static int ROUND_FLOOR
- * Rounding mode to round toward negative infinity.
- * static int ROUND_HALF_DOWN
- * Rounding mode to round toward "nearest neighbor" unless both
- * neighbors are equidistant, in which case round down.
- * static int ROUND_HALF_EVEN
- * Rounding mode to round toward the "nearest neighbor" unless
- * both neighbors are equidistant, in which case, round towards the even neighbor.
- * static int ROUND_HALF_UP
- * Rounding mode to round toward "nearest neighbor" unless both
- * neighbors are equidistant, in which case round up.
- * static int ROUND_UNNECESSARY
- * Rounding mode to assert that the requested operation has an exact
- * result; hence no rounding is necessary.
- * static int ROUND_UP
- * Rounding mode to round away from zero.
- * </PRE>
- *
- * The default value is ROUND_HALF_EVEN.
- */
- public void setRoundingMode(int roundMode) {
- super.setRoundingMode(roundMode);
- }
-
- /**
- * Sets the value (in KB) for the size of the fetch buffer. This is used
- * when rows are fetched are performed from a ResultSet object after a
- * successful executeQuery() operation on a statement. The default size is
- * 4. Zero and negative values are treated as default values.
- *
- * @param fetchBufferSize
- * @see #getFetchBufferSize()
- * @see #setFetchBufferSize(String)
- */
- void setFetchBufferSize(short fetchBufferSize) {
- super.setFetchBufferSize(fetchBufferSize);
- }
-
- /**
- * Sets the value (in KB) for the size of the fetch buffer. This is used
- * when rows are fetched are performed from a ResultSet object after a
- * successful executeQuery() operation on a statement. The default size is
- * 4. Zero and negative values are treated as default values.
- *
- * @param fetchBufferSize
- * @see #getFetchBufferSize()
- * @see #setFetchBufferSize(short)
- */
- void setFetchBufferSize(String fetchBufferSize) {
- super.setFetchBufferSize(fetchBufferSize);
- }
-
- /**
- * Returns the size of the fetch buffer.
- *
- * @see #setFetchBufferSize(short)
- * @see #setFetchBufferSize(String)
- */
- short getFetchBufferSize() {
- return super.getFetchBufferSize();
- }
-
-} // end class T4DSProperties
-