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 OsmPrimitive
member
private java.lang.String
role
-
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 boolean
equals(java.lang.Object obj)
OsmPrimitive
getMember()
Returns the relation member.Node
getNode()
Returns the relation member as a node.Relation
getRelation()
Returns the relation member as a relation.java.lang.String
getRole()
Returns the role of this relation member.OsmPrimitiveType
getType()
PrimitiveId implementation.long
getUniqueId()
PrimitiveId implementation.Way
getWay()
Returns the relation member as a way.int
hashCode()
boolean
isNew()
PrimitiveId implementation.boolean
isNode()
Determines if this relation member is a node.boolean
isRelation()
Determines if this relation member is a relation.boolean
isWay()
Determines if this relation member is a way.boolean
refersTo(OsmPrimitive primitive)
Replies true, if this relation member refers to the primitivejava.lang.String
toString()
-
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:IRelationMember
Returns the role of this relation member.- Specified by:
getRole
in interfaceIRelationMember<OsmPrimitive>
- Returns:
- Role name or "". Never returns null
-
isRelation
public boolean isRelation()
Description copied from interface:IRelationMember
Determines if this relation member is a relation.- Specified by:
isRelation
in interfaceIRelationMember<OsmPrimitive>
- Returns:
- True if member is relation
-
isWay
public boolean isWay()
Description copied from interface:IRelationMember
Determines if this relation member is a way.- Specified by:
isWay
in interfaceIRelationMember<OsmPrimitive>
- Returns:
- True if member is way
-
isNode
public boolean isNode()
Description copied from interface:IRelationMember
Determines if this relation member is a node.- Specified by:
isNode
in 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:
getWay
in 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:IRelationMember
Returns the relation member.- Specified by:
getMember
in interfaceIRelationMember<OsmPrimitive>
- Returns:
- Member. Returned value is never null.
-
toString
public java.lang.String toString()
- Overrides:
toString
in 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:
hashCode
in classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in classjava.lang.Object
-
getType
public OsmPrimitiveType getType()
PrimitiveId implementation. Returns the same value as getMember().getType()- Specified by:
getType
in 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:
getUniqueId
in interfacePrimitiveId
- Returns:
- the id number
-
isNew
public boolean isNew()
PrimitiveId implementation. Returns the same value as getMember().isNew()- Specified by:
isNew
in interfacePrimitiveId
- Returns:
- true if this id represents a new primitive.
-
-