comparison flys-backend/src/main/java/org/dive4elements/river/backend/FLYSCredentials.java @ 5828:dfb26b03b179

Moved directories to org.dive4elements.river
author Sascha L. Teichmann <teichmann@intevation.de>
date Thu, 25 Apr 2013 11:53:11 +0200
parents flys-backend/src/main/java/de/intevation/flys/backend/FLYSCredentials.java@38713f32a785
children 18619c1e7c2a
comparison
equal deleted inserted replaced
5827:e308d4ecd35a 5828:dfb26b03b179
1 package de.intevation.flys.backend;
2
3 import de.intevation.artifacts.common.utils.Config;
4
5 import de.intevation.flys.model.Annotation;
6 import de.intevation.flys.model.AnnotationType;
7 import de.intevation.flys.model.Attribute;
8 import de.intevation.flys.model.AxisKind;
9 import de.intevation.flys.model.BedHeightEpoch;
10 import de.intevation.flys.model.BedHeightEpochValue;
11 import de.intevation.flys.model.BedHeightSingle;
12 import de.intevation.flys.model.BedHeightSingleValue;
13 import de.intevation.flys.model.BedHeightType;
14 import de.intevation.flys.model.Building;
15 import de.intevation.flys.model.BoundaryKind;
16 import de.intevation.flys.model.CrossSection;
17 import de.intevation.flys.model.CrossSectionLine;
18 import de.intevation.flys.model.CrossSectionPoint;
19 import de.intevation.flys.model.CrossSectionTrack;
20 import de.intevation.flys.model.CrossSectionTrackKind;
21 import de.intevation.flys.model.DGM;
22 import de.intevation.flys.model.Depth;
23 import de.intevation.flys.model.DischargeTable;
24 import de.intevation.flys.model.DischargeTableValue;
25 import de.intevation.flys.model.DischargeZone;
26 import de.intevation.flys.model.Edge;
27 import de.intevation.flys.model.ElevationModel;
28 import de.intevation.flys.model.FedState;
29 import de.intevation.flys.model.Fixpoint;
30 import de.intevation.flys.model.Floodmaps;
31 import de.intevation.flys.model.Floodmark;
32 import de.intevation.flys.model.Floodplain;
33 import de.intevation.flys.model.FloodplainKind;
34 import de.intevation.flys.model.FlowVelocityMeasurement;
35 import de.intevation.flys.model.FlowVelocityMeasurementValue;
36 import de.intevation.flys.model.FlowVelocityModel;
37 import de.intevation.flys.model.FlowVelocityModelValue;
38 import de.intevation.flys.model.Gauge;
39 import de.intevation.flys.model.GaugeLocation;
40 import de.intevation.flys.model.GrainFraction;
41 import de.intevation.flys.model.HWSKind;
42 import de.intevation.flys.model.HWSLine;
43 import de.intevation.flys.model.HWSPoint;
44 import de.intevation.flys.model.HYK;
45 import de.intevation.flys.model.HYKEntry;
46 import de.intevation.flys.model.HYKFlowZone;
47 import de.intevation.flys.model.HYKFlowZoneType;
48 import de.intevation.flys.model.HYKFormation;
49 import de.intevation.flys.model.HydrBoundary;
50 import de.intevation.flys.model.HydrBoundaryPoly;
51 import de.intevation.flys.model.Jetty;
52 import de.intevation.flys.model.LocationSystem;
53 import de.intevation.flys.model.MainValue;
54 import de.intevation.flys.model.MainValueType;
55 import de.intevation.flys.model.MeasurementStation;
56 import de.intevation.flys.model.MorphologicalWidth;
57 import de.intevation.flys.model.MorphologicalWidthValue;
58 import de.intevation.flys.model.NamedMainValue;
59 import de.intevation.flys.model.Position;
60 import de.intevation.flys.model.Range;
61 import de.intevation.flys.model.River;
62 import de.intevation.flys.model.RiverAxis;
63 import de.intevation.flys.model.RiverAxisKm;
64 import de.intevation.flys.model.SQRelation;
65 import de.intevation.flys.model.SQRelationValue;
66 import de.intevation.flys.model.SectieKind;
67 import de.intevation.flys.model.SobekKind;
68 import de.intevation.flys.model.SedimentDensity;
69 import de.intevation.flys.model.SedimentDensityValue;
70 import de.intevation.flys.model.SedimentYield;
71 import de.intevation.flys.model.SedimentYieldValue;
72 import de.intevation.flys.model.TimeInterval;
73 import de.intevation.flys.model.Unit;
74 import de.intevation.flys.model.Wst;
75 import de.intevation.flys.model.WstColumn;
76 import de.intevation.flys.model.WstColumnQRange;
77 import de.intevation.flys.model.WstColumnValue;
78 import de.intevation.flys.model.WstQRange;
79
80 public class FLYSCredentials
81 extends Credentials
82 {
83 public static final String XPATH_USER =
84 "/artifact-database/backend-database/user/text()";
85
86 public static final String XPATH_PASSWORD =
87 "/artifact-database/backend-database/password/text()";
88
89 public static final String XPATH_DIALECT =
90 "/artifact-database/backend-database/dialect/text()";
91
92 public static final String XPATH_DRIVER =
93 "/artifact-database/backend-database/driver/text()";
94
95 public static final String XPATH_URL =
96 "/artifact-database/backend-database/url/text()";
97
98 public static final String XPATH_CONNECTION_INIT_SQLS =
99 "/artifact-database/backend-database/connection-init-sqls/text()";
100
101 public static final String DEFAULT_USER =
102 System.getProperty("flys.backend.user", "flys");
103
104 public static final String DEFAULT_PASSWORD =
105 System.getProperty("flys.backend.password", "flys");
106
107 public static final String DEFAULT_DIALECT =
108 System.getProperty(
109 "flys.backend.dialect",
110 "org.hibernate.dialect.PostgreSQLDialect");
111
112 public static final String DEFAULT_DRIVER =
113 System.getProperty(
114 "flys.backend.driver",
115 "org.postgresql.Driver");
116
117 public static final String DEFAULT_URL =
118 System.getProperty(
119 "flys.backend.url",
120 "jdbc:postgresql://localhost:5432/flys");
121
122 public static final String DEFAULT_CONNECTION_INIT_SQLS =
123 System.getProperty(
124 "flys.backend.connection.init.sqls");
125
126 public static final Class [] CLASSES = {
127 Annotation.class,
128 AnnotationType.class,
129 Attribute.class,
130 AxisKind.class,
131 BedHeightEpoch.class,
132 BedHeightEpochValue.class,
133 BedHeightSingle.class,
134 BedHeightSingleValue.class,
135 BedHeightType.class,
136 Building.class,
137 BoundaryKind.class,
138 CrossSection.class,
139 CrossSectionLine.class,
140 CrossSectionPoint.class,
141 CrossSectionTrack.class,
142 CrossSectionTrackKind.class,
143 Depth.class,
144 DGM.class,
145 DischargeTable.class,
146 DischargeTableValue.class,
147 DischargeZone.class,
148 Edge.class,
149 ElevationModel.class,
150 FedState.class,
151 Fixpoint.class,
152 Floodmark.class,
153 Floodplain.class,
154 FloodplainKind.class,
155 Floodmaps.class,
156 FlowVelocityMeasurement.class,
157 FlowVelocityMeasurementValue.class,
158 FlowVelocityModel.class,
159 FlowVelocityModelValue.class,
160 Gauge.class,
161 GaugeLocation.class,
162 GrainFraction.class,
163 HWSKind.class,
164 HWSLine.class,
165 HWSPoint.class,
166 HydrBoundary.class,
167 HydrBoundaryPoly.class,
168 HYK.class,
169 HYKEntry.class,
170 HYKFormation.class,
171 HYKFlowZoneType.class,
172 HYKFlowZone.class,
173 Jetty.class,
174 LocationSystem.class,
175 MainValueType.class,
176 MeasurementStation.class,
177 MorphologicalWidth.class,
178 MorphologicalWidthValue.class,
179 NamedMainValue.class,
180 MainValue.class,
181 Position.class,
182 Range.class,
183 River.class,
184 RiverAxis.class,
185 RiverAxisKm.class,
186 SectieKind.class,
187 SobekKind.class,
188 SedimentDensity.class,
189 SedimentDensityValue.class,
190 SedimentYield.class,
191 SedimentYieldValue.class,
192 SQRelation.class,
193 SQRelationValue.class,
194 TimeInterval.class,
195 Unit.class,
196 WstColumn.class,
197 WstColumnQRange.class,
198 WstColumnValue.class,
199 Wst.class,
200 WstQRange.class
201 };
202
203 public FLYSCredentials() {
204 }
205
206 public FLYSCredentials(
207 String user,
208 String password,
209 String dialect,
210 String driver,
211 String url,
212 String connectionInitSqls
213 ) {
214 super(
215 user, password, dialect, driver, url, connectionInitSqls, CLASSES);
216 }
217
218 private static Credentials instance;
219
220 public static synchronized Credentials getInstance() {
221 if (instance == null) {
222 String user =
223 Config.getStringXPath(XPATH_USER, DEFAULT_USER);
224 String password =
225 Config.getStringXPath(XPATH_PASSWORD, DEFAULT_PASSWORD);
226 String dialect =
227 Config.getStringXPath(XPATH_DIALECT, DEFAULT_DIALECT);
228 String driver =
229 Config.getStringXPath(XPATH_DRIVER, DEFAULT_DRIVER);
230 String url =
231 Config.getStringXPath(XPATH_URL, DEFAULT_URL);
232 String connectionInitSqls =
233 Config.getStringXPath(
234 XPATH_CONNECTION_INIT_SQLS,
235 DEFAULT_CONNECTION_INIT_SQLS);
236
237 instance = new FLYSCredentials(
238 user, password, dialect, driver, url, connectionInitSqls);
239 }
240 return instance;
241 }
242
243 public static Credentials getDefault() {
244 return new FLYSCredentials(
245 DEFAULT_USER,
246 DEFAULT_PASSWORD,
247 DEFAULT_DIALECT,
248 DEFAULT_DRIVER,
249 DEFAULT_URL,
250 DEFAULT_CONNECTION_INIT_SQLS);
251 }
252 }
253 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org