ilog.views.maps.datasource
Class IlvSDODataSource

java.lang.Object
  extended by ilog.views.maps.datasource.IlvMapDataSource
      extended by ilog.views.maps.datasource.IlvHierarchicalDataSource
          extended by ilog.views.maps.tiling.IlvTilableDataSource
              extended by ilog.views.maps.datasource.IlvSDODataSource
All Implemented Interfaces:
IlvPersistentObject

public class IlvSDODataSource
extends IlvTilableDataSource

IlvSDODataSource represents a data source used to read from an Oracle SDO database.

Since:
JViews 7.5

Nested Class Summary
static class IlvSDODataSource.OracleIterator
          An internal IlvMapRegionOfInterestIterator to go over an Oracle SDO connection.
static class IlvSDODataSource.SDOLayerFilter
          SDOLayerFilter represents an SDO layer filter.
 
Nested classes/interfaces inherited from class ilog.views.maps.datasource.IlvHierarchicalDataSource
IlvHierarchicalDataSource.CriterionFilter, IlvHierarchicalDataSource.SingleAttributeFilter
 
Field Summary
 
Fields inherited from class ilog.views.maps.datasource.IlvHierarchicalDataSource
featureIterator, filename, nameMap, styleMap
 
Fields inherited from class ilog.views.maps.datasource.IlvMapDataSource
renderer, usingGeodeticComputation
 
Constructor Summary
IlvSDODataSource(IlvInputStream stream)
          Constructs an IlvSDODataSource from a specified IlvInputStream instance.
IlvSDODataSource(IlvSDOConnection connection, boolean isObjectModel, String layerName)
          Constructs a new Oracle IlvSDODataSource using the specified parameters
 
Method Summary
protected  IlvMapRegionOfInterestIterator createTiledIterator(IlvMapLayer layer)
          Creates an iterator that will iterate through the map features, for a specific area of interest.
protected  void createTiledLayers()
          Creates all possible map layers in the data source insertion layer that may be needed when load on demand occurs.
 IlvMapReusableFeatureIterator getFeatureIterator()
          Retrieves the feature iterator used by this data source.
 boolean isMultiThreaded()
          Tests if the tiled layer created by this data source uses multithreading to load tiles.
protected  boolean isSourceDataAvailable()
          Checks whether the source data this IlvMapDataSource is based on is available (file, database connection, url...).
 void write(IlvOutputStream stream)
          Writes this IlvSDODataSource to an IlvOutputStream;
 
Methods inherited from class ilog.views.maps.tiling.IlvTilableDataSource
createGenericTiles, getColumnCount, getLatMax, getLatMin, getLonMax, getLonMin, getRowCount, reset, setAreaOfinterest, setMultiThreaded, setTilingParameters, setupTiledLoaders, start, useTiling
 
Methods inherited from class ilog.views.maps.datasource.IlvHierarchicalDataSource
addCriterionFilter, addLayer, createFeatureRenderer, createInsertionLayer, getCriterionFilters, getFeatureRenderer, getFeatureRenderer, getKey, getMapLayer, getStyle, isAcceptNullValues, readInfo, removeAllCriterionFilters, removeCriterionFilter, setAcceptNullValues, setupLayer
 
Methods inherited from class ilog.views.maps.datasource.IlvMapDataSource
addDataSourceListener, callListeners, getBackupDataSources, getCoordinateSystem, getDescription, getInsertionLayer, getManager, getName, getNode, getValidExtentions, hasInsertionLayer, initBackupDataSource, initInsertionLayer, isAttachingAttributes, isSaveBackupDataSources, isUsingGeodeticComputation, mapIntersects, removeDataSourceListener, setAttachingAttributes, setCoordinateSystem, setDescription, setFeatureRenderer, setForceUsingBackupDataSource, setInsertionLayer, setManager, setName, setSaveBackupDataSources, setValidExtentions, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

IlvSDODataSource

public IlvSDODataSource(IlvInputStream stream)
                 throws IlvReadFileException
Constructs an IlvSDODataSource from a specified IlvInputStream instance.

Parameters:
stream - The input stream to read from.
Throws:
IlvReadFileException - If there is an error when reading from stream.

IlvSDODataSource

public IlvSDODataSource(IlvSDOConnection connection,
                        boolean isObjectModel,
                        String layerName)
                 throws MalformedURLException
Constructs a new Oracle IlvSDODataSource using the specified parameters

Parameters:
connection - The connection to the Oracle database.
isObjectModel - Set to true to use the object model. Set to false to use the relational model.
layerName - The name of the layer to fetch from the database.
Throws:
MalformedURLException - if the JDBC URL in connection is incorrect.
Method Detail

getFeatureIterator

public IlvMapReusableFeatureIterator getFeatureIterator()
Retrieves the feature iterator used by this data source.

Overrides:
getFeatureIterator in class IlvHierarchicalDataSource
Returns:
The iterator used by this data source.

write

public void write(IlvOutputStream stream)
           throws IOException
Writes this IlvSDODataSource to an IlvOutputStream;

Specified by:
write in interface IlvPersistentObject
Overrides:
write in class IlvTilableDataSource
Parameters:
stream - The stream to write to.
Throws:
IOException

createTiledIterator

protected IlvMapRegionOfInterestIterator createTiledIterator(IlvMapLayer layer)
Creates an iterator that will iterate through the map features, for a specific area of interest.

Specified by:
createTiledIterator in class IlvTilableDataSource
Parameters:
layer - The layer to create objects for.
Returns:
The feature iterator.
See Also:
IlvTilableDataSource.createTiledIterator(ilog.views.maps.beans.IlvMapLayer)

createTiledLayers

protected void createTiledLayers()
Creates all possible map layers in the data source insertion layer that may be needed when load on demand occurs.

Specified by:
createTiledLayers in class IlvTilableDataSource
See Also:
IlvTilableDataSource.createTiledLayers()

isMultiThreaded

public boolean isMultiThreaded()
Tests if the tiled layer created by this data source uses multithreading to load tiles.

Overrides:
isMultiThreaded in class IlvTilableDataSource
Returns:
If multi threading is used, true is returned.
See Also:
IlvTilableDataSource.setMultiThreaded(boolean)

isSourceDataAvailable

protected boolean isSourceDataAvailable()
Checks whether the source data this IlvMapDataSource is based on is available (file, database connection, url...). A .ivl, JViews Maps file keeps references to the original sources the map was built from. It can happen that these sources are not available when opening the map, for example, when the map is transferred to another machine. This method checks that availability. In the case where these sources are not available, all operations that need them are performed from the data embedded in the map, but there is a risk of loosing information (when reprojecting for example). This method should be overridden by subclasses.

Overrides:
isSourceDataAvailable in class IlvMapDataSource
Returns:
Returns true, if the original source data is available.


Copyright © 1996-2007 ILOG S.A. All rights reserved.   Documentation homepage.