Package org.postgresql.core
Class ConnectionFactory
java.lang.Object
org.postgresql.core.ConnectionFactory
- Direct Known Subclasses:
ConnectionFactoryImpl
Handles protocol-specific connection setup.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidcloseStream(@Nullable PGStream newStream) Safely close the given stream.static QueryExecutoropenConnection(HostSpec[] hostSpecs, Properties info) Establishes and initializes a new connection.abstract QueryExecutoropenConnectionImpl(HostSpec[] hostSpecs, Properties info) Implementation ofopenConnection(org.postgresql.util.HostSpec[], java.util.Properties)for a particular protocol version.
-
Constructor Details
-
ConnectionFactory
public ConnectionFactory()
-
-
Method Details
-
openConnection
public static QueryExecutor openConnection(HostSpec[] hostSpecs, Properties info) throws SQLException Establishes and initializes a new connection.If the "protocolVersion" property is specified, only that protocol version is tried. Otherwise, all protocols are tried in order, falling back to older protocols as necessary.
Currently, protocol versions 3 (7.4+) is supported.
- Parameters:
hostSpecs- at least one host and port to connect to; multiple elements for round-robin failoverinfo- extra properties controlling the connection; notably, "password" if present supplies the password to authenticate with.- Returns:
- the new, initialized, connection
- Throws:
SQLException- if the connection could not be established.
-
openConnectionImpl
public abstract QueryExecutor openConnectionImpl(HostSpec[] hostSpecs, Properties info) throws SQLException Implementation ofopenConnection(org.postgresql.util.HostSpec[], java.util.Properties)for a particular protocol version. Implemented by subclasses ofConnectionFactory.- Parameters:
hostSpecs- at least one host and port to connect to; multiple elements for round-robin failoverinfo- extra properties controlling the connection; notably, "password" if present supplies the password to authenticate with.- Returns:
- the new, initialized, connection, or
nullif this protocol version is not supported by the server. - Throws:
SQLException- if the connection could not be established for a reason other than protocol version incompatibility.
-
closeStream
Safely close the given stream.- Parameters:
newStream- The stream to close.
-