comparison flys-backend/src/main/java/de/intevation/flys/backend/FLYSCredentials.java @ 5379:61bf64b102bc mapgenfix

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

http://dive4elements.wald.intevation.org