Skip to content

Commit 6384cfb

Browse files
committed
Support multi proxy
1 parent 91e9346 commit 6384cfb

File tree

1 file changed

+6
-8
lines changed

1 file changed

+6
-8
lines changed

src/main/java/org/cloudfoundry/community/servicebroker/postgresql/service/PostgreSQLDatabase.java

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,12 @@
55
import org.slf4j.LoggerFactory;
66
import org.springframework.beans.factory.annotation.Autowired;
77
import org.springframework.beans.factory.annotation.Value;
8-
import org.springframework.cloud.servicebroker.model.ServiceInstance;
98
import org.springframework.jdbc.core.JdbcTemplate;
10-
import org.springframework.jdbc.datasource.DriverManagerDataSource;
119
import org.springframework.jdbc.datasource.SingleConnectionDataSource;
1210
import org.springframework.stereotype.Component;
13-
1411
import javax.annotation.PostConstruct;
1512
import javax.validation.constraints.NotNull;
1613
import java.math.BigInteger;
17-
import java.net.URI;
1814
import java.security.SecureRandom;
1915
import java.sql.*;
2016
import java.util.Collections;
@@ -221,16 +217,18 @@ public String bindRoleToDatabase(String serviceInstanceId, String bindingId) thr
221217
//executeUpdate("ALTER DEFAULT PRIVILEGES FOR ROLE \""+serviceInstanceId+"\" IN SCHEMA public GRANT ALL ON SEQUENCES TO \"" + bindingId + "\"");
222218
//executeUpdate("ALTER DEFAULT PRIVILEGES FOR ROLE \""+serviceInstanceId+"\" IN SCHEMA public GRANT ALL ON FUNCTIONS TO \"" + bindingId + "\"");
223219

224-
225-
URI uri = new URI(jdbcTemplate.getDataSource().getConnection().getMetaData().getURL().replace("jdbc:", ""));
226-
220+
// Support multi-proxy
221+
String uri = jdbcTemplate.getDataSource().getConnection().getMetaData().getURL().replace("jdbc:postgresql://", "").split("/")[0];
222+
String dbURL = String.format("postgres://%s:%s@%s/%s",serviceInstanceId, findServiceInstance(serviceInstanceId).getCredentials(), uri , serviceInstanceId);
223+
/*
227224
String dbURL = String.format("postgres://%s:%s@%s:%d/%s",
228225
// hack for multibinding
229226
serviceInstanceId,
230227
findServiceInstance(serviceInstanceId).getCredentials(),
231228
//bindingId, passwd,
232229
uri.getHost(), uri.getPort() == -1 ? 5432 : uri.getPort(), serviceInstanceId);
233-
230+
231+
*/
234232
return dbURL;
235233
}
236234

0 commit comments

Comments
 (0)