Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

revert change to PGProperty.get() to keep the API consistent #2644

Merged
merged 1 commit into from Oct 19, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
5 changes: 3 additions & 2 deletions .github/workflows/matrix.js
Expand Up @@ -199,8 +199,9 @@ matrix.setNamePattern([
matrix.exclude(row => row.ssl.value === 'yes' && isLessThan(row.pg_version, '9.3'));
matrix.exclude(row => row.scram.value === 'yes' && isLessThan(row.pg_version, '10'));
matrix.exclude(row => row.replication.value === 'yes' && isLessThan(row.pg_version, '9.6'));
//org.postgresql.test.jdbc2.ArrayTest fails using simple mode on 8.4 with malformed Array literal
matrix.exclude({query_mode: {value: 'simple'}, pg_version: '8.4'});
//org.postgresql.test.jdbc2.ArrayTest fails using simple mode for versions less than 9.0 with malformed Array literal
matrix.exclude( row => row.query_mode == 'simple' && isLessThan(row.pg_version, '9.1'));
//matrix.exclude({query_mode: {value: 'simple'}, pg_version: '8.4'});
// Microsoft Java has no distribution for 8
matrix.exclude({java_distribution: 'microsoft', java_version: '8'});
matrix.exclude({gss: {value: 'yes'}, os: ['windows-latest', 'macos-latest', 'self-hosted']})
Expand Down
51 changes: 31 additions & 20 deletions pgjdbc/src/main/java/org/postgresql/PGProperty.java
Expand Up @@ -609,7 +609,7 @@ public enum PGProperty {
"The location of the client's SSL certificate"),

/**
* Classname of the SSL Factory to use (instance of {@code javax.net.ssl.SSLSocketFactory}).
* Classname of the SSL Factory to use (instance of {@link javax.net.ssl.SSLSocketFactory}).
*/
SSL_FACTORY(
"sslfactory",
Expand All @@ -627,17 +627,16 @@ public enum PGProperty {
"Argument forwarded to constructor of SSLSocketFactory class."),

/**
* Classname of the SSL HostnameVerifier to use (instance of {@code
* javax.net.ssl.HostnameVerifier}).
* Classname of the SSL HostnameVerifier to use (instance of {@link javax.net.ssl.HostnameVerifier}).
*/
SSL_HOSTNAME_VERIFIER(
"sslhostnameverifier",
null,
"A class, implementing javax.net.ssl.HostnameVerifier that can verify the server"),

/**
* File containing the SSL Key. Default will be the file {@code postgresql.pk8} in {@code
* $HOME/.postgresql} (*nix) or {@code %APPDATA%\postgresql} (windows).
* File containing the SSL Key. Default will be the file {@code postgresql.pk8} in {@code $HOME/.postgresql} (*nix)
* or {@code %APPDATA%\postgresql} (windows).
*/
SSL_KEY(
"sslkey",
Expand Down Expand Up @@ -667,7 +666,7 @@ public enum PGProperty {


/**
* The classname instantiating {@code javax.security.auth.callback.CallbackHandler} to use.
* The classname instantiating {@link javax.security.auth.callback.CallbackHandler} to use.
*/
SSL_PASSWORD_CALLBACK(
"sslpasswordcallback",
Expand Down Expand Up @@ -762,7 +761,7 @@ public enum PGProperty {
* Factory class to instantiate factories for XML processing.
* The default factory disables external entity processing.
* Legacy behavior with external entity processing can be enabled by specifying a value of LEGACY_INSECURE.
* Or specify a custom class that implements {@code org.postgresql.xml.PGXmlFactoryFactory}.
* Or specify a custom class that implements {@link org.postgresql.xml.PGXmlFactoryFactory}.
*/
XML_FACTORY_FACTORY(
"xmlFactoryFactory",
Expand Down Expand Up @@ -851,7 +850,7 @@ public String getDescription() {
}

/**
* Returns the value of the connection parameters according to the given {@code Properties} or the
* Returns the value of the connection parameter from the given {@link Properties} or the
* default value.
*
* @param properties properties to take actual value from
Expand All @@ -862,17 +861,29 @@ public String getDescription() {
}

/**
* Returns the value of the connection parameters according to the given {@code Properties}
*
* Returns the value of the connection parameter from the given {@link Properties} or the
* default value
* @deprecated use {@link #getOrDefault(Properties)} instead
* @param properties properties to take actual value from
* @return evaluated value for this connection parameter or null
*/
@Deprecated
public @Nullable String get(Properties properties) {
return getOrDefault(properties);
}

/**
* Returns the value of the connection parameter from the given {@link Properties} or null if there
* is no default value
* @param properties properties object to get value from
* @return evaluated value for this connection parameter
*/
public @Nullable String getOrNull(Properties properties) {
return properties.getProperty(name);
}

/**
* Set the value for this connection parameter in the given {@code Properties}.
* Set the value for this connection parameter in the given {@link Properties}.
*
* @param properties properties in which the value should be set
* @param value value for this connection parameter
Expand All @@ -886,7 +897,7 @@ public void set(Properties properties, @Nullable String value) {
}

/**
* Return the boolean value for this connection parameter in the given {@code Properties}.
* Return the boolean value for this connection parameter in the given {@link Properties}.
*
* @param properties properties to take actual value from
* @return evaluated value for this connection parameter converted to boolean
Expand All @@ -896,7 +907,7 @@ public boolean getBoolean(Properties properties) {
}

/**
* Return the int value for this connection parameter in the given {@code Properties}. Prefer the
* Return the int value for this connection parameter in the given {@link Properties}. Prefer the
* use of {@link #getInt(Properties)} anywhere you can throw an {@link java.sql.SQLException}.
*
* @param properties properties to take actual value from
Expand All @@ -911,7 +922,7 @@ public int getIntNoCheck(Properties properties) {
}

/**
* Return the int value for this connection parameter in the given {@code Properties}.
* Return the int value for this connection parameter in the given {@link Properties}.
*
* @param properties properties to take actual value from
* @return evaluated value for this connection parameter converted to int
Expand All @@ -930,7 +941,7 @@ public int getInt(Properties properties) throws PSQLException {
}

/**
* Return the {@code Integer} value for this connection parameter in the given {@code Properties}.
* Return the {@link Integer} value for this connection parameter in the given {@link Properties}.
*
* @param properties properties to take actual value from
* @return evaluated value for this connection parameter converted to Integer or null
Expand All @@ -950,7 +961,7 @@ public int getInt(Properties properties) throws PSQLException {
}

/**
* Set the boolean value for this connection parameter in the given {@code Properties}.
* Set the boolean value for this connection parameter in the given {@link Properties}.
*
* @param properties properties in which the value should be set
* @param value boolean value for this connection parameter
Expand All @@ -960,7 +971,7 @@ public void set(Properties properties, boolean value) {
}

/**
* Set the int value for this connection parameter in the given {@code Properties}.
* Set the int value for this connection parameter in the given {@link Properties}.
*
* @param properties properties in which the value should be set
* @param value int value for this connection parameter
Expand All @@ -970,7 +981,7 @@ public void set(Properties properties, int value) {
}

/**
* Test whether this property is present in the given {@code Properties}.
* Test whether this property is present in the given {@link Properties}.
*
* @param properties set of properties to check current in
* @return true if the parameter is specified in the given properties
Expand All @@ -980,8 +991,8 @@ public boolean isPresent(Properties properties) {
}

/**
* Convert this connection parameter and the value read from the given {@code Properties} into a
* {@code DriverPropertyInfo}.
* Convert this connection parameter and the value read from the given {@link Properties} into a
* {@link DriverPropertyInfo}.
*
* @param properties properties to take actual value from
* @return a DriverPropertyInfo representing this connection parameter
Expand Down