fr.ign.cogit.geoxygene.datatools.postgis
Class GeodatabaseOjbPostgis

java.lang.Object
  extended by fr.ign.cogit.geoxygene.datatools.ojb.GeodatabaseOjb
      extended by fr.ign.cogit.geoxygene.datatools.postgis.GeodatabaseOjbPostgis
All Implemented Interfaces:
Geodatabase

public class GeodatabaseOjbPostgis
extends GeodatabaseOjb
implements Geodatabase

Implementation d'une Geodatabase utilisant OJB comme mappeur et Postgis comme SGBDR geographique.

Version:
1.1
Author:
Thierry Badard & Arnaud Braun

Field Summary
 
Fields inherited from class fr.ign.cogit.geoxygene.datatools.ojb.GeodatabaseOjb
_conn, _db, _metadataList, _odmg, _tx
 
Fields inherited from interface fr.ign.cogit.geoxygene.datatools.Geodatabase
ORACLE, POSTGIS
 
Constructor Summary
GeodatabaseOjbPostgis()
          Constructeur direct.
GeodatabaseOjbPostgis(GeodatabaseOjb ojb)
          Constructeur en specialisant GeodatabaseOjb.
 
Method Summary
 int countObjects(java.lang.Class theClass)
          Renvoie le nombre d'objets persistants de la classe theClass.
 int getDBMS()
          renvoie le type de SGBD associe.
 java.lang.Object loadAllFeatures(java.lang.Class featureClass, java.lang.Class featureListClass, GM_Object geom)
          Charge tous les FT_Feature de la classe theClass intersectant le GM_Object geom, dans la classe featureListClass.
 java.lang.Object loadAllFeatures(java.lang.Class featureClass, java.lang.Class featureListClass, GM_Object geom, double dist)
          Charge tous les FT_Feature de la classe theClass a une distance dist du GM_Object geom, dans la classe featureListClass.
 FT_FeatureCollection loadAllFeatures(java.lang.Class featureClass, GM_Object geom)
          Charge tous les FT_Feature de la classe theClass intersectant le GM_Object geom, dans la classe FT_FeatureCollection.
 FT_FeatureCollection loadAllFeatures(java.lang.Class featureClass, GM_Object geom, double dist)
          Charge tous les FT_Feature de la classe theClass a une distance dist du GM_Object geom, dans la classe FT_FeatureCollection.
 int maxId(java.lang.Class theClass)
          Renvoie l'identifiant maximum de la classe theClass.
 void mbr(java.lang.Class clazz)
          Ne fonctionne pas sous POSTGIS.
 int minId(java.lang.Class theClass)
          Renvoie l'identifiant minimum de la classe theClass.
 void refreshRepository(java.io.File newRepository)
          Utilise par EsayLoader pour recharger un fichier de mapping qui a ete modifie.
 void spatialIndex(java.lang.Class clazz)
          Calcule un index spatial sur la table mappee avec la classe (R-Tree).
 
Methods inherited from class fr.ign.cogit.geoxygene.datatools.ojb.GeodatabaseOjb
abort, begin, checkpoint, clearCache, close, commit, deletePersistent, exeSQL, exeSQLQuery, getConnection, getMetadata, getMetadata, getMetadata, getODMGDatabase, getODMGImplementation, getODMGTransaction, initConnection, initMetadata, initODMG, isOpen, load, loadAll, loadAllFeatures, loadAllFeatures, loadOQL, makePersistent, newOQLQuery
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface fr.ign.cogit.geoxygene.datatools.Geodatabase
abort, begin, checkpoint, clearCache, close, commit, deletePersistent, exeSQL, exeSQLQuery, getConnection, getMetadata, getMetadata, getMetadata, isOpen, load, loadAll, loadAllFeatures, loadAllFeatures, loadOQL, makePersistent, newOQLQuery
 

Constructor Detail

GeodatabaseOjbPostgis

public GeodatabaseOjbPostgis()
Constructeur direct.


GeodatabaseOjbPostgis

public GeodatabaseOjbPostgis(GeodatabaseOjb ojb)
Constructeur en specialisant GeodatabaseOjb. Usage interne, appele par GeodatabaseOjbFactory.

Method Detail

loadAllFeatures

public FT_FeatureCollection loadAllFeatures(java.lang.Class featureClass,
                                            GM_Object geom)
Charge tous les FT_Feature de la classe theClass intersectant le GM_Object geom, dans la classe FT_FeatureCollection. A appeler a l'interieur d'une transaction ouverte. La classe theClass doit etre une sous-classe de FT_Feature, sinon renvoie une liste vide.

Specified by:
loadAllFeatures in interface Geodatabase

loadAllFeatures

public java.lang.Object loadAllFeatures(java.lang.Class featureClass,
                                        java.lang.Class featureListClass,
                                        GM_Object geom)
Charge tous les FT_Feature de la classe theClass intersectant le GM_Object geom, dans la classe featureListClass. A appeler a l'interieur d'une transaction ouverte. La classe theClass doit etre une sous-classe de FT_Feature, sinon renvoie une liste vide. La classe featureListClass doit etre un sous classe de FT_FeatureCollection.

Specified by:
loadAllFeatures in interface Geodatabase

loadAllFeatures

public FT_FeatureCollection loadAllFeatures(java.lang.Class featureClass,
                                            GM_Object geom,
                                            double dist)
Charge tous les FT_Feature de la classe theClass a une distance dist du GM_Object geom, dans la classe FT_FeatureCollection. Si geom est la geometrie d'un FT_Feature de theClass, alors ce FT_Feature appartiendra au resultat. A appeler a l'interieur d'une transaction ouverte. La classe theClass doit etre une sous-classe de FT_Feature, sinon renvoie une liste vide.

Specified by:
loadAllFeatures in interface Geodatabase

loadAllFeatures

public java.lang.Object loadAllFeatures(java.lang.Class featureClass,
                                        java.lang.Class featureListClass,
                                        GM_Object geom,
                                        double dist)
Charge tous les FT_Feature de la classe theClass a une distance dist du GM_Object geom, dans la classe featureListClass. Si geom est la geometrie d'un FT_Feature de theClass, alors ce FT_Feature appartiendra au resultat. A appeler a l'interieur d'une transaction ouverte. La classe theClass doit etre une sous-classe de FT_Feature, sinon renvoie une liste vide. La classe featureListClass doit etre un sous classe de FT_FeatureCollection.

Specified by:
loadAllFeatures in interface Geodatabase

mbr

public void mbr(java.lang.Class clazz)
Ne fonctionne pas sous POSTGIS.

Specified by:
mbr in interface Geodatabase

spatialIndex

public void spatialIndex(java.lang.Class clazz)
Calcule un index spatial sur la table mappee avec la classe (R-Tree). La classe doit heriter de FT_Feature, la table doit contenir une geometrie.

Specified by:
spatialIndex in interface Geodatabase

countObjects

public int countObjects(java.lang.Class theClass)
Renvoie le nombre d'objets persistants de la classe theClass. A appeler a l'interieur d'une transaction ouverte.

Specified by:
countObjects in interface Geodatabase

maxId

public int maxId(java.lang.Class theClass)
Renvoie l'identifiant maximum de la classe theClass. ATTENTION : La classe passee en parametre doit avoir un champ "id" de type int (marche pour les FT_Feature). A appeler a l'interieur d'une transaction ouverte.

Specified by:
maxId in interface Geodatabase

minId

public int minId(java.lang.Class theClass)
Renvoie l'identifiant minimum de la classe theClass. ATTENTION : La classe passee en parametre doit avoir un champ "id" de type int (marche pour les FT_Feature). A appeler a l'interieur d'une transaction ouverte.

Specified by:
minId in interface Geodatabase

getDBMS

public int getDBMS()
renvoie le type de SGBD associe.

Specified by:
getDBMS in interface Geodatabase

refreshRepository

public void refreshRepository(java.io.File newRepository)
                       throws java.lang.Exception
Utilise par EsayLoader pour recharger un fichier de mapping qui a ete modifie.

Specified by:
refreshRepository in interface Geodatabase
Throws:
java.lang.Exception