Mercurial > dive4elements > river
comparison flys-backend/src/main/java/de/intevation/flys/backend/FLYSCredentials.java @ 3689:c938e568c4a2 2.9
merged flys-backend/2.9
author | Thomas Arendsen Hein <thomas@intevation.de> |
---|---|
date | Fri, 28 Sep 2012 12:14:44 +0200 |
parents | 76c75c8b9ee0 |
children | f63b39799d2d |
comparison
equal
deleted
inserted
replaced
3651:06a65baae494 | 3689:c938e568c4a2 |
---|---|
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.BedHeightEpoch; | |
9 import de.intevation.flys.model.BedHeightEpochValue; | |
10 import de.intevation.flys.model.BedHeightSingle; | |
11 import de.intevation.flys.model.BedHeightSingleValue; | |
12 import de.intevation.flys.model.BedHeightType; | |
13 import de.intevation.flys.model.Building; | |
14 import de.intevation.flys.model.Catchment; | |
15 import de.intevation.flys.model.CrossSection; | |
16 import de.intevation.flys.model.CrossSectionLine; | |
17 import de.intevation.flys.model.CrossSectionPoint; | |
18 import de.intevation.flys.model.CrossSectionTrack; | |
19 import de.intevation.flys.model.DGM; | |
20 import de.intevation.flys.model.Depth; | |
21 import de.intevation.flys.model.DischargeTable; | |
22 import de.intevation.flys.model.DischargeTableValue; | |
23 import de.intevation.flys.model.DischargeZone; | |
24 import de.intevation.flys.model.Edge; | |
25 import de.intevation.flys.model.ElevationModel; | |
26 import de.intevation.flys.model.Fixpoint; | |
27 import de.intevation.flys.model.Floodmaps; | |
28 import de.intevation.flys.model.Floodplain; | |
29 import de.intevation.flys.model.FlowVelocityMeasurement; | |
30 import de.intevation.flys.model.FlowVelocityMeasurementValue; | |
31 import de.intevation.flys.model.FlowVelocityModel; | |
32 import de.intevation.flys.model.FlowVelocityModelValue; | |
33 import de.intevation.flys.model.Gauge; | |
34 import de.intevation.flys.model.GaugeLocation; | |
35 import de.intevation.flys.model.GrainFraction; | |
36 import de.intevation.flys.model.HYK; | |
37 import de.intevation.flys.model.HYKEntry; | |
38 import de.intevation.flys.model.HYKFlowZone; | |
39 import de.intevation.flys.model.HYKFlowZoneType; | |
40 import de.intevation.flys.model.HYKFormation; | |
41 import de.intevation.flys.model.Hws; | |
42 import de.intevation.flys.model.HydrBoundary; | |
43 import de.intevation.flys.model.HydrBoundaryPoly; | |
44 import de.intevation.flys.model.Line; | |
45 import de.intevation.flys.model.LocationSystem; | |
46 import de.intevation.flys.model.MainValue; | |
47 import de.intevation.flys.model.MainValueType; | |
48 import de.intevation.flys.model.MorphologicalWidth; | |
49 import de.intevation.flys.model.MorphologicalWidthValue; | |
50 import de.intevation.flys.model.NamedMainValue; | |
51 import de.intevation.flys.model.Position; | |
52 import de.intevation.flys.model.Range; | |
53 import de.intevation.flys.model.River; | |
54 import de.intevation.flys.model.RiverAxis; | |
55 import de.intevation.flys.model.RiverAxisKm; | |
56 import de.intevation.flys.model.SQRelation; | |
57 import de.intevation.flys.model.SQRelationValue; | |
58 import de.intevation.flys.model.SedimentDensity; | |
59 import de.intevation.flys.model.SedimentDensityValue; | |
60 import de.intevation.flys.model.SedimentYield; | |
61 import de.intevation.flys.model.SedimentYieldValue; | |
62 import de.intevation.flys.model.TimeInterval; | |
63 import de.intevation.flys.model.Unit; | |
64 import de.intevation.flys.model.Waterlevel; | |
65 import de.intevation.flys.model.WaterlevelDifference; | |
66 import de.intevation.flys.model.WaterlevelDifferenceColumn; | |
67 import de.intevation.flys.model.WaterlevelDifferenceValue; | |
68 import de.intevation.flys.model.WaterlevelQRange; | |
69 import de.intevation.flys.model.WaterlevelValue; | |
70 import de.intevation.flys.model.Wst; | |
71 import de.intevation.flys.model.WstColumn; | |
72 import de.intevation.flys.model.WstColumnQRange; | |
73 import de.intevation.flys.model.WstColumnValue; | |
74 import de.intevation.flys.model.WstQRange; | |
75 | |
76 public class FLYSCredentials | |
77 extends Credentials | |
78 { | |
79 public static final String XPATH_USER = | |
80 "/artifact-database/backend-database/user/text()"; | |
81 | |
82 public static final String XPATH_PASSWORD = | |
83 "/artifact-database/backend-database/password/text()"; | |
84 | |
85 public static final String XPATH_DIALECT = | |
86 "/artifact-database/backend-database/dialect/text()"; | |
87 | |
88 public static final String XPATH_DRIVER = | |
89 "/artifact-database/backend-database/driver/text()"; | |
90 | |
91 public static final String XPATH_URL = | |
92 "/artifact-database/backend-database/url/text()"; | |
93 | |
94 public static final String DEFAULT_USER = | |
95 System.getProperty("flys.backend.user", "flys"); | |
96 | |
97 public static final String DEFAULT_PASSWORD = | |
98 System.getProperty("flys.backend.password", "flys"); | |
99 | |
100 public static final String DEFAULT_DIALECT = | |
101 System.getProperty( | |
102 "flys.backend.dialect", | |
103 "org.hibernate.dialect.PostgreSQLDialect"); | |
104 | |
105 public static final String DEFAULT_DRIVER = | |
106 System.getProperty( | |
107 "flys.backend.driver", | |
108 "org.postgresql.Driver"); | |
109 | |
110 public static final String DEFAULT_URL = | |
111 System.getProperty( | |
112 "flys.backend.url", | |
113 "jdbc:postgresql://localhost:5432/flys"); | |
114 | |
115 public static final Class [] CLASSES = { | |
116 Annotation.class, | |
117 AnnotationType.class, | |
118 Attribute.class, | |
119 BedHeightEpoch.class, | |
120 BedHeightEpochValue.class, | |
121 BedHeightSingle.class, | |
122 BedHeightSingleValue.class, | |
123 BedHeightType.class, | |
124 Building.class, | |
125 Catchment.class, | |
126 CrossSection.class, | |
127 CrossSectionLine.class, | |
128 CrossSectionPoint.class, | |
129 CrossSectionTrack.class, | |
130 Depth.class, | |
131 DGM.class, | |
132 DischargeTable.class, | |
133 DischargeTableValue.class, | |
134 DischargeZone.class, | |
135 Edge.class, | |
136 ElevationModel.class, | |
137 Fixpoint.class, | |
138 Floodplain.class, | |
139 Floodmaps.class, | |
140 FlowVelocityMeasurement.class, | |
141 FlowVelocityMeasurementValue.class, | |
142 FlowVelocityModel.class, | |
143 FlowVelocityModelValue.class, | |
144 Gauge.class, | |
145 GaugeLocation.class, | |
146 GrainFraction.class, | |
147 Hws.class, | |
148 HydrBoundary.class, | |
149 HydrBoundaryPoly.class, | |
150 HYK.class, | |
151 HYKEntry.class, | |
152 HYKFormation.class, | |
153 HYKFlowZoneType.class, | |
154 HYKFlowZone.class, | |
155 Line.class, | |
156 LocationSystem.class, | |
157 MainValueType.class, | |
158 MorphologicalWidth.class, | |
159 MorphologicalWidthValue.class, | |
160 NamedMainValue.class, | |
161 MainValue.class, | |
162 Position.class, | |
163 Range.class, | |
164 River.class, | |
165 RiverAxis.class, | |
166 RiverAxisKm.class, | |
167 SedimentDensity.class, | |
168 SedimentDensityValue.class, | |
169 SedimentYield.class, | |
170 SedimentYieldValue.class, | |
171 SQRelation.class, | |
172 SQRelationValue.class, | |
173 TimeInterval.class, | |
174 Unit.class, | |
175 Waterlevel.class, | |
176 WaterlevelDifference.class, | |
177 WaterlevelDifferenceColumn.class, | |
178 WaterlevelDifferenceValue.class, | |
179 WaterlevelQRange.class, | |
180 WaterlevelValue.class, | |
181 WstColumn.class, | |
182 WstColumnQRange.class, | |
183 WstColumnValue.class, | |
184 Wst.class, | |
185 WstQRange.class | |
186 }; | |
187 | |
188 public FLYSCredentials() { | |
189 } | |
190 | |
191 public FLYSCredentials( | |
192 String user, | |
193 String password, | |
194 String dialect, | |
195 String driver, | |
196 String url | |
197 ) { | |
198 super(user, password, dialect, driver, url, CLASSES); | |
199 } | |
200 | |
201 private static Credentials instance; | |
202 | |
203 public static synchronized Credentials getInstance() { | |
204 if (instance == null) { | |
205 String user = | |
206 Config.getStringXPath(XPATH_USER, DEFAULT_USER); | |
207 String password = | |
208 Config.getStringXPath(XPATH_PASSWORD, DEFAULT_PASSWORD); | |
209 String dialect = | |
210 Config.getStringXPath(XPATH_DIALECT, DEFAULT_DIALECT); | |
211 String driver = | |
212 Config.getStringXPath(XPATH_DRIVER, DEFAULT_DRIVER); | |
213 String url = | |
214 Config.getStringXPath(XPATH_URL, DEFAULT_URL); | |
215 | |
216 instance = new FLYSCredentials( | |
217 user, password, dialect, driver, url); | |
218 } | |
219 return instance; | |
220 } | |
221 | |
222 public static Credentials getDefault() { | |
223 return new FLYSCredentials( | |
224 DEFAULT_USER, | |
225 DEFAULT_PASSWORD, | |
226 DEFAULT_DIALECT, | |
227 DEFAULT_DRIVER, | |
228 DEFAULT_URL); | |
229 } | |
230 } | |
231 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |