📄 connectionproperties.java
字号:
* DOCUMENT ME! * * @param property */ public void setUseHostsInPrivileges(boolean property) { this.useHostsInPrivileges.setValue(property); } /** * DOCUMENT ME! * * @return */ public boolean getUseHostsInPrivileges() { return this.useHostsInPrivileges.getValueAsBoolean(); } /** * DOCUMENT ME! * * @param property */ public void setUseNewIo(boolean property) { this.useNewIo.setValue(property); } /** * DOCUMENT ME! * * @return */ public boolean getUseNewIo() { return this.useNewIo.getValueAsBoolean(); } /** * DOCUMENT ME! * * @param property */ public void setUseSSL(boolean property) { this.useSSL.setValue(property); } /** * DOCUMENT ME! * * @return */ public boolean getUseSSL() { return this.useSSL.getValueAsBoolean(); } /** * DOCUMENT ME! * * @param flag The detectServerPreparedStmts to set. */ public void setUseServerPreparedStmts(boolean flag) { this.detectServerPreparedStmts.setValue(flag); } /** * DOCUMENT ME! * * @return */ public boolean getUseServerPreparedStmts() { return this.detectServerPreparedStmts.getValueAsBoolean(); } /** * DOCUMENT ME! * * @param flag The useSqlStateCodes to set. */ public void setUseSqlStateCodes(boolean flag) { this.useSqlStateCodes.setValue(flag); } /** * DOCUMENT ME! * * @return Returns the useSqlStateCodes state. */ public boolean getUseSqlStateCodes() { return this.useSqlStateCodes.getValueAsBoolean(); } /** * DOCUMENT ME! * * @param property */ public void setUseStreamLengthsInPrepStmts(boolean property) { this.useStreamLengthsInPrepStmts.setValue(property); } /** * DOCUMENT ME! * * @return */ public boolean getUseStreamLengthsInPrepStmts() { return this.useStreamLengthsInPrepStmts.getValueAsBoolean(); } /** * DOCUMENT ME! * * @param property */ public void setUseTimezone(boolean property) { this.useTimezone.setValue(property); } /** * DOCUMENT ME! * * @return */ public boolean getUseTimezone() { return this.useTimezone.getValueAsBoolean(); } /** * DOCUMENT ME! * * @param property */ public void setUseUltraDevWorkAround(boolean property) { this.useUltraDevWorkAround.setValue(property); } /** * DOCUMENT ME! * * @return */ public boolean getUseUltraDevWorkAround() { return this.useUltraDevWorkAround.getValueAsBoolean(); } /** * DOCUMENT ME! * * @param flag The useUnbufferedInput to set. */ public void setUseUnbufferedInput(boolean flag) { this.useUnbufferedInput.setValue(flag); } /** * DOCUMENT ME! * * @return Returns the useUnbufferedInput. */ public boolean getUseUnbufferedInput() { return this.useUnbufferedInput.getValueAsBoolean(); } /** * DOCUMENT ME! * * @param flag The useUnicode to set. */ public void setUseUnicode(boolean flag) { this.useUnicode.setValue(flag); this.useUnicodeAsBoolean = this.useUnicode.getValueAsBoolean(); } /** * DOCUMENT ME! * * @return */ public boolean getUseUnicode() { return this.useUnicodeAsBoolean; } /** * Sets whether or not the driver advises of proper usage. * * @param useUsageAdvisorFlag whether or not the driver advises of proper * usage. */ public void setUseUsageAdvisor(boolean useUsageAdvisorFlag) { this.useUsageAdvisor.setValue(useUsageAdvisorFlag); this.useUsageAdvisorAsBoolean = this.useUsageAdvisor.getValueAsBoolean(); } /** * Returns whether or not the driver advises of proper usage. * * @return the value of useUsageAdvisor */ public boolean getUseUsageAdvisor() { return this.useUsageAdvisorAsBoolean; } /** * Returns a description of the connection properties as an XML document. * * @return the connection properties as an XML document. * * @throws SQLException if an error occurs. */ public String exposeAsXml() throws SQLException { StringBuffer xmlBuf = new StringBuffer(); xmlBuf.append("<ConnectionProperties>"); int numPropertiesToSet = PROPERTY_LIST.size(); int numCategories = propertyCategories.length; Map propertyListByCategory = new HashMap(); for (int i = 0; i < numCategories; i++) { propertyListByCategory.put(propertyCategories[i], new Map[] { new TreeMap(), new TreeMap() }); } // // The following properties are not exposed as 'normal' properties, but they are // settable nonetheless, so we need to have them documented, make sure // that they sort 'first' as #1 and #2 in the category // StringConnectionProperty userProp = new StringConnectionProperty(NonRegisteringDriver.USER_PROPERTY_KEY, null, "The user to connect as", "all", CONNECTION_AND_AUTH_CATEGORY, Integer.MIN_VALUE + 1); StringConnectionProperty passwordProp = new StringConnectionProperty(NonRegisteringDriver.PASSWORD_PROPERTY_KEY, null, "The password to use when connecting", "all", CONNECTION_AND_AUTH_CATEGORY, Integer.MIN_VALUE + 2); Map[] connectionSortMaps = (Map[]) propertyListByCategory.get(CONNECTION_AND_AUTH_CATEGORY); connectionSortMaps[0].put(new Integer(userProp.getOrder()), userProp); connectionSortMaps[0].put(new Integer(passwordProp.getOrder()), passwordProp); try { for (int i = 0; i < numPropertiesToSet; i++) { java.lang.reflect.Field propertyField = (java.lang.reflect.Field) PROPERTY_LIST.get(i); ConnectionProperty propToGet = (ConnectionProperty) propertyField.get(this); Map[] sortMaps = (Map[]) propertyListByCategory.get(propToGet.getCategoryName()); int orderInCategory = propToGet.getOrder(); if (orderInCategory == Integer.MIN_VALUE) { sortMaps[1].put(propToGet.getPropertyName(), propToGet); } else { sortMaps[0].put(new Integer(orderInCategory), propToGet); } } for (int j = 0; j < numCategories; j++) { Map[] sortMaps = (Map[]) propertyListByCategory.get(propertyCategories[j]); Iterator orderedIter = sortMaps[0].values().iterator(); Iterator alphaIter = sortMaps[1].values().iterator(); xmlBuf.append("\n <PropertyCategory name=\""); xmlBuf.append(propertyCategories[j]); xmlBuf.append("\">"); while (orderedIter.hasNext()) { ConnectionProperty propToGet = (ConnectionProperty) orderedIter.next(); propToGet.syncDriverPropertyInfo(); xmlBuf.append("\n <Property name=\""); xmlBuf.append(propToGet.getPropertyName()); xmlBuf.append("\" required=\""); xmlBuf.append(propToGet.required ? "Yes" : "No"); xmlBuf.append("\" default=\""); if (propToGet.getDefaultValue() != null) { xmlBuf.append(propToGet.getDefaultValue()); } xmlBuf.append("\" sortOrder=\""); xmlBuf.append(propToGet.getOrder()); xmlBuf.append("\" since=\""); xmlBuf.append(propToGet.sinceVersion); xmlBuf.append("\">\n"); xmlBuf.append(" "); xmlBuf.append(propToGet.description); xmlBuf.append("\n </Property>"); } while (alphaIter.hasNext()) { ConnectionProperty propToGet = (ConnectionProperty) alphaIter.next(); propToGet.syncDriverPropertyInfo(); xmlBuf.append("\n <Property name=\""); xmlBuf.append(propToGet.getPropertyName()); xmlBuf.append("\" required=\""); xmlBuf.append(propToGet.required ? "Yes" : "No"); xmlBuf.append("\" default=\""); if (propToGet.getDefaultValue() != null) { xmlBuf.append(propToGet.getDefaultValue()); } xmlBuf.append("\" sortOrder=\"alpha\" since=\""); xmlBuf.append(propToGet.sinceVersion); xmlBuf.append("\">\n"); xmlBuf.append(" "); xmlBuf.append(propToGet.description); xmlBuf.append("\n </Property>"); } xmlBuf.append("\n </PropertyCategory>"); } } catch (IllegalAccessException iae) { throw new SQLException("Internal properties failure", SQLError.SQL_STATE_GENERAL_ERROR); } xmlBuf.append("\n</ConnectionProperties>"); return xmlBuf.toString(); } /** * DOCUMENT ME! * * @return */ protected String getEncoding() { return this.characterEncodingAsString; } /** * Exposes all ConnectionPropertyInfo instances as DriverPropertyInfo * * @param info the properties to load into these ConnectionPropertyInfo * instances * @param slotsToReserve the number of DPI slots to reserve for 'standard' * DPI properties (user, host, password, etc) * * @return a list of all ConnectionPropertyInfo instances, as * DriverPropertyInfo * * @throws SQLException if an error occurs */ protected static DriverPropertyInfo[] exposeAsDriverPropertyInfo( Properties info, int slotsToReserve) throws SQLException { return (new ConnectionProperties() { }).exposeAsDriverPropertyInfoInternal(info, slotsToReserve); } /** * DOCUMENT ME! * * @param property */ protected void setHighAvailability(boolean property) { this.autoReconnect.setValue(property); this.highAvailabilityAsBoolean = this.autoReconnect.getValueAsBoolean(); } /** * DOCUMENT ME! * * @return */ protected boolean getHighAvailability() { return this.highAvailabilityAsBoolean; }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -