Revision 981
org.gvsig.geoprocess/trunk/org.gvsig.geoprocess/org.gvsig.geoprocess.lib/org.gvsig.geoprocess.lib.sextante/src/main/java/org/gvsig/geoprocess/lib/sextante/dataObjects/FlyrVectIVectorLayer.java | ||
---|---|---|
301 | 301 |
} |
302 | 302 |
|
303 | 303 |
public void close() { |
304 |
if( this.m_Layer==null ) { |
|
304 |
if( this.m_Layer==null ) {
|
|
305 | 305 |
this.free(); |
306 | 306 |
} |
307 | 307 |
} |
... | ... | |
489 | 489 |
return; |
490 | 490 |
} |
491 | 491 |
try { |
492 |
featureStore.finishEditing(); |
|
492 |
if( featureStore.isEditing() || featureStore.isAppending() ) { |
|
493 |
featureStore.finishEditing(); |
|
494 |
} |
|
493 | 495 |
String name = featureStore.getProviderName(); |
494 | 496 |
DataStoreParameters params = featureStore.getParameters(); |
495 | 497 |
featureStore.dispose(); |
496 | 498 |
featureStore = (FeatureStore) DALLocator.getDataManager().openStore(name, params); |
497 | 499 |
featureType = featureStore.getDefaultFeatureType(); |
498 |
} catch (final DataException e) { |
|
499 |
// No puede finalizar la edici?n. Es posible que se haya cerrado previamente. |
|
500 |
} catch (ValidateDataParametersException e) { |
|
501 |
org.slf4j.LoggerFactory.getLogger(FlyrVectIVectorLayer.class).debug("Error opening store", e); |
|
502 |
} catch (LocatorException e) { |
|
503 |
org.slf4j.LoggerFactory.getLogger(FlyrVectIVectorLayer.class).debug("Error opening store", e); |
|
500 |
} catch (final Exception e) { |
|
501 |
logger.warn("Can't execute postProcess on '"+this.getName()+"'.",e); |
|
504 | 502 |
} |
505 | 503 |
} |
506 | 504 |
|
... | ... | |
527 | 525 |
} |
528 | 526 |
|
529 | 527 |
public void free() { |
528 |
if( this.featureStore!=null ) { |
|
529 |
if( featureStore.isEditing() || featureStore.isAppending() ) { |
|
530 |
try { |
|
531 |
featureStore.finishEditing(); |
|
532 |
} catch (DataException ex) { |
|
533 |
logger.warn("Can't free '"+this.getName()+"'.",ex); |
|
534 |
} |
|
535 |
} |
|
536 |
featureStore.dispose(); |
|
537 |
featureStore = null; |
|
538 |
} |
|
530 | 539 |
if( m_Layer!=null ) { |
531 | 540 |
m_Layer.dispose(); |
532 | 541 |
m_Layer = null; |
533 | 542 |
} |
534 |
if( this.featureStore!=null ) { |
|
535 |
featureStore.dispose(); |
|
536 |
featureStore = null; |
|
537 |
} |
|
538 | 543 |
} |
539 | 544 |
|
540 | 545 |
public IOutputChannel getOutputChannel() { |
Also available in: Unified diff