org.openstreetmap.josm.plugins.graphview.core.data.osmosis
Class OSMFileDataSource

Object
  extended by OSMFileDataSource
All Implemented Interfaces:
DataSource<OSMFileDataSource.OwnNode,OSMFileDataSource.OwnWay,OSMFileDataSource.OwnRelation,OSMFileDataSource.OwnMember>

public class OSMFileDataSource
extends Object
implements DataSource<OSMFileDataSource.OwnNode,OSMFileDataSource.OwnWay,OSMFileDataSource.OwnRelation,OSMFileDataSource.OwnMember>

DataSource providing information from a single .osm file. The file is read during the constructor call, there will be no updates when the file is changed later. This class uses osmosis to read the file.


Nested Class Summary
static class OSMFileDataSource.OwnMember
           
 class OSMFileDataSource.OwnNode
           
 class OSMFileDataSource.OwnRelation
           
 class OSMFileDataSource.OwnWay
           
 
Constructor Summary
OSMFileDataSource(File file)
           
 
Method Summary
 void addObserver(DataSourceObserver observer)
          adds an observer.
 void deleteObserver(DataSourceObserver observer)
          deletes an observer that has been added using DataSource.addObserver(DataSourceObserver).
 double getLat(OSMFileDataSource.OwnNode node)
          returns a node's latitude
 double getLon(OSMFileDataSource.OwnNode node)
          returns a node's longitude
 Object getMember(OSMFileDataSource.OwnMember member)
          returns a relation member's member object
 List<OSMFileDataSource.OwnMember> getMembers(OSMFileDataSource.OwnRelation relation)
          returns a relation's members
 Collection<OSMFileDataSource.OwnNode> getNodes()
          returns all nodes
 List<OSMFileDataSource.OwnNode> getNodes(OSMFileDataSource.OwnWay way)
          returns a way's nodes
 Collection<OSMFileDataSource.OwnRelation> getRelations()
          returns all relations
 String getRole(OSMFileDataSource.OwnMember member)
          returns a relation member's role
 TagGroup getTagsN(OSMFileDataSource.OwnNode node)
          returns a node's tags
 TagGroup getTagsR(OSMFileDataSource.OwnRelation relation)
          returns a relation's tags
 TagGroup getTagsW(OSMFileDataSource.OwnWay way)
          returns a way's tags
 Collection<OSMFileDataSource.OwnWay> getWays()
          returns all ways
 boolean isNMember(OSMFileDataSource.OwnMember member)
          returns whether a relation member is a node
 boolean isRMember(OSMFileDataSource.OwnMember member)
          returns whether a relation member is a relation
 boolean isWMember(OSMFileDataSource.OwnMember member)
          returns whether a relation member is a way
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OSMFileDataSource

public OSMFileDataSource(File file)
                  throws IOException
Throws:
IOException
Method Detail

addObserver

public void addObserver(DataSourceObserver observer)
Description copied from interface: DataSource
adds an observer. Does nothing if the parameter is already an observer of this DataSource.

Specified by:
addObserver in interface DataSource<OSMFileDataSource.OwnNode,OSMFileDataSource.OwnWay,OSMFileDataSource.OwnRelation,OSMFileDataSource.OwnMember>
Parameters:
observer - observer object, != null

deleteObserver

public void deleteObserver(DataSourceObserver observer)
Description copied from interface: DataSource
deletes an observer that has been added using DataSource.addObserver(DataSourceObserver). Does nothing if the parameter isn't currently an observer of this DataSource.

Specified by:
deleteObserver in interface DataSource<OSMFileDataSource.OwnNode,OSMFileDataSource.OwnWay,OSMFileDataSource.OwnRelation,OSMFileDataSource.OwnMember>
Parameters:
observer - observer object, != null

getLat

public double getLat(OSMFileDataSource.OwnNode node)
Description copied from interface: DataSource
returns a node's latitude

Specified by:
getLat in interface DataSource<OSMFileDataSource.OwnNode,OSMFileDataSource.OwnWay,OSMFileDataSource.OwnRelation,OSMFileDataSource.OwnMember>

getLon

public double getLon(OSMFileDataSource.OwnNode node)
Description copied from interface: DataSource
returns a node's longitude

Specified by:
getLon in interface DataSource<OSMFileDataSource.OwnNode,OSMFileDataSource.OwnWay,OSMFileDataSource.OwnRelation,OSMFileDataSource.OwnMember>

getMembers

public List<OSMFileDataSource.OwnMember> getMembers(OSMFileDataSource.OwnRelation relation)
Description copied from interface: DataSource
returns a relation's members

Specified by:
getMembers in interface DataSource<OSMFileDataSource.OwnNode,OSMFileDataSource.OwnWay,OSMFileDataSource.OwnRelation,OSMFileDataSource.OwnMember>

getNodes

public Collection<OSMFileDataSource.OwnNode> getNodes()
Description copied from interface: DataSource
returns all nodes

Specified by:
getNodes in interface DataSource<OSMFileDataSource.OwnNode,OSMFileDataSource.OwnWay,OSMFileDataSource.OwnRelation,OSMFileDataSource.OwnMember>

getWays

public Collection<OSMFileDataSource.OwnWay> getWays()
Description copied from interface: DataSource
returns all ways

Specified by:
getWays in interface DataSource<OSMFileDataSource.OwnNode,OSMFileDataSource.OwnWay,OSMFileDataSource.OwnRelation,OSMFileDataSource.OwnMember>

getRelations

public Collection<OSMFileDataSource.OwnRelation> getRelations()
Description copied from interface: DataSource
returns all relations

Specified by:
getRelations in interface DataSource<OSMFileDataSource.OwnNode,OSMFileDataSource.OwnWay,OSMFileDataSource.OwnRelation,OSMFileDataSource.OwnMember>

getNodes

public List<OSMFileDataSource.OwnNode> getNodes(OSMFileDataSource.OwnWay way)
Description copied from interface: DataSource
returns a way's nodes

Specified by:
getNodes in interface DataSource<OSMFileDataSource.OwnNode,OSMFileDataSource.OwnWay,OSMFileDataSource.OwnRelation,OSMFileDataSource.OwnMember>

getTagsN

public TagGroup getTagsN(OSMFileDataSource.OwnNode node)
Description copied from interface: DataSource
returns a node's tags

Specified by:
getTagsN in interface DataSource<OSMFileDataSource.OwnNode,OSMFileDataSource.OwnWay,OSMFileDataSource.OwnRelation,OSMFileDataSource.OwnMember>

getTagsR

public TagGroup getTagsR(OSMFileDataSource.OwnRelation relation)
Description copied from interface: DataSource
returns a relation's tags

Specified by:
getTagsR in interface DataSource<OSMFileDataSource.OwnNode,OSMFileDataSource.OwnWay,OSMFileDataSource.OwnRelation,OSMFileDataSource.OwnMember>

getTagsW

public TagGroup getTagsW(OSMFileDataSource.OwnWay way)
Description copied from interface: DataSource
returns a way's tags

Specified by:
getTagsW in interface DataSource<OSMFileDataSource.OwnNode,OSMFileDataSource.OwnWay,OSMFileDataSource.OwnRelation,OSMFileDataSource.OwnMember>

getMember

public Object getMember(OSMFileDataSource.OwnMember member)
Description copied from interface: DataSource
returns a relation member's member object

Specified by:
getMember in interface DataSource<OSMFileDataSource.OwnNode,OSMFileDataSource.OwnWay,OSMFileDataSource.OwnRelation,OSMFileDataSource.OwnMember>

getRole

public String getRole(OSMFileDataSource.OwnMember member)
Description copied from interface: DataSource
returns a relation member's role

Specified by:
getRole in interface DataSource<OSMFileDataSource.OwnNode,OSMFileDataSource.OwnWay,OSMFileDataSource.OwnRelation,OSMFileDataSource.OwnMember>

isNMember

public boolean isNMember(OSMFileDataSource.OwnMember member)
Description copied from interface: DataSource
returns whether a relation member is a node

Specified by:
isNMember in interface DataSource<OSMFileDataSource.OwnNode,OSMFileDataSource.OwnWay,OSMFileDataSource.OwnRelation,OSMFileDataSource.OwnMember>

isWMember

public boolean isWMember(OSMFileDataSource.OwnMember member)
Description copied from interface: DataSource
returns whether a relation member is a way

Specified by:
isWMember in interface DataSource<OSMFileDataSource.OwnNode,OSMFileDataSource.OwnWay,OSMFileDataSource.OwnRelation,OSMFileDataSource.OwnMember>

isRMember

public boolean isRMember(OSMFileDataSource.OwnMember member)
Description copied from interface: DataSource
returns whether a relation member is a relation

Specified by:
isRMember in interface DataSource<OSMFileDataSource.OwnNode,OSMFileDataSource.OwnWay,OSMFileDataSource.OwnRelation,OSMFileDataSource.OwnMember>