?? connectionproperties.java
字號:
private static final long serialVersionUID = -3004305481796850832L; public IntegerConnectionProperty(String propertyNameToSet, Object defaultValueToSet, String[] allowableValuesToSet, int lowerBoundToSet, int upperBoundToSet, String descriptionToSet, String sinceVersionToSet, String category, int orderInCategory) { super(propertyNameToSet, defaultValueToSet, allowableValuesToSet, lowerBoundToSet, upperBoundToSet, descriptionToSet, sinceVersionToSet, category, orderInCategory); } int multiplier = 1; IntegerConnectionProperty(String propertyNameToSet, int defaultValueToSet, int lowerBoundToSet, int upperBoundToSet, String descriptionToSet, String sinceVersionToSet, String category, int orderInCategory) { super(propertyNameToSet, new Integer(defaultValueToSet), null, lowerBoundToSet, upperBoundToSet, descriptionToSet, sinceVersionToSet, category, orderInCategory); } /** * DOCUMENT ME! * * @param propertyNameToSet * @param defaultValueToSet * @param descriptionToSet * @param sinceVersionToSet * DOCUMENT ME! */ IntegerConnectionProperty(String propertyNameToSet, int defaultValueToSet, String descriptionToSet, String sinceVersionToSet, String category, int orderInCategory) { this(propertyNameToSet, defaultValueToSet, 0, 0, descriptionToSet, sinceVersionToSet, category, orderInCategory); } /** * @see com.mysql.jdbc.ConnectionProperties.ConnectionProperty#getAllowableValues() */ String[] getAllowableValues() { return null; } /** * @see com.mysql.jdbc.ConnectionProperties.ConnectionProperty#getLowerBound() */ int getLowerBound() { return this.lowerBound; } /** * @see com.mysql.jdbc.ConnectionProperties.ConnectionProperty#getUpperBound() */ int getUpperBound() { return this.upperBound; } int getValueAsInt() { return ((Integer) this.valueAsObject).intValue(); } /** * @see com.mysql.jdbc.ConnectionProperties.ConnectionProperty#hasValueConstraints() */ boolean hasValueConstraints() { return false; } /** * @see com.mysql.jdbc.ConnectionProperties.ConnectionProperty#initializeFrom(java.lang.String) */ void initializeFrom(String extractedValue) throws SQLException { if (extractedValue != null) { try { // Parse decimals, too int intValue = Double.valueOf(extractedValue).intValue(); /* * if (isRangeBased()) { if ((intValue < getLowerBound()) || * (intValue > getUpperBound())) { throw new * SQLException("The connection property '" + * getPropertyName() + "' only accepts integer values in the * range of " + getLowerBound() + " - " + getUpperBound() + ", * the value '" + extractedValue + "' exceeds this range.", * SQLError.SQL_STATE_ILLEGAL_ARGUMENT); } } */ this.valueAsObject = new Integer(intValue * multiplier); } catch (NumberFormatException nfe) { throw SQLError.createSQLException("The connection property '" + getPropertyName() + "' only accepts integer values. The value '" + extractedValue + "' can not be converted to an integer.", SQLError.SQL_STATE_ILLEGAL_ARGUMENT); } } else { this.valueAsObject = this.defaultValue; } } /** * @see com.mysql.jdbc.ConnectionProperties.ConnectionProperty#isRangeBased() */ boolean isRangeBased() { return getUpperBound() != getLowerBound(); } void setValue(int valueFlag) { this.valueAsObject = new Integer(valueFlag); } } public class LongConnectionProperty extends IntegerConnectionProperty { private static final long serialVersionUID = 6068572984340480895L; LongConnectionProperty(String propertyNameToSet, long defaultValueToSet, long lowerBoundToSet, long upperBoundToSet, String descriptionToSet, String sinceVersionToSet, String category, int orderInCategory) { super(propertyNameToSet, new Long(defaultValueToSet), null, (int)lowerBoundToSet, (int)upperBoundToSet, descriptionToSet, sinceVersionToSet, category, orderInCategory); } LongConnectionProperty(String propertyNameToSet, long defaultValueToSet, String descriptionToSet, String sinceVersionToSet, String category, int orderInCategory) { this(propertyNameToSet, defaultValueToSet, 0, 0, descriptionToSet, sinceVersionToSet, category, orderInCategory); } void setValue(long value) { this.valueAsObject = new Long(value); } long getValueAsLong() { return ((Long) this.valueAsObject).longValue(); } void initializeFrom(String extractedValue) throws SQLException { if (extractedValue != null) { try { // Parse decimals, too long longValue = Double.valueOf(extractedValue).longValue(); this.valueAsObject = new Long(longValue); } catch (NumberFormatException nfe) { throw SQLError.createSQLException("The connection property '" + getPropertyName() + "' only accepts long integer values. The value '" + extractedValue + "' can not be converted to a long integer.", SQLError.SQL_STATE_ILLEGAL_ARGUMENT); } } else { this.valueAsObject = this.defaultValue; } } } class MemorySizeConnectionProperty extends IntegerConnectionProperty implements Serializable { private static final long serialVersionUID = 7351065128998572656L; MemorySizeConnectionProperty(String propertyNameToSet, int defaultValueToSet, int lowerBoundToSet, int upperBoundToSet, String descriptionToSet, String sinceVersionToSet, String category, int orderInCategory) { super(propertyNameToSet, defaultValueToSet, lowerBoundToSet, upperBoundToSet, descriptionToSet, sinceVersionToSet, category, orderInCategory); // TODO Auto-generated constructor stub } void initializeFrom(String extractedValue) throws SQLException { if (extractedValue != null) { if (extractedValue.endsWith("k") || extractedValue.endsWith("K") || extractedValue.endsWith("kb") || extractedValue.endsWith("Kb") || extractedValue.endsWith("kB")) { multiplier = 1024; int indexOfK = StringUtils.indexOfIgnoreCase( extractedValue, "k"); extractedValue = extractedValue.substring(0, indexOfK); } else if (extractedValue.endsWith("m") || extractedValue.endsWith("M") || extractedValue.endsWith("G") || extractedValue.endsWith("mb") || extractedValue.endsWith("Mb") || extractedValue.endsWith("mB")) { multiplier = 1024 * 1024; int indexOfM = StringUtils.indexOfIgnoreCase( extractedValue, "m"); extractedValue = extractedValue.substring(0, indexOfM); } else if (extractedValue.endsWith("g") || extractedValue.endsWith("G") || extractedValue.endsWith("gb") || extractedValue.endsWith("Gb") || extractedValue.endsWith("gB")) { multiplier = 1024 * 1024 * 1024; int indexOfG = StringUtils.indexOfIgnoreCase( extractedValue, "g"); extractedValue = extractedValue.substring(0, indexOfG); } } super.initializeFrom(extractedValue); } void setValue(String value) throws SQLException { initializeFrom(value); } } class StringConnectionProperty extends ConnectionProperty implements Serializable { private static final long serialVersionUID = 5432127962785948272L; StringConnectionProperty(String propertyNameToSet, String defaultValueToSet, String descriptionToSet, String sinceVersionToSet, String category, int orderInCategory) { this(propertyNameToSet, defaultValueToSet, null, descriptionToSet, sinceVersionToSet, category, orderInCategory); } /** * DOCUMENT ME! * * @param propertyNameToSet * @param defaultValueToSet * @param allowableValuesToSet * @param descriptionToSet * @param sinceVersionToSet * DOCUMENT ME! */ StringConnectionProperty(String propertyNameToSet, String defaultValueToSet, String[] allowableValuesToSet, String descriptionToSet, String sinceVersionToSet, String category, int orderInCategory) { super(propertyNameToSet, defaultValueToSet, allowableValuesToSet, 0, 0, descriptionToSet, sinceVersionToSet, category, orderInCategory); } String getValueAsString() { return (String) this.valueAsObject; } /** * @see com.mysql.jdbc.ConnectionProperties.ConnectionProperty#hasValueConstraints() */ boolean hasValueConstraints() { return (this.allowableValues != null) && (this.allowableValues.length > 0); } /** * @see com.mysql.jdbc.ConnectionProperties.ConnectionProperty#initializeFrom(java.util.Properties) */ void initializeFrom(String extractedValue) throws SQLException { if (extractedValue != null) { validateStringValues(extractedValue); this.valueAsObject = extractedValue; } else { this.valueAsObject = this.defaultValue; } } /** * @see com.mysql.jdbc.ConnectionProperties.ConnectionProperty#isRangeBased() */ boolean isRangeBased() { return false; } void setValue(String valueFlag) { this.valueAsObject = valueFlag; } } private static final String CONNECTION_AND_AUTH_CATEGORY = "Connection/Authentication"; private static final String NETWORK_CATEGORY = "Networking"; private static final String DEBUGING_PROFILING_CATEGORY = "Debuging/Profiling"; private static final String HA_CATEGORY = "High Availability and Clustering"; private static final String MISC_CATEGORY = "Miscellaneous"; private static final String PERFORMANCE_CATEGORY = "Performance Extensions"; private static final String SECURITY_CATEGORY = "Security"; private static final String[] PROPERTY_CATEGORIES = new String[] { CONNECTION_AND_AUTH_CATEGORY, NETWORK_CATEGORY, HA_CATEGORY, SECURITY_CATEGORY, PERFORMANCE_CATEGORY, DEBUGING_PROFILING_CATEGORY, MISC_CATEGORY }; private static final ArrayList PROPERTY_LIST = new ArrayList(); private static final String STANDARD_LOGGER_NAME = StandardLogger.class.getName(); protected static final String ZERO_DATETIME_BEHAVIOR_CONVERT_TO_NULL = "convertToNull"; protected static final String ZERO_DATETIME_BEHAVIOR_EXCEPTION = "exception"; protected static final String ZERO_DATETIME_BEHAVIOR_ROUND = "round"; static {
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -