Revision 44058 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.db/org.gvsig.fmap.dal.db.jdbc/src/main/java/org/gvsig/fmap/dal/store/jdbc2/spi/operations/FetchFeatureProviderByReferenceOperation.java
FetchFeatureProviderByReferenceOperation.java | ||
---|---|---|
15 | 15 |
import org.gvsig.fmap.dal.store.jdbc.exception.JDBCSQLException; |
16 | 16 |
import org.gvsig.fmap.dal.store.jdbc2.JDBCHelper; |
17 | 17 |
import org.gvsig.fmap.dal.store.jdbc2.JDBCUtils; |
18 |
import org.gvsig.fmap.dal.store.jdbc2.OperationsFactory.TableReference; |
|
18 | 19 |
import org.gvsig.fmap.dal.store.jdbc2.spi.JDBCSQLBuilderBase; |
19 | 20 |
import org.gvsig.fmap.geom.DataTypes; |
20 | 21 |
|
... | ... | |
22 | 23 |
public class FetchFeatureProviderByReferenceOperation extends AbstractConnectionOperation { |
23 | 24 |
private final FeatureType featureType; |
24 | 25 |
private final FeatureReferenceProviderServices reference; |
25 |
private final String schema; |
|
26 |
private final String table; |
|
27 |
private final String database; |
|
26 |
private final TableReference table; |
|
28 | 27 |
|
29 | 28 |
public FetchFeatureProviderByReferenceOperation( |
30 | 29 |
JDBCHelper helper, |
31 | 30 |
FeatureReferenceProviderServices reference, |
32 | 31 |
FeatureType featureType, |
33 |
String database, |
|
34 |
String schema, |
|
35 |
String table |
|
32 |
TableReference table |
|
36 | 33 |
) { |
37 | 34 |
super(helper); |
38 | 35 |
this.reference = reference; |
39 |
this.database = database; |
|
40 |
this.schema = schema; |
|
41 | 36 |
this.table = table; |
42 | 37 |
this.featureType = featureType; |
43 | 38 |
} |
... | ... | |
48 | 43 |
conn, |
49 | 44 |
reference, |
50 | 45 |
featureType, |
51 |
database, |
|
52 |
schema, |
|
53 | 46 |
table |
54 | 47 |
); |
55 | 48 |
return feature; |
... | ... | |
60 | 53 |
FeatureReferenceProviderServices reference, |
61 | 54 |
// FeatureType storeType, |
62 | 55 |
FeatureType featureType, |
63 |
String database, |
|
64 |
String schema, |
|
65 |
String table |
|
56 |
TableReference table |
|
66 | 57 |
) throws DataException { |
67 | 58 |
List<FeatureAttributeDescriptor> columns = new ArrayList<>(); |
68 | 59 |
|
... | ... | |
80 | 71 |
columns.add(attr); |
81 | 72 |
} |
82 | 73 |
} |
83 |
sqlbuilder.select().from().table().database(database).schema(schema).name(table); |
|
74 |
sqlbuilder.select().from().table() |
|
75 |
.database(this.table.getDatabase()) |
|
76 |
.schema(this.table.getSchema()) |
|
77 |
.name(this.table.getTable()); |
|
84 | 78 |
for (String name : primaryKeys ) { |
85 | 79 |
if( !sqlbuilder.select().has_column(name) ) { |
86 | 80 |
sqlbuilder.select().column().name(name); |
Also available in: Unified diff