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

Last change on this file since 9853 was 8415, checked in by Don-vip, 9 years ago

code style/cleanup - Uncommented Empty Constructor

  • Property svn:eol-style set to native
File size: 1.7 KB
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<>();
12
13 /**
14 * Constructs a new {@code RelationData}.
15 */
16 public RelationData() {
17 // contents can be set later with setters
18 }
19
20 /**
21 * Constructs a new {@code RelationData}.
22 * @param data relation data to copy
23 */
24 public RelationData(RelationData data) {
25 super(data);
26 members.addAll(data.members);
27 }
28
29 public List<RelationMemberData> getMembers() {
30 return members;
31 }
32
33 public void setMembers(List<RelationMemberData> memberData) {
34 members = new ArrayList<>(memberData);
35 }
36
37 @Override
38 public int getMembersCount() {
39 return members.size();
40 }
41
42 @Override
43 public long getMemberId(int idx) {
44 return members.get(idx).getMemberId();
45 }
46
47 @Override
48 public String getRole(int idx) {
49 return members.get(idx).getRole();
50 }
51
52 @Override
53 public OsmPrimitiveType getMemberType(int idx) {
54 return members.get(idx).getMemberType();
55 }
56
57 @Override
58 public RelationData makeCopy() {
59 return new RelationData(this);
60 }
61
62 @Override
63 public String toString() {
64 return super.toString() + " REL " + members;
65 }
66
67 @Override
68 public OsmPrimitiveType getType() {
69 return OsmPrimitiveType.RELATION;
70 }
71
72 @Override
73 public void accept(PrimitiveVisitor visitor) {
74 visitor.visit(this);
75 }
76
77}
Note: See TracBrowser for help on using the repository browser.