Revision 6493

View differences:

org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster/org.gvsig.raster.lib/org.gvsig.raster.lib.buffer/org.gvsig.raster.lib.buffer.api/src/main/java/org/gvsig/raster/lib/buffer/api/Band.java
23 23
package org.gvsig.raster.lib.buffer.api;
24 24

  
25 25
import org.gvsig.raster.lib.buffer.api.exceptions.BandException;
26
import org.gvsig.tools.dispose.Disposable;
26 27
import org.gvsig.tools.lang.Cloneable;
27 28
import org.gvsig.tools.observer.ComplexWeakReferencingObservable;
28 29

  
......
30 31
 * @author fdiaz
31 32
 *
32 33
 */
33
public interface Band extends Cloneable, ComplexWeakReferencingObservable {
34
public interface Band extends Cloneable, ComplexWeakReferencingObservable { //, Disposable {
34 35

  
35 36
    /**
36 37
     * Gets the number of columns of the band
......
135 136
     * @return If supports writing or not
136 137
     */
137 138
    public boolean isReadOnly();
138
    
139

  
139 140
    /**
140 141
     * Gets information about the specified band. If band does not have
141 142
     * information, it will return <code>null</code>
142
     * 
143
     *
143 144
     * @param band
144 145
     *            The specified band
145 146
     * @return Returns information about specified band.
org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster/org.gvsig.raster.lib/org.gvsig.raster.lib.buffer/org.gvsig.raster.lib.buffer.api/src/main/java/org/gvsig/raster/lib/buffer/api/Buffer.java
36 36
import org.gvsig.raster.lib.buffer.api.exceptions.BandException;
37 37
import org.gvsig.raster.lib.buffer.api.exceptions.BufferException;
38 38
import org.gvsig.raster.lib.buffer.api.statistics.StatisticsCapable;
39
import org.gvsig.tools.dispose.Disposable;
39 40
import org.gvsig.tools.locator.LocatorException;
40 41
import org.gvsig.tools.observer.Observer;
41 42
import org.gvsig.tools.task.SimpleTaskStatus;
......
44 45
 * @author fdiaz
45 46
 *
46 47
 */
47
public interface Buffer extends StatisticsCapable, Iterable<Band>, Observer {
48
public interface Buffer extends StatisticsCapable, Iterable<Band>, Observer { //, Disposable {
48 49

  
49 50
    public final static int INTERPOLATION_Undefined        = 0;
50 51
    public final static int INTERPOLATION_NearestNeighbour = 1;
org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster/org.gvsig.raster.lib/org.gvsig.raster.lib.buffer/org.gvsig.raster.lib.buffer.impl/src/main/java/org/gvsig/raster/lib/buffer/impl/AbstractBuffer.java
35 35
import org.gvsig.raster.lib.buffer.api.statistics.Statistics;
36 36
import org.gvsig.raster.lib.buffer.impl.statistics.DefaultStatistics;
37 37
import org.gvsig.tools.ToolsLocator;
38
import org.gvsig.tools.exception.BaseException;
38 39
import org.gvsig.tools.locator.LocatorException;
39 40
import org.gvsig.tools.observer.Notification;
40 41
import org.gvsig.tools.observer.Observable;
......
63 64
    private Double pixelSizeX = null;
64 65
    private Double pixelSizeY = null;
65 66

  
67
//    // to make disposable
68
//    private final Object lock = new Object();
69
//    private boolean disposed = false;
66 70

  
71
//    public AbstractBuffer() {
72
//        if(ToolsLocator.getDisposableManager() != null) {
73
//            ToolsLocator.getDisposableManager().bind(this);
74
//        } else {
75
//            logger.warn("Can't retrieve the disposable manager,");
76
//        }
77
//    }
78

  
67 79
    @Override
68 80
    public Statistics getStatistics(SimpleTaskStatus status) {
69 81
        if (statistics == null) {
......
508 520
        return pixelSizeY.doubleValue();
509 521
    }
510 522

  
523
//    public final void dispose() {
524
//        synchronized (lock) {
525
//            // Check if we have already been disposed, and don't do it again
526
//            if (!disposed) {
527
//                if ( ToolsLocator.getDisposableManager().release(this) ) {
528
//                    try {
529
//                        doDispose();
530
//                    } catch (BaseException ex) {
531
//                        LOG.error("Error performing dispose", ex);
532
//                    }
533
//                    disposed = true;
534
//                }
535
//            }
536
//        }
537
//    }
538
//
539
//    @Override
540
//    public void doDispose() {
541
//        for (Iterator iterator = bands.iterator(); iterator.hasNext();) {
542
//            Band band = (Band) iterator.next();
543
//            band.dispose();
544
//        }
545
//        envelope = null;
546
//        projection = null;
547
//        //TODO: ?FilterList Disposable?
548
//        filters = null;
549
//        //TODO: ?Statistics Disposable?
550
//        statistics = null;
551
//
552
//        pixelSizeX = null;
553
//        pixelSizeY = null;
554
//    }
555

  
556
    @Override
557
    protected void finalize() throws Throwable {
558
        super.finalize();
559
        logger.info("AbstractBuffer with rows = "+rows+" columns = "+columns+" CLEANED");
560

  
561
    }
511 562
}
org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster/org.gvsig.raster.lib/org.gvsig.raster.lib.buffer/org.gvsig.raster.lib.buffer.impl/src/main/java/org/gvsig/raster/lib/buffer/impl/AbstractBand.java
1 1
package org.gvsig.raster.lib.buffer.impl;
2 2

  
3
import org.slf4j.Logger;
4
import org.slf4j.LoggerFactory;
5

  
3 6
import org.gvsig.raster.lib.buffer.api.Band;
4 7
import org.gvsig.raster.lib.buffer.api.BandInfo;
5 8
import org.gvsig.raster.lib.buffer.api.BandNotification;
......
14 17
 */
15 18
public abstract class AbstractBand extends BaseWeakReferencingObservable implements Band {
16 19

  
20
    protected static final Logger logger = LoggerFactory.getLogger(AbstractBand.class);
21

  
17 22
    int rows;
18 23
    int columns;
19 24
    NoData noData;
......
107 112
    }
108 113

  
109 114
    protected abstract void doPutRow(int row, Object rowBuffer);
115

  
116
    @Override
117
    protected void finalize() throws Throwable {
118
        super.finalize();
119
        logger.info("AbstractBand with rows = "+rows+" columns = "+columns+" CLEANED");
120

  
121
    }
122

  
110 123
}
org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster/org.gvsig.raster.lib/org.gvsig.raster.lib.buffer/org.gvsig.raster.lib.buffer.impl/src/main/java/org/gvsig/raster/lib/buffer/impl/AbstractPaginatedBand.java
149 149
        return rowsPerPage * columns;
150 150
    }
151 151

  
152
//    @Override
153
//    public void dispose() {
154
//        super.dispose();
155
//        data = null;
156
//        pageManager = null;
157
//    }
158

  
152 159
}
org.gvsig.raster/branches/org.gvsig.raster.2.4/org.gvsig.raster/org.gvsig.raster.lib/org.gvsig.raster.lib.buffer/org.gvsig.raster.lib.buffer.impl/src/main/java/org/gvsig/raster/lib/buffer/impl/AbstractTiledBand.java
175 175
        return allocateRows*allocateColumns;
176 176
    }
177 177

  
178
//    @Override
179
//    public void dispose() {
180
//        super.dispose();
181
//        data = null;
182
//        tileManager = null;
183
//    }
184

  
178 185
}

Also available in: Unified diff