public AbstractJdbc4Connection(String host, int port, String user, String database, Properties info, String url) throws SQLException { super(host, port, user, database, info, url); TypeInfo types = getTypeInfo(); if (haveMinimumServerVersion("8.3")) { types.addCoreType("xml", Oid.XML, java.sql.Types.SQLXML, "java.sql.SQLXML", Oid.XML_ARRAY); } _clientInfo = new Properties(); if (haveMinimumServerVersion("9.0")) { String appName = info.getProperty("ApplicationName"); if (appName == null) { appName = ""; } _clientInfo.put("ApplicationName", appName); } }
public void setClientInfo(Properties properties) throws SQLClientInfoException { if (properties == null || properties.size() == 0) return; Map<String, ClientInfoStatus> failures = new HashMap<String, ClientInfoStatus>(); Iterator<String> i = properties.stringPropertyNames().iterator(); while (i.hasNext()) { String name = i.next(); if (haveMinimumServerVersion("9.0") && "ApplicationName".equals(name)) { String value = properties.getProperty(name); setClientInfo(name, value); } else { failures.put(i.next(), ClientInfoStatus.REASON_UNKNOWN_PROPERTY); } } if (!failures.isEmpty()) throw new SQLClientInfoException(GT.tr("ClientInfo property not supported."), PSQLState.NOT_IMPLEMENTED.getState(), failures); }
public void setClientInfo(String name, String value) throws SQLClientInfoException { if (haveMinimumServerVersion("9.0") && "ApplicationName".equals(name)) { if (value == null) value = ""; try { StringBuffer sql = new StringBuffer("SET application_name = '"); Utils.appendEscapedLiteral(sql, value, getStandardConformingStrings()); sql.append("'"); execSQLUpdate(sql.toString()); } catch (SQLException sqle) { Map<String, ClientInfoStatus> failures = new HashMap<String, ClientInfoStatus>(); failures.put(name, ClientInfoStatus.REASON_UNKNOWN); throw new SQLClientInfoException(GT.tr("Failed to set ClientInfo property: {0}", "ApplicationName"), sqle.getSQLState(), failures, sqle); } _clientInfo.put(name, value); return; } Map<String, ClientInfoStatus> failures = new HashMap<String, ClientInfoStatus>(); failures.put(name, ClientInfoStatus.REASON_UNKNOWN_PROPERTY); throw new SQLClientInfoException(GT.tr("ClientInfo property not supported."), PSQLState.NOT_IMPLEMENTED.getState(), failures); }
public AbstractJdbc4Connection(String host, int port, String user, String database, Properties info, String url) throws SQLException { super(host, port, user, database, info, url); TypeInfo types = getTypeInfo(); if (haveMinimumServerVersion("8.3")) { types.addCoreType("xml", Oid.XML, java.sql.Types.SQLXML, "java.sql.SQLXML", Oid.XML_ARRAY); } _clientInfo = new Properties(); if (haveMinimumServerVersion("9.0")) { String appName = info.getProperty("ApplicationName"); if (appName == null) { appName = ""; } _clientInfo.put("ApplicationName", appName); } }
public AbstractJdbc4Connection(String host, int port, String user, String database, Properties info, String url) throws SQLException { super(host, port, user, database, info, url); TypeInfo types = getTypeInfo(); if (haveMinimumServerVersion("8.3")) { types.addCoreType("xml", Oid.XML, java.sql.Types.SQLXML, "java.sql.SQLXML", Oid.XML_ARRAY); } }
public void setClientInfo(Properties properties) throws SQLClientInfoException { if (properties == null || properties.size() == 0) return; Map<String, ClientInfoStatus> failures = new HashMap<String, ClientInfoStatus>(); Iterator<String> i = properties.stringPropertyNames().iterator(); while (i.hasNext()) { String name = i.next(); if (haveMinimumServerVersion("9.0") && "ApplicationName".equals(name)) { String value = properties.getProperty(name); setClientInfo(name, value); } else { failures.put(i.next(), ClientInfoStatus.REASON_UNKNOWN_PROPERTY); } } if (!failures.isEmpty()) throw new SQLClientInfoException(GT.tr("ClientInfo property not supported."), PSQLState.NOT_IMPLEMENTED.getState(), failures); }
public void setClientInfo(String name, String value) throws SQLClientInfoException { if (haveMinimumServerVersion("9.0") && "ApplicationName".equals(name)) { if (value == null) value = ""; try { StringBuffer sql = new StringBuffer("SET application_name = '"); Utils.appendEscapedLiteral(sql, value, getStandardConformingStrings()); sql.append("'"); execSQLUpdate(sql.toString()); } catch (SQLException sqle) { Map<String, ClientInfoStatus> failures = new HashMap<String, ClientInfoStatus>(); failures.put(name, ClientInfoStatus.REASON_UNKNOWN); throw new SQLClientInfoException(GT.tr("Failed to set ClientInfo property: {0}", "ApplicationName"), sqle.getSQLState(), failures, sqle); } _clientInfo.put(name, value); return; } Map<String, ClientInfoStatus> failures = new HashMap<String, ClientInfoStatus>(); failures.put(name, ClientInfoStatus.REASON_UNKNOWN_PROPERTY); throw new SQLClientInfoException(GT.tr("ClientInfo property not supported."), PSQLState.NOT_IMPLEMENTED.getState(), failures); }