Interface GeoPackageManager


  • public interface GeoPackageManager
    GeoPackage Database management
    • Method Detail

      • getContext

        Context getContext()
        Get the application context
        Returns:
        context
        Since:
        5.1.0
      • databases

        List<String> databases()
        List all GeoPackage databases sorted alphabetically
        Returns:
        database list
      • databasesLike

        List<String> databasesLike​(String like)
        List GeoPackage databases that match the provided like argument
        Parameters:
        like - like argument, using % as a wild card
        Returns:
        database names
        Since:
        1.2.7
      • databasesNotLike

        List<String> databasesNotLike​(String notLike)
        List GeoPackage databases that do not match the provided like argument
        Parameters:
        notLike - not like argument, using % as a wild card
        Returns:
        database names
        Since:
        1.2.7
      • internalDatabases

        List<String> internalDatabases()
        List all internal GeoPackage databases sorted alphabetically
        Returns:
        internal database list
        Since:
        1.2.4
      • externalDatabases

        List<String> externalDatabases()
        List all external GeoPackage databases sorted alphabetically
        Returns:
        external database list
      • count

        int count()
        Get the count of GeoPackage databases
        Returns:
        count
      • internalCount

        int internalCount()
        Get the count of internal GeoPackage databases
        Returns:
        internal count
        Since:
        1.2.4
      • externalCount

        int externalCount()
        Get the count of external GeoPackage databases
        Returns:
        external count
        Since:
        1.2.4
      • databaseSet

        Set<String> databaseSet()
        Set of all GeoPackage databases
        Returns:
        database set
      • internalDatabaseSet

        Set<String> internalDatabaseSet()
        Set of all internal GeoPackage databases
        Returns:
        internal database set
        Since:
        1.2.4
      • externalDatabaseSet

        Set<String> externalDatabaseSet()
        Set of all external GeoPackage databases
        Returns:
        external database set
      • exists

        boolean exists​(String database)
        Determine if the database exists
        Parameters:
        database - database name
        Returns:
        true if exists
      • size

        long size​(String database)
        Size of the database in bytes
        Parameters:
        database - database name
        Returns:
        bytes
      • isExternal

        boolean isExternal​(String database)
        Determine if the database is a linked external file
        Parameters:
        database - database name
        Returns:
        external flag
      • existsAtExternalFile

        boolean existsAtExternalFile​(File file)
        Determine if a database exists at the provided external file
        Parameters:
        file - database file
        Returns:
        true if exists
        Since:
        1.1.1
      • existsAtExternalPath

        boolean existsAtExternalPath​(String path)
        Determine if a database exists at the provided external file path
        Parameters:
        path - database file path
        Returns:
        true if exists
        Since:
        1.1.1
      • existsAtExternalFile

        boolean existsAtExternalFile​(androidx.documentfile.provider.DocumentFile file)
        Determine if a database exists at the provided external document file
        Parameters:
        file - document file
        Returns:
        true if exists
        Since:
        5.0.0
      • getPath

        String getPath​(String database)
        Get the path of the database
        Parameters:
        database - database name
        Returns:
        path
      • getFile

        File getFile​(String database)
        Get the file of the database
        Parameters:
        database - database name
        Returns:
        file
      • getDocumentFile

        androidx.documentfile.provider.DocumentFile getDocumentFile​(String database)
        Get the document file of the database
        Parameters:
        database - database name
        Returns:
        document file
        Since:
        5.0.0
      • getDatabaseAtExternalFile

        String getDatabaseAtExternalFile​(File file)
        Get the database name at the external file
        Parameters:
        file - database file
        Returns:
        database name or null if does not exist
        Since:
        1.1.1
      • getDatabaseAtExternalPath

        String getDatabaseAtExternalPath​(String path)
        Get the database name at the external file path
        Parameters:
        path - database file path
        Returns:
        database name or null if does not exist
        Since:
        1.1.1
      • getDatabaseAtExternalFile

        String getDatabaseAtExternalFile​(androidx.documentfile.provider.DocumentFile file)
        Get the database name at the external file
        Parameters:
        file - database document file
        Returns:
        database name or null if does not exist
        Since:
        5.0.0
      • readableSize

        String readableSize​(String database)
        Get a readable version of the database size
        Parameters:
        database - database name
        Returns:
        size
      • delete

        boolean delete​(String database)
        Delete a database
        Parameters:
        database - database name
        Returns:
        true if deleted
      • deleteAll

        boolean deleteAll()
        Delete all databases
        Returns:
        true if deleted
      • deleteAllExternal

        boolean deleteAllExternal()
        Delete all external GeoPackages
        Returns:
        true if deleted
      • deleteAllMissingExternal

        boolean deleteAllMissingExternal()
        Delete all external GeoPackages where the external file can no longer be found
        Returns:
        true if any were deleted
        Since:
        1.1.1
      • create

        boolean create​(String database)
        Create a new GeoPackage database
        Parameters:
        database - database name
        Returns:
        true if created
      • createAtPath

        boolean createAtPath​(String database,
                             File path)
        Create a new GeoPackage database at the provided directory path
        Parameters:
        database - database name
        path - directory path
        Returns:
        true if created
        Since:
        1.2.6
      • createFile

        boolean createFile​(File file)
        Create a new GeoPackage database at the specified file location
        Parameters:
        file - GeoPackage file path
        Returns:
        true if created
        Since:
        1.2.6
      • createFile

        boolean createFile​(String database,
                           File file)
        Create a new GeoPackage database at the specified file location with the provided name
        Parameters:
        database - database name
        file - GeoPackage file path
        Returns:
        true if created
        Since:
        1.2.6
      • createFile

        boolean createFile​(androidx.documentfile.provider.DocumentFile file)
        Create a new GeoPackage database at the specified file location
        Parameters:
        file - GeoPackage document file
        Returns:
        true if created
        Since:
        5.0.0
      • createFile

        boolean createFile​(String database,
                           androidx.documentfile.provider.DocumentFile file)
        Create a new GeoPackage database at the specified file location with the provided name
        Parameters:
        database - database name
        file - GeoPackage document file
        Returns:
        true if created
        Since:
        5.0.0
      • importGeoPackage

        boolean importGeoPackage​(File file)
        Import a GeoPackage file
        Parameters:
        file - GeoPackage file to import
        Returns:
        true if loaded
      • importGeoPackage

        boolean importGeoPackage​(File file,
                                 GeoPackageProgress progress)
        Import a GeoPackage file
        Parameters:
        file - GeoPackage file to import
        progress - progress tracker
        Returns:
        true if loaded
        Since:
        5.0.0
      • importGeoPackage

        boolean importGeoPackage​(File file,
                                 boolean override)
        Import a GeoPackage file
        Parameters:
        file - GeoPackage file to import
        override - true to override existing
        Returns:
        true if created successfully
      • importGeoPackage

        boolean importGeoPackage​(File file,
                                 boolean override,
                                 GeoPackageProgress progress)
        Import a GeoPackage file
        Parameters:
        file - GeoPackage file to import
        override - true to override existing
        progress - progress tracker
        Returns:
        true if created successfully
        Since:
        5.0.0
      • importGeoPackage

        boolean importGeoPackage​(String name,
                                 File file)
        Import a GeoPackage file
        Parameters:
        name - database name to save as
        file - GeoPackage file to import
        Returns:
        true if created successfully
      • importGeoPackage

        boolean importGeoPackage​(String name,
                                 File file,
                                 GeoPackageProgress progress)
        Import a GeoPackage file
        Parameters:
        name - database name to save as
        file - GeoPackage file to import
        progress - progress tracker
        Returns:
        true if created successfully
        Since:
        5.0.0
      • importGeoPackage

        boolean importGeoPackage​(String name,
                                 File file,
                                 boolean override)
        Import a GeoPackage file
        Parameters:
        name - database name to save the imported file as
        file - GeoPackage file to import
        override - true to override existing
        Returns:
        true if created successfully
      • importGeoPackage

        boolean importGeoPackage​(String name,
                                 File file,
                                 boolean override,
                                 GeoPackageProgress progress)
        Import a GeoPackage file
        Parameters:
        name - database name to save the imported file as
        file - GeoPackage file to import
        override - true to override existing
        progress - progress tracker
        Returns:
        true if created successfully
        Since:
        5.0.0
      • importGeoPackage

        boolean importGeoPackage​(androidx.documentfile.provider.DocumentFile file)
        Import a GeoPackage file
        Parameters:
        file - GeoPackage document file to import
        Returns:
        true if loaded
        Since:
        5.0.0
      • importGeoPackage

        boolean importGeoPackage​(androidx.documentfile.provider.DocumentFile file,
                                 GeoPackageProgress progress)
        Import a GeoPackage file
        Parameters:
        file - GeoPackage document file to import
        progress - progress tracker
        Returns:
        true if loaded
        Since:
        5.0.0
      • importGeoPackage

        boolean importGeoPackage​(androidx.documentfile.provider.DocumentFile file,
                                 boolean override)
        Import a GeoPackage file
        Parameters:
        file - GeoPackage document file to import
        override - true to override existing
        Returns:
        true if created successfully
        Since:
        5.0.0
      • importGeoPackage

        boolean importGeoPackage​(androidx.documentfile.provider.DocumentFile file,
                                 boolean override,
                                 GeoPackageProgress progress)
        Import a GeoPackage file
        Parameters:
        file - GeoPackage document file to import
        override - true to override existing
        progress - progress tracker
        Returns:
        true if created successfully
        Since:
        5.0.0
      • importGeoPackage

        boolean importGeoPackage​(String name,
                                 androidx.documentfile.provider.DocumentFile file)
        Import a GeoPackage file
        Parameters:
        name - database name to save as
        file - GeoPackage document file to import
        Returns:
        true if created successfully
        Since:
        5.0.0
      • importGeoPackage

        boolean importGeoPackage​(String name,
                                 androidx.documentfile.provider.DocumentFile file,
                                 GeoPackageProgress progress)
        Import a GeoPackage file
        Parameters:
        name - database name to save as
        file - GeoPackage document file to import
        progress - progress tracker
        Returns:
        true if created successfully
        Since:
        5.0.0
      • importGeoPackage

        boolean importGeoPackage​(String name,
                                 androidx.documentfile.provider.DocumentFile file,
                                 boolean override)
        Import a GeoPackage file
        Parameters:
        name - database name to save the imported file as
        file - GeoPackage document file to import
        override - true to override existing
        Returns:
        true if created successfully
        Since:
        5.0.0
      • importGeoPackage

        boolean importGeoPackage​(String name,
                                 androidx.documentfile.provider.DocumentFile file,
                                 boolean override,
                                 GeoPackageProgress progress)
        Import a GeoPackage file
        Parameters:
        name - database name to save the imported file as
        file - GeoPackage document file to import
        override - true to override existing
        progress - progress tracker
        Returns:
        true if created successfully
        Since:
        5.0.0
      • importGeoPackage

        boolean importGeoPackage​(String database,
                                 InputStream stream)
        Import a GeoPackage stream
        Parameters:
        database - database name to save as
        stream - GeoPackage stream to import
        Returns:
        true if loaded
      • importGeoPackage

        boolean importGeoPackage​(String database,
                                 InputStream stream,
                                 GeoPackageProgress progress)
        Import a GeoPackage stream
        Parameters:
        database - database name to save as
        stream - GeoPackage stream to import
        progress - progress tracker
        Returns:
        true if loaded
      • importGeoPackage

        boolean importGeoPackage​(String database,
                                 InputStream stream,
                                 boolean override)
        Import a GeoPackage stream
        Parameters:
        database - database name to save as
        stream - GeoPackage stream to import
        override - true to override existing
        Returns:
        true if created successfully
      • importGeoPackage

        boolean importGeoPackage​(String database,
                                 InputStream stream,
                                 boolean override,
                                 GeoPackageProgress progress)
        Import a GeoPackage stream
        Parameters:
        database - database name to save as
        stream - GeoPackage stream to import
        override - true to override existing
        progress - progress tracker
        Returns:
        true if created successfully
      • importGeoPackage

        boolean importGeoPackage​(String name,
                                 URL url)
        Import a GeoPackage file from a URL
        Parameters:
        name - GeoPackage name
        url - url
        Returns:
        true if created successfully
      • importGeoPackage

        boolean importGeoPackage​(String name,
                                 URL url,
                                 GeoPackageProgress progress)
        Import a GeoPackage file from a URL
        Parameters:
        name - GeoPackage name
        url - url
        progress - progress tracker
        Returns:
        true if created successfully
      • importGeoPackage

        boolean importGeoPackage​(String name,
                                 URL url,
                                 boolean override)
        Import a GeoPackage file from a URL
        Parameters:
        name - GeoPackage name
        url - url
        override - override flag
        Returns:
        true if created successfully
      • importGeoPackage

        boolean importGeoPackage​(String name,
                                 URL url,
                                 boolean override,
                                 GeoPackageProgress progress)
        Import a GeoPackage file from a URL
        Parameters:
        name - GeoPackage name
        url - url
        override - override flag
        progress - progress tracker
        Returns:
        true if created successfully
      • exportGeoPackage

        void exportGeoPackage​(String database,
                              File directory)
        Export a GeoPackage database to a file
        Parameters:
        database - database name
        directory - export directory
      • exportGeoPackage

        void exportGeoPackage​(String database,
                              File directory,
                              GeoPackageProgress progress)
        Export a GeoPackage database to a file
        Parameters:
        database - database name
        directory - export directory
        progress - progress tracker
        Since:
        5.0.0
      • exportGeoPackage

        void exportGeoPackage​(String database,
                              String name,
                              File directory)
        Export a GeoPackage database to a file
        Parameters:
        database - database name
        name - name
        directory - export directory
      • exportGeoPackage

        void exportGeoPackage​(String database,
                              String name,
                              File directory,
                              GeoPackageProgress progress)
        Export a GeoPackage database to a file
        Parameters:
        database - database name
        name - name
        directory - export directory
        progress - progress tracker
        Since:
        5.0.0
      • exportGeoPackage

        void exportGeoPackage​(String database,
                              androidx.documentfile.provider.DocumentFile file)
        Export a GeoPackage database to a document file
        Parameters:
        database - database name
        file - export document file
        Since:
        5.0.0
      • exportGeoPackage

        void exportGeoPackage​(String database,
                              androidx.documentfile.provider.DocumentFile file,
                              GeoPackageProgress progress)
        Export a GeoPackage database to a document file
        Parameters:
        database - database name
        file - export document file
        progress - progress tracker
        Since:
        5.0.0
      • open

        GeoPackage open​(String database)
        Open the database
        Parameters:
        database - database name
        Returns:
        open GeoPackage
      • open

        GeoPackage open​(String database,
                        boolean writable)
        Open the database
        Parameters:
        database - database name
        writable - true to open as writable, false as read only
        Returns:
        open GeoPackage
        Since:
        2.0.1
      • openExternal

        GeoPackage openExternal​(File path)
        Open an external GeoPackage
        Parameters:
        path - full file path
        Returns:
        open GeoPackage
        Since:
        5.1.0
      • openExternal

        GeoPackage openExternal​(File path,
                                boolean writable)
        Open an external GeoPackage
        Parameters:
        path - full file path
        writable - true to open as writable, false as read only
        Returns:
        5.1.0
      • openExternal

        GeoPackage openExternal​(String path)
        Open an external GeoPackage
        Parameters:
        path - full file path
        Returns:
        open GeoPackage
        Since:
        5.1.0
      • openExternal

        GeoPackage openExternal​(String path,
                                boolean writable)
        Open an external GeoPackage
        Parameters:
        path - full file path
        writable - true to open as writable, false as read only
        Returns:
        5.1.0
      • openExternal

        GeoPackage openExternal​(androidx.documentfile.provider.DocumentFile file)
        Open an external GeoPackage
        Parameters:
        file - document file
        Returns:
        open GeoPackage
        Since:
        5.1.0
      • openExternal

        GeoPackage openExternal​(androidx.documentfile.provider.DocumentFile file,
                                boolean writable)
        Open an external GeoPackage
        Parameters:
        file - document file
        writable - true to open as writable, false as read only
        Returns:
        5.1.0
      • isImportHeaderValidation

        boolean isImportHeaderValidation()
        Is import database header validation enabled. This causes a small time increase when importing a database to check the header bytes. On by default.
        Returns:
        true if enabled
        Since:
        1.1.1
      • setImportHeaderValidation

        void setImportHeaderValidation​(boolean enabled)
        Set the import database header validation setting. This causes a small time increase when importing a database to check the header bytes. On by default.
        Parameters:
        enabled - true to enable, false to disable
        Since:
        1.1.1
      • isImportIntegrityValidation

        boolean isImportIntegrityValidation()
        Is import database integrity validation enabled. This causes a noticeable time increase when importing a database to check the database integrity. Off by default.
        Returns:
        true if enabled
        Since:
        1.1.1
      • setImportIntegrityValidation

        void setImportIntegrityValidation​(boolean enabled)
        Set the import database integrity validation setting. This causes a noticeable time increase when importing a database to check the database integrity. Off by default.
        Parameters:
        enabled - true to enable, false to disable
        Since:
        1.1.1
      • isOpenHeaderValidation

        boolean isOpenHeaderValidation()
        Is open database header validation enabled. This causes a small time increase when opening a database to check the header bytes. Off by default.
        Returns:
        true if enabled
        Since:
        1.1.1
      • setOpenHeaderValidation

        void setOpenHeaderValidation​(boolean enabled)
        Set the open database header validation setting. This causes a small time increase when opening a database to check the header bytes. Off by default.
        Parameters:
        enabled - true to enable, false to disable
        Since:
        1.1.1
      • isOpenIntegrityValidation

        boolean isOpenIntegrityValidation()
        Is open database integrity validation enabled. This causes a noticeable time increase when opening a database to check the database integrity. Off by default.
        Returns:
        true if enabled
        Since:
        1.1.1
      • setOpenIntegrityValidation

        void setOpenIntegrityValidation​(boolean enabled)
        Set the open database integrity validation setting. This causes a noticeable time increase when opening a database to check the database integrity. Off by default.
        Parameters:
        enabled - true to enable, false to disable
        Since:
        1.1.1
      • isSqliteWriteAheadLogging

        boolean isSqliteWriteAheadLogging()
        Is the SQLite write ahead logging setting enabled for connections. Off by default.
        Returns:
        write ahead logging state
        Since:
        3.1.0
      • setSqliteWriteAheadLogging

        void setSqliteWriteAheadLogging​(boolean enabled)
        Set the SQLite write ahead logging setting for connections. Off by default.
        Parameters:
        enabled - true to enable, false to disable
        Since:
        3.1.0
      • validate

        boolean validate​(String database)
        Validate the database header and integrity.
        Parameters:
        database - database name
        Returns:
        true if valid, false if not
        Since:
        1.1.1
      • validateHeader

        boolean validateHeader​(String database)
        Validate the database header. Checks the beginning bytes for the SQLite header string.
        Parameters:
        database - database name
        Returns:
        true if valid, false if not
        Since:
        1.1.1
      • validateIntegrity

        boolean validateIntegrity​(String database)
        Validate the database integrity. Performs a database integrity ok check.
        Parameters:
        database - database name
        Returns:
        true if valid, false if not
        Since:
        1.1.1
      • copy

        boolean copy​(String database,
                     String databaseCopy)
        Copy the database
        Parameters:
        database - database name
        databaseCopy - database copy name
        Returns:
        true if copied
      • copy

        boolean copy​(String database,
                     String databaseCopy,
                     GeoPackageProgress progress)
        Copy the database
        Parameters:
        database - database name
        databaseCopy - database copy name
        progress - progress tracker
        Returns:
        true if copied
        Since:
        5.0.0
      • rename

        boolean rename​(String database,
                       String newDatabase)
        Rename the database to the new name
        Parameters:
        database - database name
        newDatabase - new database name
        Returns:
        true if renamed
      • importGeoPackageAsExternalLink

        boolean importGeoPackageAsExternalLink​(File path)
        Import an GeoPackage as an external file link without copying locally
        Parameters:
        path - full file path
        Returns:
        true if imported successfully
        Since:
        5.0.0
      • importGeoPackageAsExternalLink

        boolean importGeoPackageAsExternalLink​(File path,
                                               String database)
        Import an GeoPackage as an external file link without copying locally
        Parameters:
        path - full file path
        database - name to reference the database
        Returns:
        true if imported successfully
      • importGeoPackageAsExternalLink

        boolean importGeoPackageAsExternalLink​(File path,
                                               boolean override)
        Import an GeoPackage as an external file link without copying locally
        Parameters:
        path - full file path
        override - true to delete an existing database
        Returns:
        true if imported successfully
        Since:
        5.0.0
      • importGeoPackageAsExternalLink

        boolean importGeoPackageAsExternalLink​(File path,
                                               String database,
                                               boolean override)
        Import an GeoPackage as an external file link without copying locally
        Parameters:
        path - full file path
        database - name to reference the database
        override - true to delete an existing database
        Returns:
        true if imported successfully
        Since:
        1.2.7
      • importGeoPackageAsExternalLink

        boolean importGeoPackageAsExternalLink​(String path)
        Import an GeoPackage as an external file link without copying locally
        Parameters:
        path - full file path
        Returns:
        true if imported successfully
        Since:
        5.0.0
      • importGeoPackageAsExternalLink

        boolean importGeoPackageAsExternalLink​(String path,
                                               String database)
        Import an GeoPackage as an external file link without copying locally
        Parameters:
        path - full file path
        database - name to reference the database
        Returns:
        true if imported successfully
      • importGeoPackageAsExternalLink

        boolean importGeoPackageAsExternalLink​(String path,
                                               boolean override)
        Import an GeoPackage as an external file link without copying locally
        Parameters:
        path - full file path
        override - true to delete an existing database
        Returns:
        true if imported successfully
        Since:
        5.0.0
      • importGeoPackageAsExternalLink

        boolean importGeoPackageAsExternalLink​(String path,
                                               String database,
                                               boolean override)
        Import an GeoPackage as an external file link without copying locally
        Parameters:
        path - full file path
        database - name to reference the database
        override - true to delete an existing database
        Returns:
        true if imported successfully
        Since:
        1.2.7
      • importGeoPackageAsExternalLink

        boolean importGeoPackageAsExternalLink​(androidx.documentfile.provider.DocumentFile file)
        Import an GeoPackage as an external file link without copying locally
        Parameters:
        file - document file
        Returns:
        true if imported successfully
        Since:
        5.0.0
      • importGeoPackageAsExternalLink

        boolean importGeoPackageAsExternalLink​(androidx.documentfile.provider.DocumentFile file,
                                               boolean override)
        Import an GeoPackage as an external file link without copying locally
        Parameters:
        file - document file
        override - true to delete an existing database
        Returns:
        true if imported successfully
        Since:
        5.0.0
      • importGeoPackageAsExternalLink

        boolean importGeoPackageAsExternalLink​(androidx.documentfile.provider.DocumentFile file,
                                               String database)
        Import an GeoPackage as an external file link without copying locally
        Parameters:
        file - document file
        database - name to reference the database
        Returns:
        true if imported successfully
        Since:
        5.0.0
      • importGeoPackageAsExternalLink

        boolean importGeoPackageAsExternalLink​(androidx.documentfile.provider.DocumentFile file,
                                               String database,
                                               boolean override)
        Import an GeoPackage as an external file link without copying locally
        Parameters:
        file - document file
        database - name to reference the database
        override - true to delete an existing database
        Returns:
        true if imported successfully
        Since:
        5.0.0