6 |
import java.util.regex.Pattern; |
import java.util.regex.Pattern; |
7 |
|
|
8 |
import org.apache.commons.lang.ArrayUtils; |
import org.apache.commons.lang.ArrayUtils; |
9 |
|
import org.apache.commons.lang.StringUtils; |
10 |
import org.geotools.data.postgis.PostgisNGDataStoreFactory; |
import org.geotools.data.postgis.PostgisNGDataStoreFactory; |
11 |
import org.geotools.jdbc.JDBCDataStore; |
import org.geotools.jdbc.JDBCDataStore; |
12 |
import org.geotools.jdbc.JDBCDataStoreFactory; |
import org.geotools.jdbc.JDBCDataStoreFactory; |
13 |
|
import org.jfree.util.Log; |
14 |
|
|
15 |
import schmitzm.swing.BooleanInputOption; |
import schmitzm.swing.BooleanInputOption; |
16 |
import schmitzm.swing.ManualInputOption; |
import schmitzm.swing.ManualInputOption; |
238 |
|
|
239 |
if (propString == null || propString.isEmpty()) |
if (propString == null || propString.isEmpty()) |
240 |
throw new IllegalArgumentException("parameter to parse was empty"); |
throw new IllegalArgumentException("parameter to parse was empty"); |
241 |
|
try { |
242 |
|
|
243 |
String[] split = propString.split(Pattern.quote(DELIMITER)); |
String[] split = propString.split(Pattern.quote(DELIMITER)); |
244 |
|
|
|
// BaseUrl |
|
|
try { |
|
245 |
DbType dbt = DbType.valueOf(split[0]); |
DbType dbt = DbType.valueOf(split[0]); |
246 |
|
|
247 |
DbServerSettings dbServer = new DbServerSettings(dbt); |
DbServerSettings dbServer = new DbServerSettings(dbt); |
248 |
|
|
249 |
dbServer.setHost(split[1]); |
dbServer.setHost(split[1]); |
250 |
dbServer.setPort(java.lang.Integer.valueOf(split[2])); |
dbServer.setPort(java.lang.Integer.valueOf(split[2])); |
251 |
dbServer.setUsername(split[3]); |
dbServer.setUsername(StringUtils.stripToNull(split[3])); |
252 |
dbServer.setPassword(split[4]); |
dbServer.setPassword(split[4].equals("null") ? null : split[4]); |
253 |
dbServer.setDatabase(split[5]); |
dbServer.setDatabase(split[5]); |
254 |
dbServer.setExposePrimaryKey(Boolean.valueOf(split[6])); |
dbServer.setExposePrimaryKey(Boolean.valueOf(split[6])); |
255 |
dbServer.setSchema(split[7]); |
dbServer.setSchema(split[7]); |
256 |
|
|
257 |
return dbServer; |
return dbServer; |
258 |
} catch (Exception e) { |
} catch (Exception e) { |
259 |
throw new IllegalArgumentException(e); |
Log.warn("couldn't parse " + propString); |
260 |
|
return null; |
261 |
} |
} |
|
|
|
262 |
} |
} |
263 |
|
|
264 |
@Override |
@Override |
272 |
|
|
273 |
s.append(getHost()); |
s.append(getHost()); |
274 |
|
|
275 |
if (getPort() != 5432) { |
if (getPort() != null && getPort() != 5432) { |
276 |
s.append(":" + getPort()); |
s.append(":" + getPort()); |
277 |
} |
} |
278 |
|
|
334 |
dbServer.getUsername()); |
dbServer.getUsername()); |
335 |
|
|
336 |
PasswordViewable passwdInput = new ManualInputOption.PasswordViewable( |
PasswordViewable passwdInput = new ManualInputOption.PasswordViewable( |
337 |
"Passwort", true, dbServer.getPassword()); |
"Password", true, dbServer.getPassword()); |
338 |
|
|
339 |
BooleanInputOption exposePkInput = new BooleanInputOption( |
BooleanInputOption exposePkInput = new BooleanInputOption( |
340 |
"Expose primary keys", dbServer.getExposePrimaryKey()); |
"Expose primary keys", dbServer.getExposePrimaryKey()); |
361 |
} |
} |
362 |
|
|
363 |
return dbServer; |
return dbServer; |
364 |
|
|
365 |
} |
} |
366 |
} |
} |