bool PostgresqlTableConnector::loadMetaData(IlwisObject *data, const IOOptions& options) { Table *table = static_cast<Table *>(data); IOOptions iooptions = options.isEmpty() ? this->ioOptions() : options; PostgresqlTableLoader loader = PostgresqlTableLoader(source(), iooptions); return loader.loadMetadata(table); }
bool PostgresqlFeatureConnector::loadData(IlwisObject *data, const IOOptions& options) { if ( _binaryIsLoaded) return true; FeatureCoverage *fcoverage = static_cast<FeatureCoverage *>(data); IOOptions iooptions = options.isEmpty() ? this->ioOptions() : options; PostgresqlFeatureCoverageLoader loader = PostgresqlFeatureCoverageLoader(sourceRef(), iooptions); bool ok = loader.loadData(fcoverage); _binaryIsLoaded = ok; return ok; }
bool PostgresqlTableConnector::loadData(IlwisObject *data,const IOOptions& options) { Table *table = static_cast<Table *>(data); IOOptions iooptions = options.isEmpty() ? this->ioOptions() : options; PostgresqlTableLoader loader = PostgresqlTableLoader(source(), iooptions); if ( !loader.loadMetadata(table)) { return false; } bool ok = loader.loadData(table); _binaryIsLoaded = ok; return ok; }
bool PostgresqlFeatureConnector::loadMetaData(IlwisObject *data, const IOOptions &options) { FeatureCoverage *fcoverage = static_cast<FeatureCoverage *>(data); IOOptions iooptions = options.isEmpty() ? this->ioOptions() : options; PostgresqlFeatureCoverageLoader loader = PostgresqlFeatureCoverageLoader(sourceRef(), iooptions); if ( !loader.loadMetadata(fcoverage)) { ERROR1(ERR_NO_INITIALIZED_1, sourceRef().name()); return false; } return true; }
bool CatalogConnector::loadDataSingleThread(IlwisObject *obj, const IOOptions &options){ Catalog *cat = static_cast<Catalog *>(obj); kernel()->issues()->log(QString(TR("Scanning %1")).arg(sourceRef().url(true).toString()),IssueObject::itMessage); for(const auto& explorer : _dataProviders){ // TODO clear security issues which may arise here, as // all _dataProviders gets passed the ioptions probably // not indendet for them IOOptions iooptions = options.isEmpty() ? ioOptions() : options; std::vector<Resource> items = explorer->loadItems(iooptions); cat->addItemsPrivate(items); mastercatalog()->addItems(items); } return true; }
bool PostgresqlTableConnector::store(IlwisObject *data, const IOOptions& options) { Table *table = static_cast<Table *>(data); IOOptions iooptions = options.isEmpty() ? this->ioOptions() : options; PostgresqlParameters params (_resource.url(true).toString()); PostgresqlDatabaseUtil pgUtil(params); SqlStatementHelper sqlHelper(params); QList<QString> primaryKeys; pgUtil.getPrimaryKeys(primaryKeys); sqlHelper.addCreateTempTableStmt("data_level_0"); sqlHelper.addInsertChangedDataToTempTableStmt("data_level_0", table); sqlHelper.addUpdateStmt(primaryKeys, "data_level_0", table); sqlHelper.addInsertStmt(primaryKeys, "data_level_0", table); // TODO delete deleted rows //qDebug() << "SQL: " << sqlHelper->sql(); pgUtil.doQuery(sqlHelper.sql()); return true; }
bool WfsFeatureConnector::loadData(IlwisObject *data, const IOOptions &options) { qDebug() << "WfsFeatureConnector::loadData()"; IOOptions iooptions = options.isEmpty() ? ioOptions() : options; //if(!loadMetaData(data, iooptions)) // return false; FeatureCoverage *fcoverage = static_cast<FeatureCoverage *>(data); QUrl featureUrl = sourceRef().url(true); WebFeatureService wfs(featureUrl); QUrlQuery queryFeature(featureUrl); SPWfsResponse response = wfs.getFeature(queryFeature); WfsFeatureParser featureParser(response, fcoverage); featureParser.context(_context); featureParser.parseFeatureMembers(); _binaryIsLoaded = true; return _binaryIsLoaded; }