Revision 4563 org.gvsig.topology/trunk/org.gvsig.topology/org.gvsig.topology.lib/org.gvsig.topology.lib.impl/src/main/java/org/gvsig/topology/lib/impl/DefaultTopologyDataSet.java

View differences:

DefaultTopologyDataSet.java
25 25

  
26 26
import java.util.Iterator;
27 27
import java.util.Map;
28
import javax.json.JsonObject;
28 29
import org.apache.commons.collections.IteratorUtils;
29 30
import org.apache.commons.lang3.StringUtils;
30 31
import org.apache.commons.lang3.mutable.MutableObject;
31 32
import org.gvsig.expressionevaluator.Expression;
32
import org.gvsig.expressionevaluator.ExpressionBuilder;
33
import org.gvsig.expressionevaluator.ExpressionEvaluatorLocator;
34
import org.gvsig.expressionevaluator.ExpressionEvaluatorManager;
35 33
import org.gvsig.expressionevaluator.ExpressionUtils;
36 34
import org.gvsig.expressionevaluator.GeometryExpressionBuilder;
37 35
import org.gvsig.expressionevaluator.GeometryExpressionUtils;
......
54 52
import org.gvsig.fmap.geom.GeometryUtils;
55 53
import org.gvsig.fmap.geom.SpatialIndex;
56 54
import org.gvsig.fmap.geom.type.GeometryType;
55
import org.gvsig.json.Json;
56
import org.gvsig.json.JsonObjectBuilder;
57 57
import org.gvsig.tools.dispose.DisposableIterator;
58 58
import org.gvsig.tools.exception.BaseException;
59 59
import org.gvsig.tools.util.PropertiesSupportHelper;
......
64 64
import org.gvsig.topology.lib.api.TopologyDataSet;
65 65
import org.gvsig.topology.lib.api.TopologyLocator;
66 66
import org.gvsig.topology.lib.api.TopologyManager;
67
import org.json.JSONObject;
68 67
import org.gvsig.topology.lib.api.TopologyServices;
69 68
import org.slf4j.Logger;
70 69
import org.slf4j.LoggerFactory;
......
324 323
    }
325 324

  
326 325
    @Override
327
    public JSONObject toJSON() {
328
        JSONObject jsonDataSet = new JSONObject();
329
        jsonDataSet.put("name", this.name);
330
        jsonDataSet.put("fullName", this.fullName);
331

  
332
        return jsonDataSet;
326
    public JsonObject toJson() {
327
        return this.toJsonBuilder().build();
333 328
    }
334 329

  
335 330
    @Override
336
    public void fromJSON(String json) {
337
        this.fromJSON(new JSONObject(json));
331
    public JsonObjectBuilder toJsonBuilder() {
332
        JsonObjectBuilder jsonDataSet = Json.createObjectBuilder();
333
        jsonDataSet.add("name", this.name);
334
        jsonDataSet.add("fullName", this.fullName);
335

  
336
        return jsonDataSet;
338 337
    }
339 338

  
340 339
    @Override
341
    public void fromJSON(JSONObject json) {
340
    public void fromJson(JsonObject json) {
342 341
        TopologyManager manager = TopologyLocator.getTopologyManager();
343 342
        this.name = json.getString("name");
344 343
        this.fullName = null;
345
        if( json.has("fullName") ) {
344
        if( json.containsKey("fullName") ) {
346 345
            this.fullName = json.getString("fullName");
347 346
        }
348 347
        this.store = null;
......
380 379
                    );
381 380
                    final SpatialIndex dataIndex = theStore.wrapSpatialIndex(geomIndex);
382 381
                    try {
383
                        store.accept(new Visitor() {
384
                            @Override
385
                            public void visit(Object o) throws VisitCanceledException, BaseException {
386
                                Feature f = (Feature) o;
387
                                Geometry geom = f.getDefaultGeometry();
388
                                if (geom != null) {
389
                                    dataIndex.insert(geom, f);
390
                                }
382
                        store.accept((Object o) -> {
383
                            Feature f = (Feature) o;
384
                            Geometry geom = f.getDefaultGeometry();
385
                            if (geom != null) {
386
                                dataIndex.insert(geom, f);
391 387
                            }
392 388
                        });
393 389
                    } catch (VisitCanceledException ex) {
......
440 436
                }
441 437
                FeatureSet set = theStore.getFeatureSet(expression);
442 438
                final DisposableIterator it = set.fastIterator();
443
                return new Iterable<FeatureReference>() {
439
                return () -> new Iterator<FeatureReference>() {
444 440
                    @Override
445
                    public Iterator<FeatureReference> iterator() {
446
                        return new Iterator<FeatureReference>() {
447
                            @Override
448
                            public boolean hasNext() {
449
                                return it.hasNext();
450
                            }
451

  
452
                            @Override
453
                            public FeatureReference next() {
454
                                Feature f = (Feature) it.next();
455
                                return f.getReference();
456
                            }
457
                        };
441
                    public boolean hasNext() {
442
                        return it.hasNext();
458 443
                    }
444
                    
445
                    @Override
446
                    public FeatureReference next() {
447
                        Feature f = (Feature) it.next();
448
                        return f.getReference();
449
                    }
459 450
                };
460 451
                
461 452
            } catch(Exception ex) {
......
466 457
        if( it == null ) {
467 458
            return (Iterable<FeatureReference>) IteratorUtils.EMPTY_ITERATOR;
468 459
        }
469
        return new Iterable<FeatureReference>() {
470
            @Override
471
            public Iterator<FeatureReference> iterator() {
472
                return it;
473
            }
474
        };
460
        return () -> it;
475 461
    }
476 462

  
477 463
    @Override
......
508 494
                }
509 495
                FeatureSet set = theStore.getFeatureSet(expression);
510 496
                final DisposableIterator it = set.fastIterator();
511
                return new Iterable<Feature>() {
512
                    @Override
513
                    public Iterator<Feature> iterator() {
514
                        return it;
515
                    }
516
                };
497
                return () -> it;
517 498
                
518 499
            } catch(Exception ex) {
519 500
                return (Iterable<Feature>) IteratorUtils.EMPTY_ITERATOR;
......
523 504
        if( it == null ) {
524 505
            return (Iterable<Feature>) IteratorUtils.EMPTY_ITERATOR;
525 506
        }
526
        return new Iterable<Feature>() {
507
        return () -> new Iterator<Feature>() {
527 508
            @Override
528
            public Iterator<Feature> iterator() {
529
                return new Iterator<Feature>() {
530
                    @Override
531
                    public boolean hasNext() {
532
                        return it.hasNext();
533
                    }
534

  
535
                    @Override
536
                    public Feature next() {
537
                        FeatureReference ref = (FeatureReference) it.next();
538
                        try {
539
                            return ref.getFeature();
540
                        } catch (DataException ex) {
541
                            return null;
542
                        }
543
                    }
544
                };
509
            public boolean hasNext() {
510
                return it.hasNext();
545 511
            }
512
            
513
            @Override
514
            public Feature next() {
515
                FeatureReference ref = (FeatureReference) it.next();
516
                try {
517
                    return ref.getFeature();
518
                } catch (DataException ex) {
519
                    return null;
520
                }
521
            }
546 522
        };
547 523
    }
548 524

  

Also available in: Unified diff