]> git.argeo.org Git - lgpl/argeo-commons.git/blob - gis/runtime/org.argeo.gis.geotools/src/main/java/org/argeo/geotools/jdbc/PostgisDataStoreFactory.java
f7c850686358e12f7089df53a210f1e569db565c
[lgpl/argeo-commons.git] / gis / runtime / org.argeo.gis.geotools / src / main / java / org / argeo / geotools / jdbc / PostgisDataStoreFactory.java
1 package org.argeo.geotools.jdbc;
2
3 import java.io.IOException;
4 import java.util.HashMap;
5 import java.util.Map;
6
7 import javax.sql.DataSource;
8
9 import org.argeo.ArgeoException;
10 import org.geotools.data.DataStore;
11 import org.geotools.data.postgis.PostgisNGDataStoreFactory;
12
13 /**
14 * Simplified data store to avoid issues with Spring and OSGi when Springs scans
15 * for all available factory methods.
16 */
17 public class PostgisDataStoreFactory {
18 private PostgisNGDataStoreFactory wrappedFactory = new PostgisNGDataStoreFactory();
19
20 @SuppressWarnings({ "unchecked", "rawtypes" })
21 public DataStore createDataStore(DataSource dataSource) {
22 try {
23 Map params = new HashMap();
24 params.put(PostgisNGDataStoreFactory.DATASOURCE.key, dataSource);
25 return wrappedFactory.createDataStore(params);
26 } catch (IOException e) {
27 throw new ArgeoException("Cannot create PostGIS data store", e);
28 }
29 }
30 }