Class GeoPackageFeatureModelExportOptions.Builder

java.lang.Object
com.luciad.formats.geopackage.GeoPackageFeatureModelExportOptions.Builder
All Implemented Interfaces:
AutoCloseable
Enclosing class:
GeoPackageFeatureModelExportOptions

public static final class GeoPackageFeatureModelExportOptions.Builder extends Object implements AutoCloseable
Builder for the GeoPackage model encoding export options.
Since:
2024.0
  • Constructor Details

  • Method Details

    • finalize

      protected void finalize()
      Overrides:
      finalize in class Object
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable
    • luciadExtensionsEnabled

      @NotNull public GeoPackageFeatureModelExportOptions.Builder luciadExtensionsEnabled(boolean enable)
      Sets whether the GeoPackage feature model gets the Luciad specific extensions.

      These extensions include:

      • lcdx_geom_CIRCLE the Luciad circle geometry
      • lcdx_geom_ELLIPSE the Luciad ellipse geometry
      • lcdx_geom_ELLIPTICALARC the Luciad elliptical arc geometry

      With these extensions the geopackage accepts the following geometries:

      Calling this function is optional. The default value is true.

      Parameters:
      enable - whether the new feature model has Luciad specific extensions.
      Returns:
      this builder.
    • overwriteExistingTables

      @NotNull public GeoPackageFeatureModelExportOptions.Builder overwriteExistingTables(boolean overwrite)
      Whether an existing table with the same name should be overwritten, or if it should result in an error.

      Defaults to false; which means a conflict results in an error. Setting this to true means the existing data is overwritten with the exported data.

      Parameters:
      overwrite - whether an existing table with the same name should be overwritten.
      Returns:
      this builder.
      See Also:
    • tableNameForDataType

      @NotNull public GeoPackageFeatureModelExportOptions.Builder tableNameForDataType(@NotNull DataType dataType, @NotNull String tableName) throws IllegalArgumentException
      Sets a custom table name for the given data type.

      If not called for a given data type in the model, the data type's name (possibly sanitized to be spec compliant) will be used by default.

      The table name must be compliant with the GeoPackage spec. To ensure that the table name is supported, only use names that

      • consist of alphanumerical characters and underscores,
      • start with an alphabetical letter, and
      • don't use multiple underscores in succession.
      Parameters:
      dataType - a data type.
      tableName - a custom table name.
      Returns:
      this builder.
      Throws:
      IllegalArgumentException - when the table name is not compliant with the GeoPackage spec.
      Since:
      2025.0
    • build

      @NotNull public GeoPackageFeatureModelExportOptions build()
      Builds the GeoPackage feature model export options.
      Returns:
      the options for the GeoPackage model encoder.