Class PgJdbcLoader
java.lang.Object
org.pgcodekeeper.core.database.base.loader.AbstractLoader<T>
org.pgcodekeeper.core.database.base.loader.AbstractJdbcLoader<PgDatabase>
org.pgcodekeeper.core.database.pg.loader.PgJdbcLoader
- All Implemented Interfaces:
IJdbcLoader,ILoader
JDBC-based database schema loader for PostgreSQL databases.
Reads database schemas, functions, views, tables, types, sequences, extensions, and other objects from a PostgreSQL database.
Supports timezone configuration and Greenplum database detection.
Extends JdbcLoaderBase to provide PostgreSQL-specific loading functionality.
-
Constructor Summary
ConstructorsConstructorDescriptionPgJdbcLoader(IJdbcConnector connector, String timezone, DiffSettings diffSettings) Creates a new PostgreSQL JDBC loader with the specified parameters. -
Method Summary
Modifier and TypeMethodDescriptiongetCachedTypeByOid(Long oid) longgetRoleByOid(long oid) booleanvoidpreLoad()voidsetAuthor(AbstractStatement st, ResultSet res) voidsetOwner(AbstractStatement statement, long ownerOid) voidsetPrivileges(AbstractStatement st, String aclItemsArrayAsString, String schemaName) voidsetPrivileges(AbstractStatement st, String aclItemsArrayAsString, String columnName, String schemaName) voidsetPrivileges(PgColumn column, PgAbstractTable t, String aclItemsArrayAsString, String schemaName) <T> voidsubmitAntlrTask(String sql, Function<SQLParser, T> parserCtxReader, Consumer<T> finalizer) <T> voidsubmitPlpgsqlTask(String sql, Function<SQLParser, T> parserCtxReader, Consumer<T> finalizer) Methods inherited from class org.pgcodekeeper.core.database.base.loader.AbstractJdbcLoader
getConnection, getCurrentLocation, getRunner, getSchema, getSchemas, getStatement, getVersion, putSchema, setComment, setCurrentObject, setCurrentOperation, setOwner, setVersionMethods inherited from class org.pgcodekeeper.core.database.base.loader.AbstractLoader
addError, getDatabase, getDatabaseName, getErrors, getMonitor, getSettings, isAllowedSchema, load, loadAndAnalyzeMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.pgcodekeeper.core.database.api.loader.ILoader
getDatabase, getDatabaseName, getErrors, getSettings, load, loadAndAnalyze
-
Constructor Details
-
PgJdbcLoader
Creates a new PostgreSQL JDBC loader with the specified parameters.- Parameters:
connector- the JDBC connector for establishing database connectionstimezone- the timezone to set for the database connectiondiffSettings- unified context object containing settings, ignore list, and error accumulator
-
-
Method Details
-
preLoad
public void preLoad() -
loadInternal
- Throws:
IOExceptionInterruptedException
-
submitAntlrTask
-
submitPlpgsqlTask
-
setPrivileges
-
setPrivileges
public void setPrivileges(PgColumn column, PgAbstractTable t, String aclItemsArrayAsString, String schemaName) -
setPrivileges
public void setPrivileges(AbstractStatement st, String aclItemsArrayAsString, String columnName, String schemaName) -
setOwner
-
setAuthor
- Throws:
SQLException
-
getLastSysOid
public long getLastSysOid() -
getExtensionSchema
-
isGreenplumDb
public boolean isGreenplumDb() -
getCachedTypeByOid
-
getRoleByOid
-