Revision 43864 branches/org.gvsig.desktop-2018a/org.gvsig.desktop.library/org.gvsig.raster/org.gvsig.raster.lib/org.gvsig.raster.lib.buffer.impl/src/main/java/org/gvsig/raster/lib/buffer/impl/operations/DefaultOperationList.java

View differences:

DefaultOperationList.java
57 57
import org.gvsig.tools.persistence.PersistenceManager;
58 58
import org.gvsig.tools.persistence.PersistentState;
59 59
import org.gvsig.tools.persistence.exception.PersistenceException;
60
import org.gvsig.tools.task.TaskStatus;
60 61

  
61 62

  
62 63
/**
......
87 88
     *
88 89
     */
89 90
    public DefaultOperationList() {
90
        this.operations = new ArrayList<OperationListEntry>();
91
        this.operations = new ArrayList<>();
91 92
    }
92 93

  
93 94
    @Override
......
248 249
    }
249 250

  
250 251
    @Override
251
    public Buffer execute(Buffer buffer) throws BufferOperationException {
252
    public Buffer execute(TaskStatus status, Buffer buffer) throws BufferOperationException {
252 253
        Buffer tmpBuffer1 = buffer;
253 254
        DisposeUtils.bind(tmpBuffer1);
254
        Buffer tmpBuffer2 = null;
255
        Buffer tmpBuffer2;
255 256
        int i=0;
256
        for (Iterator<OperationListEntry> iterator = operations.iterator(); iterator.hasNext();) {
257
            OperationListEntry operationListEntry = (OperationListEntry) iterator.next();
257
        for (OperationListEntry operationListEntry : operations) {
258 258
            Operation operation = operationListEntry.getOperation();
259 259
            DynObject parameters = operationListEntry.getParameters();
260 260
            OperationFactory factory = operation.getFactory();
......
264 264
                }
265 265
                DynClass paramsDefinition = parameters.getDynClass();
266 266
                DynField[] fields = paramsDefinition.getDynFields();
267
                for (int j = 0; j < fields.length; j++) {
268
                    DynField_v2 field = (DynField_v2) fields[j];
267
                for (DynField field1 : fields) {
268
                    DynField_v2 field = (DynField_v2) field1;
269 269
                    String name = operationListEntry.getLookpupParameterName(field.getName());
270 270
                    if (StringUtils.isEmpty(name)) {
271 271
                        name = (String) field.getTags().get("lookupParameter");
......
274 274
                        parameters.setDynValue(field.getName(), getParameterValue(name, i));
275 275
                    }
276 276
                }
277
                tmpBuffer2 = operation.execute(tmpBuffer1, parameters);
277
                tmpBuffer2 = operation.execute(status, tmpBuffer1, parameters);
278 278
                DisposeUtils.dispose(tmpBuffer1);
279 279
                tmpBuffer1 = tmpBuffer2;
280 280
            }
......
362 362

  
363 363
    @Override
364 364
    public void loadFromState(PersistentState state) throws PersistenceException {
365
        this.operations = new ArrayList<OperationListEntry>();
365
        this.operations = new ArrayList<>();
366 366

  
367 367
        Iterator it = state.getIterator(OPERATIONS_PERSISTENCE_FIELD);
368 368
        while(it.hasNext()) {
......
383 383
    }
384 384

  
385 385
    public List<String> getAvailableParameterNames() {
386
        Set<String> result = new HashSet<String>();
387
        for (Iterator<OperationListEntry> iterator = operations.iterator(); iterator.hasNext();) {
388
            OperationListEntry operationListEntry = (OperationListEntry) iterator.next();
386
        Set<String> result = new HashSet<>();
387
        for (OperationListEntry operationListEntry : operations) {
389 388
            DynObject parameters = operationListEntry.getParameters();
390 389
            DynField[] dynFields = parameters.getDynClass().getDynFields();
391 390
            for (int i = 0; i < dynFields.length; i++) {
......
394 393
        }
395 394
        if (this.defaultParameters != null) {
396 395
            DynField[] dynFields = this.defaultParameters.getDynClass().getDynFields();
397
            for (int i = 0; i < dynFields.length; i++) {
398
                result.add(dynFields[i].getName());
396
            for (DynField dynField : dynFields) {
397
                result.add(dynField.getName());
399 398
            }
400 399
        }
401
        return new ArrayList<String>(result);
400
        return new ArrayList<>(result);
402 401
    }
403 402

  
404 403
    @Override
......
409 408
    @Override
410 409
    public void validateLookupParameters() throws InvalidLookupParametersException {
411 410
        List<Problem> problems = new ArrayList<>();
412
        InvalidLookupParametersException exception = new InvalidLookupParametersException(problems);
411
//        InvalidLookupParametersException exception = new InvalidLookupParametersException(problems);
413 412

  
414 413
        ListIterator<OperationListEntry> iterator = operations.listIterator();
415 414

  
......
422 421
            if (operationListEntry.isActive()) {
423 422
                DynClass paramsDefinition = parameters.getDynClass();
424 423
                DynField[] fields = paramsDefinition.getDynFields();
425
                for (int j = 0; j < fields.length; j++) {
426
                    DynField_v2 field = (DynField_v2) fields[j];
424
                for (DynField field1 : fields) {
425
                    DynField_v2 field = (DynField_v2) field1;
427 426
                    String name = operationListEntry.getLookpupParameterName(field.getName());
428 427
                    if( !StringUtils.isEmpty(name) ) {
429 428
                        name = (String) field.getTags().get("lookupParameter");
430 429
                    }
431 430
                    if( !StringUtils.isEmpty(name) ) {
432 431
                        if( getParameterValue(name, i) == null){
433
                            Problem problem = exception.new Problem(factory.getName(), field.getName(), name);
432
                            Problem problem = new Problem(factory.getName(), field.getName(), name);
434 433
                            problems.add(problem);
435 434
                        }
436 435
                    }
......
441 440
        if(!problems.isEmpty()){
442 441
            throw new InvalidLookupParametersException(problems);
443 442
        }
444
        return;
445 443
    }
446 444

  
447 445
    private ArrayList<OperationListEntry> cloneOperations() {

Also available in: Unified diff