# All Classes and Interfaces

Class
Description
AbstractBlobClob
This class holds all of the methods common to both Blobs and Clobs.
AbstractCreateSlotBuilder<T>
AbstractStreamBuilder<T>
AdaptiveFetchCache
The main purpose of this class is to handle adaptive fetching process.
AdaptiveFetchCacheEntry
ArrayAssistant
Implement this interface and register the its instance to ArrayAssistantRegistry, to let Postgres driver to support more array type.
ArrayAssistantRegistry
Array assistants register here.
AuthenticationPlugin
AuthenticationRequestType
AutoSave
BaseConnection
Driver-internal connection interface.
BaseDataSource
Base class for data sources and related classes.
BaseStatement
Driver-internal statement interface.
BatchedQuery
Purpose of this object is to support batched query re write behaviour.
BatchResultHandler
Internal class, it is not a part of public API.
BlobInputStream
This is an implementation of an InputStream from a large object.
BlobOutputStream
This implements a basic output stream that writes to a LargeObject.
ByteBufferByteStreamWriter
A `ByteStreamWriter` that writes a `java.nio.ByteBuffer` to a byte array parameter.
ByteConverter
Helper methods to parse java base types from byte arrays.
ByteStreamWriter
A class that can be used to set a byte array parameter by writing to an OutputStream.
ByteStreamWriter.ByteStreamTarget
Provides a target to write bytes to.
CachedQuery
Stores information on the parsed JDBC query.
CandidateHost
Candidate host to be connected.
CanEstimateSize
ChainedCommonCreateSlotBuilder<T>
Fluent interface for specify common parameters for create Logical and Physical replication slot.
ChainedCommonStreamBuilder<T>
Fluent interface for specify common parameters for Logical and Physical replication.
ChainedCreateReplicationSlotBuilder
Fluent interface for specify common parameters for Logical and Physical replication.
ChainedLogicalCreateSlotBuilder
Logical replication slot specific parameters.
ChainedLogicalStreamBuilder
ChainedPhysicalCreateSlotBuilder
Physical replication slot specific parameters.
ChainedPhysicalStreamBuilder
ChainedStreamBuilder
Start point for fluent API that build replication stream(logical or physical).
CommandCompleteParser
Parses `oid` and `rows` from a `CommandComplete (B)` message (end of Execute).
CommonOptions
Common parameters for logical and physical replication.
ConnectionFactory
Handles protocol-specific connection setup.
ConnectionFactoryImpl
ConnectionFactory implementation for version 3 (7.4+) connections.
ConnectionPool
Deprecated.
Please use `PGConnectionPoolDataSource`
CopyDual
Bidirectional via copy stream protocol.
CopyDualImpl
CopyIn
Copy bulk data from client into a PostgreSQL table very fast.
CopyInImpl
COPY FROM STDIN operation.
CopyManager
API for PostgreSQL COPY bulk data transfer.
CopyOperation
Exchange bulk data between client and PostgreSQL database tables.
CopyOperationImpl
CopyOut
CopyOutImpl
Anticipated flow of a COPY TO STDOUT operation:
DbKeyStoreSocketFactory
DbKeyStoreSocketFactory.DbKeyStoreSocketException
DefaultJavaSSLFactory
Socket factory that uses Java's default truststore to validate server certificate.
DefaultPGXmlFactoryFactory
Default implementation of PGXmlFactoryFactory that configures each factory per OWASP recommendations.
Driver
The Java SQL framework allows for multiple database drivers.
DriverInfo
Utility class with constants of Driver information.
EmptyStringEntityResolver
Encoding
Representation of a particular character encoding.
EncodingPredictor
Predicts encoding for error messages based on some heuristics.
EncodingPredictor.DecodeResult
In certain cases the encoding is not known for sure (e.g.
EscapedFunctions
Deprecated.
see `EscapedFunctions2`
EscapedFunctions2
This class stores supported escaped function.
EscapeSyntaxCallMode
Specifies whether a SELECT/CALL statement is used for the underlying SQL for JDBC escape call syntax: 'select' means to always use SELECT, 'callIfNoReturn' means to use CALL if there is no return parameter (otherwise use SELECT), and 'call' means to always use CALL.
ExpressionProperties
Fastpath
This class implements the Fastpath api.
FastpathArg
Each fastpath call requires an array of arguments, the number and type dependent on the function being called.
Field
FieldMetadata
This is an internal class to hold field metadata info like table name, column name, etc.
FieldMetadata.Key
FixedLengthOutputStream
A stream that refuses to write more than a maximum number of bytes.
Gettable<K,V>
GettableHashMap<K,V>
GlobalHostStatusTracker
Keeps track of HostSpec targets in a global map.
GssEncAction
GSSEncMode
GSSInputStream
GSSOutputStream
Output stream that wraps each packed with GSS encryption.
GT
This class provides a wrapper around a gettext message catalog that can provide a localized version of error messages.
HostChooser
Lists connections in preferred order.
HostChooserFactory
Chooses a `HostChooser` instance based on the number of hosts and properties.
HostRequirement
Describes the required server type.
HostSpec
Simple container for host and port.
HostStatus
Known state of a server.
HStoreConverter
IntList
A specialized class to store a list of `int` values, so it does not need auto-boxing.
IntSet
Read-optimized `Set` for storing `Oid` values.
ISSPIClient
Use Waffle-JNI to support SSPI authentication when PgJDBC is running on a Windows client and talking to a Windows server.
JavaVersion
Jdbc3ConnectionPool
Deprecated.
Please use `PGConnectionPoolDataSource`
Jdbc3PoolingDataSource
Deprecated.
Since 42.0.0, see `PGPoolingDataSource`
Jdbc3SimpleDataSource
Deprecated.
Please use `PGSimpleDataSource`
JdbcBlackHole
JdbcCallParseInfo
Contains parse flags from `Parser.modifyJdbcCall(String, boolean, int, EscapeSyntaxCallMode)`.
KerberosTicket
LargeObject
This class provides the basic methods required to run the interface, plus a pair of methods that provide InputStream and OutputStream classes for this object.
LargeObjectManager
This class implements the large object interface to org.postgresql.
LazyCleaner
LazyCleaner is a utility class that allows to register objects for deferred cleanup.
LazyCleaner.Cleanable<T>
LazyCleaner.CleaningAction<T>
LazyKeyManager
A Key manager that only loads the keys, if necessary.
LegacyInsecurePGXmlFactoryFactory
LibPQFactory
Deprecated.
prefer `LibPQFactory`
LibPQFactory
Provide an SSLSocketFactory that is compatible with the libpq behaviour.
LibPQFactory.ConsoleCallbackHandler
A CallbackHandler that reads the password from the console or returns the password given to its constructor.
LogicalCreateSlotBuilder
LogicalReplicationOptions
LogicalStreamBuilder
LogSequenceNumber
LSN (Log Sequence Number) data which is a pointer to a location in the XLOG.
LogWriterHandler
LruCache<Key,Value>
Caches values in simple least-recently-accessed order.
LruCache.CreateAction<Key,Value>
When the entry is not present in cache, this create action is used to create one.
LruCache.EvictAction<Value>
Action that is invoked when the entry is removed from the cache.
MakeGSS
MakeSSL
MD5Digest
MD5-based utility function to obfuscate passwords before network transmission.
messages_bg
messages_cs
messages_de
messages_es
messages_fr
messages_it
messages_ja
messages_nl
messages_pl
messages_pt_BR
messages_ru
messages_sr
messages_tr
messages_zh_CN
messages_zh_TW
NativeQuery
Represents a query that is ready for execution by backend.
NonValidatingFactory
Provide a SSLSocketFactory that allows SSL connections to be made without validating the server's certificate.
NonValidatingFactory.NonValidatingTM
Notification
NTDSAPIWrapper
NullErrorHandler
Error handler that silently suppresses all errors.
Nullness
The methods in this class allow to cast nullable reference to a non-nullable one.
NumberParser
Optimised byte[] to number parser.
ObjectFactory
Helper class to instantiate objects.
Oid
Provides constants for well-known backend OIDs for the types we commonly use.
OSUtil
Operating system specifics
ParameterList
Abstraction of a list of parameters to be substituted into a Query.
Parser
Basic query parser infrastructure.
PasswordUtil
PgArray
Array is used collect one column of query result data.
PGBinaryObject
PGBinaryObject is a interface that classes extending `PGobject` can use to take advantage of more optimal binary encoding of the data type.
PGBindException
PgBlob
PGbox
This represents the box datatype within org.postgresql.
PgBufferedOutputStream
Buffered output stream.
PGBundleActivator
This class is an OSGi Bundle Activator and should only be used internally by the OSGi Framework.
PGbytea
Converts to and from the postgresql bytea datatype used by the backend.
PGcircle
This represents org.postgresql's circle datatype, consisting of a point and a radius.
PgClob
PgConnection
PGConnection
This interface defines the public PostgreSQL extensions to java.sql.Connection.
PGConnectionPoolDataSource
PostgreSQL implementation of ConnectionPoolDataSource.
PGCopyInputStream
InputStream for reading from a PostgreSQL COPY TO STDOUT operation.
PGCopyOutputStream
OutputStream for buffered input into a PostgreSQL COPY FROM STDIN operation.
PgDatabaseMetaData
PGDataSourceFactory
This factory service is designed to be used in OSGi Enterprise environments to create and configure JDBC data-sources.
PGEnvironment
Some environment variables are intended to have same meaning as libpq describes here: https://www.postgresql.org/docs/current/libpq-envars.html
PGInterval
This implements a class that handles the PostgreSQL interval type.
PGjdbcHostnameVerifier
PGJDBCMain
PGline
This implements a line represented by the linear equation Ax + By + C = 0.
PGlseg
This implements a lseg (line segment) consisting of two points.
PgMessageType
PostgreSQL protocol message types
PGmoney
This implements a class that handles the PostgreSQL money and cash types.
PGNotification
This interface defines the public PostgreSQL extension for Notifications.
PGobject
PGobject is a class used to describe unknown types An unknown type is any type that is unknown by JDBC Standards.
PGObjectFactory
Returns a DataSource-ish thing based on a JNDI reference.
PgParameterMetaData
PgPassParser
helps to read Password File.
PGpath
This implements a path (a multiple segmented line, which may be closed).
PGpoint
It maps to the point datatype in org.postgresql.
PGpolygon
This implements the polygon datatype within PostgreSQL.
PGPooledConnection
PostgreSQL implementation of the PooledConnection interface.
PGPoolingDataSource
Deprecated.
Since 42.0.0, instead of this class you should use a fully featured connection pool like HikariCP, vibur-dbcp, commons-dbcp, c3p0, etc.
PGProperty
All connection parameters that can be either set in JDBC URL, in Driver properties or in datasource setters.
PGPropertyMaxResultBufferParser
PGPropertyUtil
routines to support PG properties
PGRefCursorResultSet
A ref cursor based result set.
PGReplicationConnection
Api available only if connection was create with required for replication properties: `PGProperty.REPLICATION` and `PGProperty.ASSUME_MIN_SERVER_VERSION`.
PGReplicationConnectionImpl
PGReplicationStream
Not tread safe replication stream (though certain methods can be safely called by different threads).
PgResultSet
PgResultSetMetaData
PGResultSetMetaData
PgServiceConfParser
helps to read Connection Service File.
PGSimpleDataSource
Simple DataSource which does not perform connection pooling.
PgSQLXML
PgStatement
PGStatement
This interface defines the public PostgreSQL extensions to java.sql.Statement.
PGStream
Wrapper around the raw connection to the server that implements some basic primitives (reading/writing formatted data, doing string encoding, etc).
PGTime
This class augments the Java built-in Time to allow for explicit setting of the time zone.
PGTimestamp
This class augments the Java built-in Timestamp to allow for explicit setting of the time zone.
PGtokenizer
This class is used to tokenize the text output of org.postgres.
PGXAConnection
The PostgreSQL implementation of `XAResource`.
PGXADataSource
XA-enabled DataSource implementation.
PGXADataSourceFactory
An ObjectFactory implementation for PGXADataSource-objects.
PGXAException
A convenience subclass of `XAException` which makes it easy to create an instance of `XAException` with a human-readable message, a `Throwable` cause, and an XA error code.
PGXmlFactoryFactory
PhysicalCreateSlotBuilder
PhysicalReplicationOptions
PhysicalStreamBuilder
PKCS12KeyManager
PoolingDataSource
Deprecated.
Since 42.0.0, see `PGPoolingDataSource`
PreferQueryMode
Specifies which mode is used to execute queries to database: simple means ('Q' execute, no parse, no bind, text mode only), extended means always use bind/execute messages, extendedForPrepared means extended for prepared statements only.
ProtocolVersion
Enum representing the supported PostgreSQL protocol versions.
Provider<T>
Represents a provider of results.
PSQLException
PSQLSavepoint
PSQLState
This class is used for holding SQLState codes.
PSQLWarning
Query
Abstraction of a generic Query, hiding the details of any protocol-version-specific data needed to execute the query efficiently.
QueryExecutor
Abstracts the protocol-specific details of executing a query.
QueryExecutorBase
QueryExecutorCloseAction
The action performs connection cleanup, so it is properly terminated from the backend point of view.
QueryExecutorImpl
QueryExecutor implementation for the V3 protocol.
ReaderInputStream
ReaderInputStream accepts a UTF-16 char stream (Reader) as input and converts it to a UTF-8 byte stream (InputStream) as output.
ReplicationCreateSlotBuilder
ReplicationProtocol
Abstracts the protocol-specific details of physic and logic replication.
ReplicationSlotInfo
Information returned on replication slot creation.
ReplicationStreamBuilder
ReplicationType
ResourceLock
Extends a ReentrantLock for use in try-with-resources block.
ResultCursor
Abstraction of a cursor over a returned resultset.
ResultHandler
Callback interface for passing query results from the protocol-specific layer to the protocol-independent JDBC implementation code.
ResultHandlerBase
Empty implementation of `ResultHandler` interface.
ResultHandlerDelegate
Internal to the driver class, please do not use in the application.
ResultWrapper
Helper class that storing result info.
ServerErrorMessage
ServerVersion
Enumeration for PostgreSQL versions.
SetupQueryRunner
Poor man's Statement & ResultSet, used for initial queries while we're still initializing the system.
SharedTimer
SimpleDataSource
Deprecated.
Please use `PGSimpleDataSource`
SingleCertValidatingFactory
Provides a SSLSocketFactory that authenticates the remote server against an explicit pre-shared SSL certificate.
SingleCertValidatingFactory.SingleCertTrustManager
SocketFactoryFactory
Instantiates `SocketFactory` based on the `PGProperty.SOCKET_FACTORY`.
SourceStreamIOException
A marker exception class to distinguish between "IOException when reading the data" and "IOException when writing the data" when transferring data from one stream to another.
SqlCommand
Data Modification Language inspection support.
SqlCommandType
Type information inspection support.
SqlSerializationContext
Specifies the properties required to convert SQL to String.
SslMode
SslNegotiation
SSPIClient
Use Waffle-JNI to support SSPI authentication when PgJDBC is running on a Windows client and talking to a Windows server.
StartLogicalReplicationCallback
StartPhysicalReplicationCallback
StreamWrapper
Wrapper around a length-limited InputStream.
TimestampUtils
Misc utils for handling time and date values.
TransactionState
Tuple
Class representing a row in a `ResultSet`.
TypeInfo
TypeInfoCache
TypeTransferModeRegistry
URLCoder
This class helps with URL encoding and decoding.
Utils
Collection of utilities used by the protocol-level code.
UUIDArrayAssistant
V3PGReplicationStream
V3ReplicationProtocol
Version
VisibleBufferedInputStream
A faster version of BufferedInputStream.
WrappedFactory
Provide a wrapper to a real SSLSocketFactory delegating all calls to the contained instance.