org.openstreetmap.osmosis.core.domain.v0_6
Class Node

java.lang.Object
  extended by org.openstreetmap.osmosis.core.domain.v0_6.Entity
      extended by org.openstreetmap.osmosis.core.domain.v0_6.Node
All Implemented Interfaces:
java.lang.Comparable<Node>, Storeable

public class Node
extends Entity
implements java.lang.Comparable<Node>

A data class representing a single OSM node.

Author:
Brett Henderson

Constructor Summary
Node(CommonEntityData entityData, double latitude, double longitude)
          Creates a new instance.
Node(long id, int version, java.util.Date timestamp, OsmUser user, long changesetId, java.util.Collection<Tag> tags, double latitude, double longitude)
          Creates a new instance.
Node(long id, int version, java.util.Date timestamp, OsmUser user, long changesetId, double latitude, double longitude)
          Creates a new instance.
Node(long id, int version, TimestampContainer timestampContainer, OsmUser user, long changesetId, java.util.Collection<Tag> tags, double latitude, double longitude)
          Creates a new instance.
Node(long id, int version, TimestampContainer timestampContainer, OsmUser user, long changesetId, double latitude, double longitude)
          Creates a new instance.
Node(StoreReader sr, StoreClassRegister scr)
          Creates a new instance.
 
Method Summary
 int compareTo(Node comparisonNode)
          Compares this node to the specified node.
 boolean equals(java.lang.Object o)
          
 double getLatitude()
          Gets the latitude.
 double getLongitude()
          Gets the longitude.
 EntityType getType()
          Returns the specific data type represented by this entity.
 Node getWriteableInstance()
          Returns a writeable instance of this entity.
 int hashCode()
          
 void setLatitude(double latitude)
          Sets the latitude.
 void setLongitude(double longitude)
          Sets the longitude.
 void store(StoreWriter sw, StoreClassRegister scr)
          Stores all state to the specified store writer.
 java.lang.String toString()
          $.
 
Methods inherited from class org.openstreetmap.osmosis.core.domain.v0_6.Entity
assertWriteable, compareTags, getChangesetId, getFormattedTimestamp, getId, getTags, getTimestamp, getTimestampContainer, getUser, getVersion, isReadOnly, makeReadOnly, setChangesetId, setId, setTimestamp, setTimestampContainer, setUser, setVersion
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Node

public Node(long id,
            int version,
            java.util.Date timestamp,
            OsmUser user,
            long changesetId,
            double latitude,
            double longitude)
Creates a new instance.

Parameters:
id - The unique identifier.
version - The version of the entity.
timestamp - The last updated timestamp.
user - The user that last modified this entity.
changesetId - The id of the changeset that this version of the entity was created by.
latitude - The geographic latitude.
longitude - The geographic longitude.

Node

public Node(long id,
            int version,
            TimestampContainer timestampContainer,
            OsmUser user,
            long changesetId,
            double latitude,
            double longitude)
Creates a new instance.

Parameters:
id - The unique identifier.
version - The version of the entity.
timestampContainer - The container holding the timestamp in an alternative timestamp representation.
user - The name of the user that last modified this entity.
changesetId - The id of the changeset that this version of the entity was created by.
latitude - The geographic latitude.
longitude - The geographic longitude.

Node

public Node(CommonEntityData entityData,
            double latitude,
            double longitude)
Creates a new instance.

Parameters:
entityData - The common entity data.
latitude - The geographic latitude.
longitude - The geographic longitude.

Node

public Node(long id,
            int version,
            java.util.Date timestamp,
            OsmUser user,
            long changesetId,
            java.util.Collection<Tag> tags,
            double latitude,
            double longitude)
Creates a new instance.

Parameters:
id - The unique identifier.
version - The version of the entity.
timestamp - The last updated timestamp.
user - The user that last modified this entity.
changesetId - The id of the changeset that this version of the entity was created by.
tags - The tags to apply to the object.
latitude - The geographic latitude.
longitude - The geographic longitude.

Node

public Node(long id,
            int version,
            TimestampContainer timestampContainer,
            OsmUser user,
            long changesetId,
            java.util.Collection<Tag> tags,
            double latitude,
            double longitude)
Creates a new instance.

Parameters:
id - The unique identifier.
version - The version of the entity.
timestampContainer - The container holding the timestamp in an alternative timestamp representation.
user - The name of the user that last modified this entity.
changesetId - The id of the changeset that this version of the entity was created by.
tags - The tags to apply to the object.
latitude - The geographic latitude.
longitude - The geographic longitude.

Node

public Node(StoreReader sr,
            StoreClassRegister scr)
Creates a new instance.

Parameters:
sr - The store to read state from.
scr - Maintains the mapping between classes and their identifiers within the store.
Method Detail

store

public void store(StoreWriter sw,
                  StoreClassRegister scr)
Stores all state to the specified store writer.

Specified by:
store in interface Storeable
Overrides:
store in class Entity
Parameters:
sw - The writer that persists data to an underlying store.
scr - Maintains the mapping between classes and their identifiers within the store.

getType

public EntityType getType()
Returns the specific data type represented by this entity.

Specified by:
getType in class Entity
Returns:
The entity type enum value.

equals

public boolean equals(java.lang.Object o)

Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()

Overrides:
hashCode in class java.lang.Object

compareTo

public int compareTo(Node comparisonNode)
Compares this node to the specified node. The node comparison is based on a comparison of id, version, latitude, longitude, timestamp and tags in that order.

Specified by:
compareTo in interface java.lang.Comparable<Node>
Parameters:
comparisonNode - The node to compare to.
Returns:
0 if equal, < 0 if considered "smaller", and > 0 if considered "bigger".

getLatitude

public double getLatitude()
Gets the latitude.

Returns:
The latitude.

setLatitude

public void setLatitude(double latitude)
Sets the latitude.

Parameters:
latitude - The latitude.

getLongitude

public double getLongitude()
Gets the longitude.

Returns:
The longitude.

setLongitude

public void setLongitude(double longitude)
Sets the longitude.

Parameters:
longitude - The longitude.

getWriteableInstance

public Node getWriteableInstance()
Returns a writeable instance of this entity. If the object is read-only a clone is created, if it is already writeable then this object is returned.

Specified by:
getWriteableInstance in class Entity
Returns:
A writeable instance of this entity.

toString

public java.lang.String toString()
$.

Overrides:
toString in class java.lang.Object