Revision 43865 branches/org.gvsig.desktop-2018a/org.gvsig.desktop.library/org.gvsig.raster/org.gvsig.raster.lib/org.gvsig.raster.lib.buffer.spi/src/main/java/org/gvsig/raster/lib/buffer/spi/operations/AbstractOperation.java
AbstractOperation.java | ||
---|---|---|
26 | 26 |
import org.gvsig.raster.lib.buffer.api.exceptions.BufferOperationException; |
27 | 27 |
import org.gvsig.raster.lib.buffer.api.operations.OperationFactory; |
28 | 28 |
import org.gvsig.raster.lib.buffer.spi.exceptions.ProcessingOperationException; |
29 |
import org.gvsig.tools.ToolsLocator; |
|
29 | 30 |
import org.gvsig.tools.dynobject.DynObject; |
30 |
import org.gvsig.tools.persistence.PersistentState;
|
|
31 |
import org.gvsig.tools.persistence.exception.PersistenceException;
|
|
31 |
import org.gvsig.tools.task.TaskStatus;
|
|
32 |
import org.gvsig.tools.task.TaskStatusManager;
|
|
32 | 33 |
|
33 | 34 |
|
34 | 35 |
/** |
... | ... | |
39 | 40 |
|
40 | 41 |
static public String COPY_UNPROCESSED_BANDS_PARAM = "copy_unprocessed_bands"; |
41 | 42 |
|
42 |
protected Buffer buffer;
|
|
43 |
protected DynObject parameters;
|
|
44 |
protected Buffer outputBuffer;
|
|
45 |
protected OperationFactory factory;
|
|
46 |
protected boolean copyUnprocessedBands;
|
|
43 |
private Buffer buffer;
|
|
44 |
private DynObject parameters;
|
|
45 |
private Buffer outputBuffer;
|
|
46 |
private final OperationFactory factory;
|
|
47 |
private TaskStatus taskStatus;
|
|
47 | 48 |
|
49 |
private boolean copyUnprocessedBands; |
|
48 | 50 |
|
49 | 51 |
/** |
50 | 52 |
* |
53 |
* @param factory |
|
51 | 54 |
*/ |
52 |
public AbstractOperation() {
|
|
53 |
// Nothing to do
|
|
55 |
protected AbstractOperation(OperationFactory factory) {
|
|
56 |
this.factory = factory;
|
|
54 | 57 |
} |
55 | 58 |
|
59 |
protected boolean mustCopyUnprocessedBands() { |
|
60 |
return copyUnprocessedBands; |
|
61 |
} |
|
62 |
|
|
56 | 63 |
@Override |
57 | 64 |
public void preProcess() throws BufferOperationException { |
58 | 65 |
if (this.parameters.getDynClass().getDynField(COPY_UNPROCESSED_BANDS_PARAM) != null |
... | ... | |
64 | 71 |
} |
65 | 72 |
|
66 | 73 |
@Override |
74 |
public TaskStatus getTaskStatus() { |
|
75 |
if( this.taskStatus==null ) { |
|
76 |
TaskStatusManager taskStatusManager = ToolsLocator.getTaskStatusManager(); |
|
77 |
this.taskStatus = taskStatusManager.createDefaultSimpleTaskStatus( |
|
78 |
this.getFactory().getName()); |
|
79 |
} |
|
80 |
return this.taskStatus; |
|
81 |
} |
|
82 |
|
|
83 |
@Override |
|
67 | 84 |
public void process() throws ProcessingOperationException { |
68 | 85 |
//Nothing to do |
69 | 86 |
} |
... | ... | |
78 | 95 |
* @see org.gvsig.raster.lib.buffer.api.Operation#execute(org.gvsig.raster.lib.buffer.api.Buffer, org.gvsig.tools.dynobject.DynObject) |
79 | 96 |
*/ |
80 | 97 |
@Override |
81 |
public Buffer execute(Buffer buffer, DynObject parameters) throws BufferOperationException { |
|
98 |
public Buffer execute(TaskStatus status, Buffer buffer, DynObject parameters) throws BufferOperationException {
|
|
82 | 99 |
this.buffer = buffer; |
83 | 100 |
this.parameters = parameters; |
101 |
this.taskStatus = status; |
|
84 | 102 |
this.preProcess(); |
85 | 103 |
this.process(); |
86 | 104 |
this.postProcess(); |
... | ... | |
103 | 121 |
return parameters; |
104 | 122 |
} |
105 | 123 |
|
124 |
@Override |
|
125 |
public Object getParameter(String name, Object defaultValue) { |
|
126 |
if(this.parameters.getDynClass().getDynField(name)!=null) { |
|
127 |
return this.getParameters().getDynValue(name); |
|
128 |
} |
|
129 |
return defaultValue; |
|
130 |
} |
|
131 |
|
|
132 |
@Override |
|
133 |
public void setParameter(String name, Object value) { |
|
134 |
this.getParameters().setDynValue(name, value); |
|
135 |
} |
|
136 |
|
|
106 | 137 |
/* (non-Javadoc) |
107 | 138 |
* @see org.gvsig.raster.lib.buffer.spi.OperationServices#getInputBuffer() |
108 | 139 |
*/ |
... | ... | |
118 | 149 |
public Buffer getOutputBuffer() { |
119 | 150 |
return outputBuffer; |
120 | 151 |
} |
152 |
|
|
153 |
@Override |
|
154 |
public void setOutputBuffer(Buffer theOutputBuffer) { |
|
155 |
this.outputBuffer = theOutputBuffer; |
|
156 |
} |
|
157 |
|
|
158 |
|
|
121 | 159 |
} |
Also available in: Unified diff