Package org.postgresql.core
Class Utils
java.lang.Object
org.postgresql.core.Utils
Collection of utilities used by the protocol-level code.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static void
doAppendEscapedIdentifier
(Appendable sbuf, String value) Common part for appendEscapedIdentifier.private static void
doAppendEscapedLiteral
(Appendable sbuf, String value, boolean standardConformingStrings) Common part forescapeLiteral(StringBuilder, String, boolean)
.static StringBuilder
escapeIdentifier
(StringBuilder sbuf, String value) Escape the given identifiervalue
and append it to the string buildersbuf
.static StringBuilder
escapeLiteral
(StringBuilder sbuf, String value, boolean standardConformingStrings) Escape the given literalvalue
and append it to the string buildersbuf
.static int
parseServerVersionStr
(String serverVersion) Deprecated.static String
toHexString
(byte[] data) Turn a bytearray into a printable form, representing each byte in hex.
-
Constructor Details
-
Utils
public Utils()
-
-
Method Details
-
toHexString
Turn a bytearray into a printable form, representing each byte in hex.- Parameters:
data
- the bytearray to stringize- Returns:
- a hex-encoded printable representation of
data
-
escapeLiteral
public static StringBuilder escapeLiteral(StringBuilder sbuf, String value, boolean standardConformingStrings) throws SQLException Escape the given literalvalue
and append it to the string buildersbuf
. Ifsbuf
isnull
, a new StringBuilder will be returned. The argumentstandardConformingStrings
defines whether the backend expects standard-conforming string literals or allows backslash escape sequences.- Parameters:
sbuf
- the string builder to append to; ornull
value
- the string valuestandardConformingStrings
- if standard conforming strings should be used- Returns:
- the sbuf argument; or a new string builder for sbuf == null
- Throws:
SQLException
- if the string contains a\0
character
-
doAppendEscapedLiteral
private static void doAppendEscapedLiteral(Appendable sbuf, String value, boolean standardConformingStrings) throws SQLException Common part forescapeLiteral(StringBuilder, String, boolean)
.- Parameters:
sbuf
- Either StringBuffer or StringBuilder as we do not expect any IOException to be thrownvalue
- value to appendstandardConformingStrings
- if standard conforming strings should be used- Throws:
SQLException
-
escapeIdentifier
Escape the given identifiervalue
and append it to the string buildersbuf
. Ifsbuf
isnull
, a new StringBuilder will be returned. This method is different from appendEscapedLiteral in that it includes the quoting required for the identifier whileescapeLiteral(StringBuilder, String, boolean)
does not.- Parameters:
sbuf
- the string builder to append to; ornull
value
- the string value- Returns:
- the sbuf argument; or a new string builder for sbuf == null
- Throws:
SQLException
- if the string contains a\0
character
-
doAppendEscapedIdentifier
Common part for appendEscapedIdentifier.- Parameters:
sbuf
- Either StringBuffer or StringBuilder as we do not expect any IOException to be thrown.value
- value to append- Throws:
SQLException
-
parseServerVersionStr
@Deprecated public static int parseServerVersionStr(String serverVersion) throws NumberFormatException Deprecated.use specificVersion
instanceAttempt to parse the server version string into an XXYYZZ form version number.
Returns 0 if the version could not be parsed.
Returns minor version 0 if the minor version could not be determined, e.g. devel or beta releases.
If a single major part like 90400 is passed, it's assumed to be a pre-parsed version and returned verbatim. (Anything equal to or greater than 10000 is presumed to be this form).
The yy or zz version parts may be larger than 99. A NumberFormatException is thrown if a version part is out of range.
- Parameters:
serverVersion
- server version in a XXYYZZ form- Returns:
- server version in number form
- Throws:
NumberFormatException
-
Version
instance