|
deegree 2.1 (2007/11/08 09:57 build-328-official) | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.deegree.io.quadtree.DBQuadtreeManager
public class DBQuadtreeManager
Access control to a quadtree for managing spatial indizes stored in a usual database.
| Field Summary | |
|---|---|
protected String |
backend
|
protected String |
column
|
protected Envelope |
envelope
|
protected String |
indexName
|
protected JDBCConnection |
jdbc
|
protected int |
maxDepth
|
protected String |
owner
|
protected Quadtree |
qt
|
protected String |
table
|
| Constructor Summary | |
|---|---|
DBQuadtreeManager(JDBCConnection jdbc,
String table,
String column,
String owner)
initializes a QuadtreeManager to access an alread existing Quadtree |
|
DBQuadtreeManager(JDBCConnection jdbc,
String indexName,
String table,
String column,
String owner,
int maxDepth)
|
|
DBQuadtreeManager(String driver,
String logon,
String user,
String password,
String encoding,
String table,
String column,
String owner)
initializes a QuadtreeManager to access an alread existing Quadtree |
|
DBQuadtreeManager(String driver,
String logon,
String user,
String password,
String encoding,
String indexName,
String table,
String column,
String owner,
int maxDepth)
|
|
| Method Summary | |
|---|---|
void |
appendShape(String fileName)
appends the features of a shape to an existing datatable and inserts references into the assigned quadtree table. |
protected void |
checkForBackend()
|
protected void |
createDataTable(String fileName)
creates table the shape data shall be stored |
protected void |
createIndexTable(String indexTable)
creates a table that will store the nodes assigned to a specific quadtree index. |
protected String |
getDatabaseType(int dataTypeCode)
returns the type name for a generic type code as used by SQLServer |
Quadtree |
getQuadtree()
returns the current Quadtree |
void |
importShape(String fileName)
imports a shape into the database and builds a quadtree on it |
protected int |
initQuadtree(String fileName)
initializes a new Quadtree by adding a row into table TAB_QUADTREE and into TAB_QTNODE (-> root node) |
protected void |
initRootNode(String fileName)
initializes the root node of the quadtree |
void |
insertIndexMetadata(int fk_indexTree)
|
protected Quadtree |
loadQuadtree()
loads an already existing quadtree |
void |
setRootEnvelope(Envelope envelope)
before importing a shape a user may set an envelope for the quadtree to bee created that is different from the one of the shape by calling this method. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected JDBCConnection jdbc
protected String table
protected String column
protected String owner
protected String indexName
protected int maxDepth
protected Quadtree qt
protected Envelope envelope
protected String backend
| Constructor Detail |
|---|
public DBQuadtreeManager(JDBCConnection jdbc,
String indexName,
String table,
String column,
String owner,
int maxDepth)
jdbc - database connection infoindexName - this name will be used to create the table that stores the nodes of a specific
quadtreetable - name of table the index shall be created forcolumn - name of column the index shall be created forowner - owner of the table (optional, database user will be used if set to null )maxDepth - max depth of the generated quadtree (default = 6 if a value < 2 will be passed)
public DBQuadtreeManager(String driver,
String logon,
String user,
String password,
String encoding,
String indexName,
String table,
String column,
String owner,
int maxDepth)
driver - database connection driverlogon - database connection logonuser - database userpassword - database user's passwordencoding - character encoding to be used (if possible)indexName - this name will be used to create the table that stores the nodes of a specific
quadtreetable - name of table the index shall be created forcolumn - name of column the index shall be created forowner - owner of the table (optional, database user will be used if set to null )maxDepth - max depth of the generated quadtree (default = 6 if a value < 2 will be passed)
public DBQuadtreeManager(JDBCConnection jdbc,
String table,
String column,
String owner)
jdbc - database connection infotable - name of table the index shall be created forcolumn - name of column the index shall be created forowner - owner of the table (optional, database user will be used if set to null )
public DBQuadtreeManager(String driver,
String logon,
String user,
String password,
String encoding,
String table,
String column,
String owner)
driver - database connection driverlogon - database connection logonuser - database userpassword - database user's passwordencoding - character encoding to be used (if possible)table - name of table the index shall be created forcolumn - name of column the index shall be created forowner - owner of the table (optional, database user will be used if set to null )| Method Detail |
|---|
protected void checkForBackend()
public Quadtree getQuadtree()
throws IndexException
IndexException
protected Quadtree loadQuadtree()
throws IndexException
IndexException
protected void initRootNode(String fileName)
throws IndexException,
IOException
fileName -
IndexException
IOExceptionpublic void setRootEnvelope(Envelope envelope)
envelope - method.
protected int initQuadtree(String fileName)
throws IndexException,
IOException
fileName -
IndexException
IOException
public void insertIndexMetadata(int fk_indexTree)
throws IndexException
fk_indexTree -
IndexException
protected void createDataTable(String fileName)
throws IndexException,
IOException
fileName -
IndexException
IOException
protected String getDatabaseType(int dataTypeCode)
throws IndexException
dataTypeCode -
IndexException
public void importShape(String fileName)
throws Exception,
IOException
fileName -
Exception
IOException
public void appendShape(String fileName)
throws Exception,
IOException
you have to consider that the quadtree is just valid for a defined area. if the features to append exceeds this area the quadtree has to be rebuilded.
fileName -
Exception
IOExceptionprotected void createIndexTable(String indexTable)
indexTable -
|
deegree 2.1 (2007/11/08 09:57 build-328-official) | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
an open source project founded by lat/lon, Bonn, Germany.
For more information visit: http://deegree.sourceforge.net