Package org.openstreetmap.josm.data.osm
Class RelationMember
- java.lang.Object
-
- org.openstreetmap.josm.data.osm.RelationMember
-
- All Implemented Interfaces:
IRelationMember<OsmPrimitive>,PrimitiveId
public class RelationMember extends java.lang.Object implements IRelationMember<OsmPrimitive>
A linkage class that can be used by an relation to keep a list of members. Since membership may be qualified by a "role", a simple list is not sufficient.- Since:
- 343
-
-
Field Summary
Fields Modifier and Type Field Description private OsmPrimitivememberprivate java.lang.Stringrole
-
Constructor Summary
Constructors Constructor Description RelationMember(java.lang.String role, OsmPrimitive member)Constructs a newRelationMember.RelationMember(RelationMember other)Copy constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(java.lang.Object obj)OsmPrimitivegetMember()Returns the relation member.NodegetNode()Returns the relation member as a node.RelationgetRelation()Returns the relation member as a relation.java.lang.StringgetRole()Returns the role of this relation member.OsmPrimitiveTypegetType()PrimitiveId implementation.longgetUniqueId()PrimitiveId implementation.WaygetWay()Returns the relation member as a way.inthashCode()booleanisNew()PrimitiveId implementation.booleanisNode()Determines if this relation member is a node.booleanisRelation()Determines if this relation member is a relation.booleanisWay()Determines if this relation member is a way.booleanrefersTo(OsmPrimitive primitive)Replies true, if this relation member refers to the primitivejava.lang.StringtoString()-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.openstreetmap.josm.data.osm.IRelationMember
getDisplayType, hasRole, hasRole
-
-
-
-
Field Detail
-
role
private final java.lang.String role
-
member
private final OsmPrimitive member
-
-
Constructor Detail
-
RelationMember
public RelationMember(java.lang.String role, OsmPrimitive member)
Constructs a newRelationMember.- Parameters:
role- Can be null, in this case it's save as ""member- Cannot be null- Throws:
java.lang.IllegalArgumentException- if member isnull
-
RelationMember
public RelationMember(RelationMember other)
Copy constructor. This constructor is left only for backwards compatibility. Copying RelationMember doesn't make sense because it's immutable- Parameters:
other- relation member to be copied.
-
-
Method Detail
-
getRole
public java.lang.String getRole()
Description copied from interface:IRelationMemberReturns the role of this relation member.- Specified by:
getRolein interfaceIRelationMember<OsmPrimitive>- Returns:
- Role name or "". Never returns null
-
isRelation
public boolean isRelation()
Description copied from interface:IRelationMemberDetermines if this relation member is a relation.- Specified by:
isRelationin interfaceIRelationMember<OsmPrimitive>- Returns:
- True if member is relation
-
isWay
public boolean isWay()
Description copied from interface:IRelationMemberDetermines if this relation member is a way.- Specified by:
isWayin interfaceIRelationMember<OsmPrimitive>- Returns:
- True if member is way
-
isNode
public boolean isNode()
Description copied from interface:IRelationMemberDetermines if this relation member is a node.- Specified by:
isNodein interfaceIRelationMember<OsmPrimitive>- Returns:
- True if member is node
-
getRelation
public Relation getRelation()
Returns the relation member as a relation.- Returns:
- Member as relation
- Since:
- 1937
-
getWay
public Way getWay()
Returns the relation member as a way.- Specified by:
getWayin interfaceIRelationMember<OsmPrimitive>- Returns:
- Member as way
- Since:
- 1937
-
getNode
public Node getNode()
Returns the relation member as a node.- Returns:
- Member as node
- Since:
- 1937
-
getMember
public OsmPrimitive getMember()
Description copied from interface:IRelationMemberReturns the relation member.- Specified by:
getMemberin interfaceIRelationMember<OsmPrimitive>- Returns:
- Member. Returned value is never null.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
refersTo
public boolean refersTo(OsmPrimitive primitive)
Replies true, if this relation member refers to the primitive- Parameters:
primitive- the primitive to check- Returns:
- true, if this relation member refers to the primitive
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equalsin classjava.lang.Object
-
getType
public OsmPrimitiveType getType()
PrimitiveId implementation. Returns the same value as getMember().getType()- Specified by:
getTypein interfacePrimitiveId- Returns:
- the object type
- See Also:
Node,Way,Relation
-
getUniqueId
public long getUniqueId()
PrimitiveId implementation. Returns the same value as getMember().getUniqueId()- Specified by:
getUniqueIdin interfacePrimitiveId- Returns:
- the id number
-
isNew
public boolean isNew()
PrimitiveId implementation. Returns the same value as getMember().isNew()- Specified by:
isNewin interfacePrimitiveId- Returns:
- true if this id represents a new primitive.
-
-