0
|
1 package global;
|
|
2
|
|
3 import java.sql.Connection;
|
|
4 import java.sql.DriverManager;
|
|
5 import java.sql.SQLException;
|
|
6 import java.util.Collection;
|
|
7 import java.util.LinkedHashMap;
|
|
8 import java.util.Map;
|
|
9 import java.util.Properties;
|
|
10
|
|
11
|
|
12 public final class Server {
|
|
13
|
|
14 private static final Map<String,Server> map = new LinkedHashMap<String,Server>();
|
|
15
|
|
16 // call from beanshell
|
|
17 public static void add(String name,String dbUrl,String dbUser,String dbPassword,String host) throws ClassNotFoundException {
|
|
18 map.put( name, new Server(name,dbUrl,dbUser,dbPassword,host) );
|
|
19 }
|
|
20
|
|
21 static Collection<Server> getServers() {
|
|
22 return map.values();
|
|
23 }
|
|
24
|
|
25 public static Server getServer(String name) {
|
|
26 return map.get(name);
|
|
27 }
|
|
28
|
|
29 public final String name;
|
|
30 private final String dbUrl;
|
|
31 private final Properties dbProperties = new Properties();
|
|
32 public final String host;
|
|
33
|
|
34 private Server(String name,String dbUrl,String dbUser,String dbPassword,String host)
|
|
35 throws ClassNotFoundException
|
|
36 {
|
|
37 this.name = name;
|
|
38 Class.forName("org.postgresql.Driver");
|
|
39 this.dbUrl = dbUrl;
|
|
40 dbProperties.setProperty("user",dbUser);
|
|
41 dbProperties.setProperty("password",dbPassword);
|
|
42 this.host = host;
|
|
43 }
|
|
44
|
|
45 Connection getConnection()
|
|
46 throws SQLException
|
|
47 {
|
|
48 return DriverManager.getConnection(dbUrl,dbProperties);
|
|
49 }
|
|
50
|
|
51 }
|