OGRDataSource *OGRPGDriver::Open( const char * pszFilename, int bUpdate ) { OGRPGDataSource *poDS; poDS = new OGRPGDataSource(); if( !poDS->Open( pszFilename, bUpdate, TRUE ) ) { delete poDS; return NULL; } else return poDS; }
static GDALDataset *OGRPGDriverOpen( GDALOpenInfo* poOpenInfo ) { if( !OGRPGDriverIdentify(poOpenInfo) ) return NULL; OGRPGDataSource *poDS = new OGRPGDataSource(); if( !poDS->Open( poOpenInfo->pszFilename, poOpenInfo->eAccess == GA_Update, TRUE, poOpenInfo->papszOpenOptions ) ) { delete poDS; return NULL; } else return poDS; }
OGRDataSource *OGRPGDriver::CreateDataSource( const char * pszName, char ** /* papszOptions */ ) { OGRPGDataSource *poDS; poDS = new OGRPGDataSource(); if( !poDS->Open( pszName, TRUE, TRUE ) ) { delete poDS; CPLError( CE_Failure, CPLE_AppDefined, "PostgreSQL driver doesn't currently support database creation.\n" "Please create database with the `createdb' command." ); return NULL; } return poDS; }
static GDALDataset *OGRPGDriverCreate( const char * pszName, CPL_UNUSED int nBands, CPL_UNUSED int nXSize, CPL_UNUSED int nYSize, CPL_UNUSED GDALDataType eDT, char **papszOptions ) { OGRPGDataSource *poDS = new OGRPGDataSource(); if( !poDS->Open( pszName, TRUE, TRUE, papszOptions ) ) { delete poDS; CPLError( CE_Failure, CPLE_AppDefined, "PostgreSQL driver doesn't currently support database creation.\n" "Please create database with the `createdb' command." ); return NULL; } return poDS; }