Package ch.so.agi.filegdb.write
Class GdbCreator
java.lang.Object
ch.so.agi.filegdb.write.GdbCreator
- All Implemented Interfaces:
AutoCloseable
Creates a new file geodatabase with its system tables.
Ported from GDAL OpenFileGDB (ogropenfilegdbdatasource_write.cpp). The system catalog,
GDB_Items, GDB_ItemTypes, GDB_ItemRelationships and GDB_ItemRelationshipTypes tables are written
like the FileGDB SDK does.
-
Method Summary
Modifier and TypeMethodDescriptionappendFeatures(String name, boolean createSpatialIndex) appendRows(String name) static voidcheckAppendSupport(GdbCatalog catalog, Dataset dataset, Runnable cancellation) Checks unsupported editing semantics before any dataset changes.voidclose()static GdbCreatorvoidcreateDomain(Domain domain) Creates an attribute domain item in the catalog.createFeatureClass(FeatureClassDefinition definition) Creates a feature class table and registers it in the catalog.voidcreateRelationship(RelationshipDefinition definition) Creates a relationship class item in the catalog.createTable(TableDefinition definition) Creates a plain attribute table without geometry and registers it.static GdbCreatoropenExisting(Path directory, Runnable cancellation)
-
Method Details
-
openExisting
- Throws:
IOException
-
appendFeatures
- Throws:
IOException
-
appendRows
- Throws:
IOException
-
checkAppendSupport
public static void checkAppendSupport(GdbCatalog catalog, Dataset dataset, Runnable cancellation) throws IOException Checks unsupported editing semantics before any dataset changes.- Throws:
IOException
-
create
- Throws:
IOException
-
createFeatureClass
Creates a feature class table and registers it in the catalog.The returned writer owns the physical table and must be closed before the database itself is closed.
- Throws:
IOException
-
createDomain
Creates an attribute domain item in the catalog.- Throws:
IOException
-
createRelationship
Creates a relationship class item in the catalog.- Throws:
IOException
-
createTable
Creates a plain attribute table without geometry and registers it.- Throws:
IOException
-
close
- Specified by:
closein interfaceAutoCloseable- Throws:
IOException
-