Revision 5073 org.gvsig.vcsgis/trunk/org.gvsig.vcsgis/org.gvsig.vcsgis.lib/org.gvsig.vcsgis.lib.impl/src/main/java/org/gvsig/vcsgis/lib/workspace/ChangesImpl.java
ChangesImpl.java | ||
---|---|---|
31 | 31 |
import org.gvsig.fmap.dal.feature.FeatureStore; |
32 | 32 |
import org.gvsig.fmap.dal.feature.paging.FeaturePagingHelper; |
33 | 33 |
import org.gvsig.tools.ToolsLocator; |
34 |
import org.gvsig.tools.dispose.DisposeUtils; |
|
35 |
import org.gvsig.tools.dispose.impl.AbstractDisposable; |
|
34 | 36 |
import org.gvsig.tools.exception.BaseException; |
35 | 37 |
import org.gvsig.tools.swing.api.ChangeListenerHelper; |
36 | 38 |
import org.gvsig.tools.swing.api.ToolsSwingLocator; |
... | ... | |
48 | 50 |
* @param <CHANGE> |
49 | 51 |
*/ |
50 | 52 |
@SuppressWarnings("UseSpecificCatch") |
51 |
public abstract class ChangesImpl<CHANGE extends VCSGisChange> implements VCSGisWorkspaceChanges<CHANGE> { |
|
53 |
public abstract class ChangesImpl<CHANGE extends VCSGisChange> extends AbstractDisposable implements VCSGisWorkspaceChanges<CHANGE> {
|
|
52 | 54 |
|
53 | 55 |
private static final Logger LOGGER = LoggerFactory.getLogger(ChangesImpl.class); |
54 | 56 |
|
... | ... | |
57 | 59 |
private final String selectedFieldName; |
58 | 60 |
|
59 | 61 |
public ChangesImpl(GetItemWithSize64<Feature> changes, String selectedFieldName) { |
62 |
super(); |
|
60 | 63 |
this.changes = (FeaturePagingHelper) changes; |
64 |
DisposeUtils.bind(this.changes); |
|
61 | 65 |
this.changeListernerHelper = ToolsSwingLocator.getToolsSwingManager().createChangeListenerHelper(); |
62 | 66 |
this.selectedFieldName = selectedFieldName; |
63 | 67 |
|
... | ... | |
325 | 329 |
public boolean hasChangeListeners() { |
326 | 330 |
return changeListernerHelper.hasChangeListeners(); |
327 | 331 |
} |
332 |
|
|
333 |
@Override |
|
334 |
protected void doDispose() throws BaseException { |
|
335 |
DisposeUtils.disposeQuietly(this.changes); |
|
336 |
} |
|
337 |
|
|
328 | 338 |
|
329 | 339 |
|
330 |
|
|
331 | 340 |
} |
Also available in: Unified diff