@Override public boolean equals(Object obj) { if (obj instanceof Version) { return this.getVersionNum() == ((Version) obj).getVersionNum(); } return false; }
@Override public boolean haveMinimumServerVersion(Version ver) { return haveMinimumServerVersion(ver.getVersionNum()); }
private List<String[]> getParametersForStartup(String user, String database, Properties info) { List<String[]> paramList = new ArrayList<String[]>(); paramList.add(new String[]{"user", user}); paramList.add(new String[]{"database", database}); paramList.add(new String[]{"client_encoding", "UTF8"}); paramList.add(new String[]{"DateStyle", "ISO"}); paramList.add(new String[]{"TimeZone", createPostgresTimeZone()}); Version assumeVersion = ServerVersion.from(PGProperty.ASSUME_MIN_SERVER_VERSION.get(info)); if (assumeVersion.getVersionNum() >= ServerVersion.v9_0.getVersionNum()) { // User is explicitly telling us this is a 9.0+ server so set properties here: paramList.add(new String[]{"extra_float_digits", "3"}); String appName = PGProperty.APPLICATION_NAME.get(info); if (appName != null) { paramList.add(new String[]{"application_name", appName}); } } else { // User has not explicitly told us that this is a 9.0+ server so stick to old default: paramList.add(new String[]{"extra_float_digits", "2"}); } String replication = PGProperty.REPLICATION.get(info); if (replication != null && assumeVersion.getVersionNum() >= ServerVersion.v9_4.getVersionNum()) { paramList.add(new String[]{"replication", replication}); } String currentSchema = PGProperty.CURRENT_SCHEMA.get(info); if (currentSchema != null) { paramList.add(new String[]{"search_path", currentSchema}); } return paramList; }
public int getDBServerVersion() { return dbServerVersion.get().getVersionNum(); }