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 void
closeStream
(@Nullable PGStream newStream) Safely close the given stream.static QueryExecutor
openConnection
(HostSpec[] hostSpecs, Properties info) Establishes and initializes a new connection.abstract QueryExecutor
openConnectionImpl
(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
null
if 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.
-