source: josm/trunk/src/org/openstreetmap/josm/data/osm/RelationData.java @ 5241

Revision 5170, 1.5 KB checked in by Don-vip, 6 weeks ago (diff)

cleanup svn:mime-type properties preventing Java sources from being viewed as such on Trac

  • Property svn:eol-style set to native
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.data.osm;
3
4import java.util.ArrayList;
5import java.util.List;
6
7import org.openstreetmap.josm.data.osm.visitor.PrimitiveVisitor;
8
9public class RelationData extends PrimitiveData implements IRelation {
10
11    private List<RelationMemberData> members = new ArrayList<RelationMemberData>();
12
13    public RelationData() {
14
15    }
16
17    public RelationData(RelationData data) {
18        super(data);
19        members.addAll(data.members);
20    }
21
22    public List<RelationMemberData> getMembers() {
23        return members;
24    }
25
26    public void setMembers(List<RelationMemberData> memberData) {
27        members = new ArrayList<RelationMemberData>(memberData);
28    }
29
30    @Override
31    public int getMembersCount() {
32        return members.size();
33    }
34
35    @Override
36    public long getMemberId(int idx) {
37        return members.get(idx).getMemberId();
38    }
39
40    @Override
41    public String getRole(int idx) {
42        return members.get(idx).getRole();
43    }
44
45    @Override
46    public OsmPrimitiveType getMemberType(int idx) {
47        return members.get(idx).getMemberType();
48    }
49
50    @Override
51    public RelationData makeCopy() {
52        return new RelationData(this);
53    }
54
55    @Override
56    public String toString() {
57        return super.toString() + " REL " + members;
58    }
59
60    @Override
61    public OsmPrimitiveType getType() {
62        return OsmPrimitiveType.RELATION;
63    }
64
65    @Override
66    public void visit(PrimitiveVisitor visitor) {
67        visitor.visit(this);
68    }
69
70}
Note: See TracBrowser for help on using the repository browser.