annotate backend/src/main/java/org/dive4elements/river/backend/Credentials.java @ 8470:c5a7aae52396

Added a validation SQL query to database backends. Enable it by storing something like "SELECT 1 FROM DUAL" in config under /artifact-database/backend-database/validation-query/text() or /artifact-database/seddb-database/validation-query/text().
author Sascha L. Teichmann <teichmann@intevation.de>
date Wed, 12 Nov 2014 13:31:53 +0100
parents 4c3ccf2b0304
children 026f4c684ee5
rev   line source
5844
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
2 * Software engineering by Intevation GmbH
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
3 *
5992
4c3ccf2b0304 Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5844
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
5844
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
5992
4c3ccf2b0304 Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5844
diff changeset
6 * documentation coming with Dive4Elements River for details.
5844
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
7 */
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
8
5829
18619c1e7c2a Repaired internal references.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5828
diff changeset
9 package org.dive4elements.river.backend;
3333
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
10
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
11 public abstract class Credentials
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
12 {
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
13 protected String user;
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
14 protected String password;
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
15 protected String dialect;
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
16 protected String driver;
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
17 protected String url;
5193
fb9dcc68b9c2 Possible fix for flys/1202. Initial SQL statements can now be issued at connection creation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3333
diff changeset
18 protected String connectionInitSqls;
8470
c5a7aae52396 Added a validation SQL query to database backends.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5992
diff changeset
19 protected String validationQuery;
3333
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
20 protected Class [] classes;
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
21
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
22 public Credentials() {
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
23 }
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
24
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
25 public Credentials(
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
26 String user,
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
27 String password,
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
28 String dialect,
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
29 String driver,
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
30 String url,
5193
fb9dcc68b9c2 Possible fix for flys/1202. Initial SQL statements can now be issued at connection creation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3333
diff changeset
31 String connectionInitSqls,
8470
c5a7aae52396 Added a validation SQL query to database backends.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5992
diff changeset
32 String validationQuery,
3333
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
33 Class [] classes
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
34 ) {
5193
fb9dcc68b9c2 Possible fix for flys/1202. Initial SQL statements can now be issued at connection creation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3333
diff changeset
35 this.user = user;
fb9dcc68b9c2 Possible fix for flys/1202. Initial SQL statements can now be issued at connection creation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3333
diff changeset
36 this.password = password;
fb9dcc68b9c2 Possible fix for flys/1202. Initial SQL statements can now be issued at connection creation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3333
diff changeset
37 this.dialect = dialect;
fb9dcc68b9c2 Possible fix for flys/1202. Initial SQL statements can now be issued at connection creation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3333
diff changeset
38 this.driver = driver;
fb9dcc68b9c2 Possible fix for flys/1202. Initial SQL statements can now be issued at connection creation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3333
diff changeset
39 this.url = url;
fb9dcc68b9c2 Possible fix for flys/1202. Initial SQL statements can now be issued at connection creation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3333
diff changeset
40 this.connectionInitSqls = connectionInitSqls;
8470
c5a7aae52396 Added a validation SQL query to database backends.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5992
diff changeset
41 this.validationQuery = validationQuery;
5193
fb9dcc68b9c2 Possible fix for flys/1202. Initial SQL statements can now be issued at connection creation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3333
diff changeset
42 this.classes = classes;
3333
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
43 }
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
44
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
45 public String getUser() {
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
46 return user;
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
47 }
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
48
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
49 public void setUser(String user) {
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
50 this.user = user;
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
51 }
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
52
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
53 public String getPassword() {
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
54 return password;
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
55 }
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
56
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
57 public void setPassword(String password) {
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
58 this.password = password;
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
59 }
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
60
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
61 public String getDialect() {
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
62 return dialect;
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
63 }
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
64
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
65 public void setDialect(String dialect) {
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
66 this.dialect = dialect;
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
67 }
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
68
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
69 public String getDriver() {
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
70 return driver;
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
71 }
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
72
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
73 public void setDriver(String driver) {
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
74 this.driver = driver;
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
75 }
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
76
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
77 public String getUrl() {
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
78 return url;
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
79 }
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
80
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
81 public void setUrl(String url) {
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
82 this.url = url;
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
83 }
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
84
8470
c5a7aae52396 Added a validation SQL query to database backends.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5992
diff changeset
85 public String getValidationQuery() {
c5a7aae52396 Added a validation SQL query to database backends.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5992
diff changeset
86 return validationQuery;
c5a7aae52396 Added a validation SQL query to database backends.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5992
diff changeset
87 }
c5a7aae52396 Added a validation SQL query to database backends.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5992
diff changeset
88
c5a7aae52396 Added a validation SQL query to database backends.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5992
diff changeset
89 public void setValidationQuery(String validationQuery) {
c5a7aae52396 Added a validation SQL query to database backends.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5992
diff changeset
90 this.validationQuery = validationQuery;
c5a7aae52396 Added a validation SQL query to database backends.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5992
diff changeset
91 }
c5a7aae52396 Added a validation SQL query to database backends.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5992
diff changeset
92
5193
fb9dcc68b9c2 Possible fix for flys/1202. Initial SQL statements can now be issued at connection creation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3333
diff changeset
93 public String getConnectionInitSqls() {
fb9dcc68b9c2 Possible fix for flys/1202. Initial SQL statements can now be issued at connection creation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3333
diff changeset
94 return connectionInitSqls;
fb9dcc68b9c2 Possible fix for flys/1202. Initial SQL statements can now be issued at connection creation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3333
diff changeset
95 }
fb9dcc68b9c2 Possible fix for flys/1202. Initial SQL statements can now be issued at connection creation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3333
diff changeset
96
fb9dcc68b9c2 Possible fix for flys/1202. Initial SQL statements can now be issued at connection creation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3333
diff changeset
97 public void setConnectionInitSqls(String connectionInitSqls) {
fb9dcc68b9c2 Possible fix for flys/1202. Initial SQL statements can now be issued at connection creation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3333
diff changeset
98 this.connectionInitSqls = connectionInitSqls;
fb9dcc68b9c2 Possible fix for flys/1202. Initial SQL statements can now be issued at connection creation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3333
diff changeset
99 }
fb9dcc68b9c2 Possible fix for flys/1202. Initial SQL statements can now be issued at connection creation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3333
diff changeset
100
3333
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
101 public Class [] getClasses() {
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
102 return classes;
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
103 }
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
104
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
105 public void setClasses(Class [] classes) {
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
106 this.classes = classes;
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
107 }
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
108 }
76c75c8b9ee0 SedDB: Make access to SedDB configurable over conf.xml and provide access to sessions.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
109 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org