Changeset 30782 in osm for applications/editors/josm/plugins/merge-overlap/src/mergeoverlap/hack/MyRelationMemberConflictResolverModel.java
- Timestamp:
- 2014-10-29T21:56:35+01:00 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
applications/editors/josm/plugins/merge-overlap/src/mergeoverlap/hack/MyRelationMemberConflictResolverModel.java
r30766 r30782 53 53 @Override 54 54 public void populate(Collection<Relation> relations, Collection<? extends OsmPrimitive> memberPrimitives) { 55 throw new UnsupportedOperationException("Use populate(Collection<Relation>, Collection<? extends OsmPrimitive>, Map<Way, Way>) instead"); 55 throw new UnsupportedOperationException( 56 "Use populate(Collection<Relation>, Collection<? extends OsmPrimitive>, Map<Way, Way>) instead"); 56 57 } 57 58 … … 78 79 @Override 79 80 protected Command buildResolveCommand(Relation relation, OsmPrimitive newPrimitive) { 80 throw new UnsupportedOperationException("Use buildResolveCorrespondance(Relation, OsmPrimitive, Map<Relation, Relation>, Map<Way, Way>) instead"); 81 throw new UnsupportedOperationException( 82 "Use buildResolveCorrespondance(Relation, OsmPrimitive, Map<Relation, Relation>, Map<Way, Way>) instead"); 81 83 } 82 84 83 protected void buildResolveCorrespondance(Relation relation, OsmPrimitive newPrimitive, Map<Relation, Relation> newRelations, Map<Way, Way> oldWays) { 85 protected void buildResolveCorrespondance( 86 Relation relation, OsmPrimitive newPrimitive, Map<Relation, Relation> newRelations, Map<Way, Way> oldWays) { 84 87 85 86 88 List<RelationMember> relationsMembers = relation.getMembers(); 89 Relation modifiedRelation = MergeOverlapAction.getNew(relation, newRelations); 87 90 modifiedRelation.setMembers(null); 88 91 for (int i=0; i < relationsMembers.size(); i++) { 89 92 RelationMember rm = relationsMembers.get(i); 90 93 RelationMemberConflictDecision decision = getDecision(relation, i); 91 94 if (decision == null) { … … 94 97 switch(decision.getDecision()) { 95 98 case KEEP: 96 97 modifiedRelation.addMember(new RelationMember(decision.getRole(), MergeOverlapAction.getOld((Way)newPrimitive, oldWays)));98 }99 100 101 99 if (newPrimitive instanceof Way) { 100 modifiedRelation.addMember(new RelationMember(decision.getRole(), 101 MergeOverlapAction.getOld((Way)newPrimitive, oldWays))); 102 } else { 103 modifiedRelation.addMember(new RelationMember(decision.getRole(), newPrimitive)); 104 } 102 105 break; 103 106 case REMOVE: … … 114 117 @Override 115 118 public List<Command> buildResolutionCommands(OsmPrimitive newPrimitive) { 116 throw new UnsupportedOperationException("Use buildRelationCorrespondance(OsmPrimitive, Map<Relation, Relation>, Map<Way, Way>) instead"); 119 throw new UnsupportedOperationException( 120 "Use buildRelationCorrespondance(OsmPrimitive, Map<Relation, Relation>, Map<Way, Way>) instead"); 117 121 } 118 122 … … 125 129 public void buildRelationCorrespondance(OsmPrimitive newPrimitive, Map<Relation, Relation> newRelations, Map<Way, Way> oldWays) { 126 130 for (Relation relation : relations) { 127 131 buildResolveCorrespondance(relation, newPrimitive, newRelations, oldWays); 128 132 } 129 133 }
Note:
See TracChangeset
for help on using the changeset viewer.