Revision 29326 branches/v2_0_0_prep/libraries/libFMap_daldb/src/org/gvsig/fmap/dal/store/jdbc/JDBCStoreProviderWriter.java
JDBCStoreProviderWriter.java | ||
---|---|---|
46 | 46 |
import org.gvsig.fmap.dal.feature.exception.PerformEditingException; |
47 | 47 |
import org.gvsig.fmap.dal.feature.spi.FeatureProvider; |
48 | 48 |
import org.gvsig.fmap.dal.feature.spi.FeatureReferenceProviderServices; |
49 |
import org.gvsig.fmap.dal.spi.DataStoreProviderServices; |
|
49 | 50 |
import org.gvsig.fmap.dal.store.jdbc.exception.JDBCExecutePreparedSQLException; |
50 | 51 |
import org.gvsig.fmap.dal.store.jdbc.exception.JDBCExecuteSQLException; |
51 | 52 |
import org.gvsig.fmap.dal.store.jdbc.exception.JDBCPreparingSQLException; |
52 | 53 |
import org.gvsig.fmap.dal.store.jdbc.exception.JDBCSQLException; |
53 | 54 |
import org.gvsig.fmap.dal.store.jdbc.exception.JDBCUpdateWithoutChangesException; |
55 |
import org.gvsig.tools.dynobject.DynObject; |
|
54 | 56 |
import org.slf4j.Logger; |
55 | 57 |
import org.slf4j.LoggerFactory; |
56 | 58 |
|
... | ... | |
67 | 69 |
protected String appendModeSql; |
68 | 70 |
protected List appendModeAttributes; |
69 | 71 |
|
70 |
public JDBCStoreProviderWriter() { |
|
71 |
super(); |
|
72 |
|
|
73 |
public JDBCStoreProviderWriter(JDBCStoreParameters params, |
|
74 |
DataStoreProviderServices storeServices) |
|
75 |
throws InitializeException { |
|
76 |
super(params, storeServices); |
|
72 | 77 |
} |
73 | 78 |
|
74 |
public JDBCStoreProviderWriter(JDBCStoreParameters params) |
|
79 |
protected JDBCStoreProviderWriter(JDBCStoreParameters params, |
|
80 |
DataStoreProviderServices storeServices, DynObject metadata) |
|
75 | 81 |
throws InitializeException { |
76 |
super(); |
|
77 |
this.init(params); |
|
82 |
super(params, storeServices, metadata); |
|
78 | 83 |
} |
79 | 84 |
|
80 | 85 |
|
... | ... | |
140 | 145 |
featureRef = (FeatureReferenceProviderServices) featureReferences |
141 | 146 |
.next(); |
142 | 147 |
values.clear(); |
143 |
featureType = this.store.getFeatureType(featureRef |
|
148 |
featureType = this.getFeatureStore().getFeatureType( |
|
149 |
featureRef |
|
144 | 150 |
.getFeatureTypeId()); |
145 | 151 |
|
146 | 152 |
Iterator iter = attributes.iterator(); |
... | ... | |
224 | 230 |
// ************ Prepare SQL **************** |
225 | 231 |
StringBuilder sqlb = new StringBuilder(); |
226 | 232 |
sqlb.append("Delete from "); |
227 |
sqlb.append(params.tableID());
|
|
233 |
sqlb.append(getJDBCParameters().tableID());
|
|
228 | 234 |
appendToSQLPreparedPkWhereClause(sqlb, pkAttributes); |
229 | 235 |
String sql = sqlb.toString(); |
230 | 236 |
// ************ Prepare SQL (end) **************** |
... | ... | |
359 | 365 |
StringBuilder sqlb = new StringBuilder(); |
360 | 366 |
|
361 | 367 |
sqlb.append("ALTER TABLE "); |
362 |
sqlb.append(params.tableID());
|
|
368 |
sqlb.append(getJDBCParameters().tableID());
|
|
363 | 369 |
sqlb.append(' '); |
364 | 370 |
|
365 | 371 |
List actions = new ArrayList(); |
... | ... | |
506 | 512 |
*/ |
507 | 513 |
|
508 | 514 |
sqlb.append("INSERT INTO "); |
509 |
sqlb.append(params.tableID());
|
|
515 |
sqlb.append(getJDBCParameters().tableID());
|
|
510 | 516 |
|
511 | 517 |
sqlb.append(" ("); |
512 | 518 |
|
513 |
FeatureType type = this.store.getDefaultFeatureType();
|
|
519 |
FeatureType type = this.getFeatureStore().getDefaultFeatureType();
|
|
514 | 520 |
|
515 | 521 |
List fields = new ArrayList(); |
516 | 522 |
List values = new ArrayList(); |
... | ... | |
584 | 590 |
|
585 | 591 |
StringBuilder sqlb = new StringBuilder(); |
586 | 592 |
sqlb.append("UPDATE "); |
587 |
sqlb.append(params.tableID());
|
|
593 |
sqlb.append(getJDBCParameters().tableID());
|
|
588 | 594 |
|
589 | 595 |
sqlb.append(" SET "); |
590 | 596 |
|
591 | 597 |
List values = new ArrayList(); |
592 | 598 |
|
593 |
FeatureType type = this.store.getDefaultFeatureType();
|
|
599 |
FeatureType type = this.getFeatureStore().getDefaultFeatureType();
|
|
594 | 600 |
|
595 | 601 |
Iterator iter = type.iterator(); |
596 | 602 |
FeatureAttributeDescriptor attr; |
... | ... | |
651 | 657 |
|
652 | 658 |
List pkAttributes = null; |
653 | 659 |
if (deleteds.hasNext() || updateds.hasNext()) { |
654 |
pkAttributes = Arrays.asList(store.getDefaultFeatureType() |
|
660 |
pkAttributes = Arrays.asList(getFeatureStore() |
|
661 |
.getDefaultFeatureType() |
|
655 | 662 |
.getPrimaryKey()); |
656 | 663 |
} |
657 | 664 |
|
... | ... | |
705 | 712 |
if (directSQLMode) { |
706 | 713 |
return false; |
707 | 714 |
} |
708 |
if (params.getPkFields() == null || params.getPkFields().length > 0) { |
|
715 |
if (getJDBCParameters().getPkFields() == null |
|
716 |
|| getJDBCParameters().getPkFields().length > 0) { |
|
709 | 717 |
FeatureType ft = null; |
710 | 718 |
try { |
711 |
ft = this.store.getDefaultFeatureType();
|
|
719 |
ft = this.getFeatureStore().getDefaultFeatureType();
|
|
712 | 720 |
} catch (DataException e) { |
713 | 721 |
logger.error("Excepton get default Feature Type", e); |
714 | 722 |
} |
Also available in: Unified diff