Class BinaryRowProtocol
- java.lang.Object
-
- org.mariadb.jdbc.internal.com.read.resultset.rowprotocol.RowProtocol
-
- org.mariadb.jdbc.internal.com.read.resultset.rowprotocol.BinaryRowProtocol
-
public class BinaryRowProtocol extends RowProtocol
-
-
Field Summary
Fields Modifier and Type Field Description private ColumnDefinition[]columnDefinitionprivate intcolumnInformationLength-
Fields inherited from class org.mariadb.jdbc.internal.com.read.resultset.rowprotocol.RowProtocol
BIT_LAST_FIELD_NOT_NULL, BIT_LAST_FIELD_NULL, BIT_LAST_ZERO_DATE, buf, index, isIntegerRegex, lastValueNull, length, maxFieldSize, NULL_LENGTH, options, pos, TEXT_LOCAL_DATE_TIME, TEXT_OFFSET_DATE_TIME, TEXT_ZONED_DATE_TIME, TINYINT1_IS_BIT, YEAR_IS_DATE_TYPE
-
-
Constructor Summary
Constructors Constructor Description BinaryRowProtocol(ColumnDefinition[] columnDefinition, int columnInformationLength, int maxFieldSize, Options options)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.math.BigDecimalgetInternalBigDecimal(ColumnDefinition columnInfo)Get BigDecimal from raw binary format.java.math.BigIntegergetInternalBigInteger(ColumnDefinition columnInfo)Get BigInteger from raw binary format.booleangetInternalBoolean(ColumnDefinition columnInfo)Get boolean from raw binary format.bytegetInternalByte(ColumnDefinition columnInfo)Get byte from raw binary format.java.sql.DategetInternalDate(ColumnDefinition columnInfo, java.util.Calendar cal, java.util.TimeZone timeZone)Get date from raw binary format.doublegetInternalDouble(ColumnDefinition columnInfo)Get double from raw binary format.floatgetInternalFloat(ColumnDefinition columnInfo)Get float from raw binary format.intgetInternalInt(ColumnDefinition columnInfo)Get int from raw binary format.java.time.LocalDategetInternalLocalDate(ColumnDefinition columnInfo, java.util.TimeZone timeZone)Get LocalDate from raw binary format.java.time.LocalTimegetInternalLocalTime(ColumnDefinition columnInfo, java.util.TimeZone timeZone)Get LocalTime from raw binary format.longgetInternalLong(ColumnDefinition columnInfo)Get long from raw binary format.java.lang.ObjectgetInternalObject(ColumnDefinition columnInfo, java.util.TimeZone timeZone)Get Object from raw binary format.java.time.OffsetTimegetInternalOffsetTime(ColumnDefinition columnInfo, java.util.TimeZone timeZone)Get OffsetTime from raw binary format.shortgetInternalShort(ColumnDefinition columnInfo)Get short from raw binary format.java.lang.StringgetInternalString(ColumnDefinition columnInfo, java.util.Calendar cal, java.util.TimeZone timeZone)Get string from raw binary format.java.sql.TimegetInternalTime(ColumnDefinition columnInfo, java.util.Calendar cal, java.util.TimeZone timeZone)Get time from raw binary format.java.sql.TimestampgetInternalTimestamp(ColumnDefinition columnInfo, java.util.Calendar userCalendar, java.util.TimeZone timeZone)Get timestamp from raw binary format.java.lang.StringgetInternalTimeString(ColumnDefinition columnInfo)Get Time in string format from raw binary format.java.time.ZonedDateTimegetInternalZonedDateTime(ColumnDefinition columnInfo, java.lang.Class clazz, java.util.TimeZone timeZone)Get ZonedDateTime from raw binary format.booleanisBinaryEncoded()Indicate if data is binary encoded.voidsetPosition(int newIndex)Set length and pos indicator to asked index.-
Methods inherited from class org.mariadb.jdbc.internal.com.read.resultset.rowprotocol.RowProtocol
extractNanos, getInternalMediumInt, getInternalSmallInt, getInternalTinyInt, getLengthMaxFieldSize, getMaxFieldSize, lastValueWasNull, parseBit, rangeCheck, rangeCheck, resetRow, wasNull, zeroFillingIfNeeded
-
-
-
-
Field Detail
-
columnDefinition
private final ColumnDefinition[] columnDefinition
-
columnInformationLength
private final int columnInformationLength
-
-
Constructor Detail
-
BinaryRowProtocol
public BinaryRowProtocol(ColumnDefinition[] columnDefinition, int columnInformationLength, int maxFieldSize, Options options)
Constructor.- Parameters:
columnDefinition- column information.columnInformationLength- number of columnsmaxFieldSize- max field sizeoptions- connection options
-
-
Method Detail
-
setPosition
public void setPosition(int newIndex)
Set length and pos indicator to asked index.- Specified by:
setPositionin classRowProtocol- Parameters:
newIndex- index (0 is first).- See Also:
- Resultset row protocol documentation
-
getInternalString
public java.lang.String getInternalString(ColumnDefinition columnInfo, java.util.Calendar cal, java.util.TimeZone timeZone) throws java.sql.SQLException
Get string from raw binary format.- Specified by:
getInternalStringin classRowProtocol- Parameters:
columnInfo- column informationcal- calendartimeZone- time zone- Returns:
- String value of raw bytes
- Throws:
java.sql.SQLException- if conversion failed
-
getInternalInt
public int getInternalInt(ColumnDefinition columnInfo) throws java.sql.SQLException
Get int from raw binary format.- Specified by:
getInternalIntin classRowProtocol- Parameters:
columnInfo- column information- Returns:
- int value
- Throws:
java.sql.SQLException- if column is not numeric or is not in Integer bounds.
-
getInternalLong
public long getInternalLong(ColumnDefinition columnInfo) throws java.sql.SQLException
Get long from raw binary format.- Specified by:
getInternalLongin classRowProtocol- Parameters:
columnInfo- column information- Returns:
- long value
- Throws:
java.sql.SQLException- if column is not numeric or is not in Long bounds (for big unsigned values)
-
getInternalFloat
public float getInternalFloat(ColumnDefinition columnInfo) throws java.sql.SQLException
Get float from raw binary format.- Specified by:
getInternalFloatin classRowProtocol- Parameters:
columnInfo- column information- Returns:
- float value
- Throws:
java.sql.SQLException- if column is not numeric or is not in Float bounds.
-
getInternalDouble
public double getInternalDouble(ColumnDefinition columnInfo) throws java.sql.SQLException
Get double from raw binary format.- Specified by:
getInternalDoublein classRowProtocol- Parameters:
columnInfo- column information- Returns:
- double value
- Throws:
java.sql.SQLException- if column is not numeric or is not in Double bounds (unsigned columns).
-
getInternalBigDecimal
public java.math.BigDecimal getInternalBigDecimal(ColumnDefinition columnInfo) throws java.sql.SQLException
Get BigDecimal from raw binary format.- Specified by:
getInternalBigDecimalin classRowProtocol- Parameters:
columnInfo- column information- Returns:
- BigDecimal value
- Throws:
java.sql.SQLException- if column is not numeric
-
getInternalDate
public java.sql.Date getInternalDate(ColumnDefinition columnInfo, java.util.Calendar cal, java.util.TimeZone timeZone) throws java.sql.SQLException
Get date from raw binary format.- Specified by:
getInternalDatein classRowProtocol- Parameters:
columnInfo- column informationcal- calendartimeZone- time zone- Returns:
- date value
- Throws:
java.sql.SQLException- if column is not compatible to Date
-
getInternalTime
public java.sql.Time getInternalTime(ColumnDefinition columnInfo, java.util.Calendar cal, java.util.TimeZone timeZone) throws java.sql.SQLException
Get time from raw binary format.- Specified by:
getInternalTimein classRowProtocol- Parameters:
columnInfo- column informationcal- calendartimeZone- time zone- Returns:
- Time value
- Throws:
java.sql.SQLException- if column cannot be converted to Time
-
getInternalTimestamp
public java.sql.Timestamp getInternalTimestamp(ColumnDefinition columnInfo, java.util.Calendar userCalendar, java.util.TimeZone timeZone) throws java.sql.SQLException
Get timestamp from raw binary format.- Specified by:
getInternalTimestampin classRowProtocol- Parameters:
columnInfo- column informationuserCalendar- user calendartimeZone- time zone- Returns:
- timestamp value
- Throws:
java.sql.SQLException- if column type is not compatible
-
getInternalObject
public java.lang.Object getInternalObject(ColumnDefinition columnInfo, java.util.TimeZone timeZone) throws java.sql.SQLException
Get Object from raw binary format.- Specified by:
getInternalObjectin classRowProtocol- Parameters:
columnInfo- column informationtimeZone- time zone- Returns:
- Object value
- Throws:
java.sql.SQLException- if column type is not compatible
-
getInternalBoolean
public boolean getInternalBoolean(ColumnDefinition columnInfo) throws java.sql.SQLException
Get boolean from raw binary format.- Specified by:
getInternalBooleanin classRowProtocol- Parameters:
columnInfo- column information- Returns:
- boolean value
- Throws:
java.sql.SQLException- if column type doesn't permit conversion
-
getInternalByte
public byte getInternalByte(ColumnDefinition columnInfo) throws java.sql.SQLException
Get byte from raw binary format.- Specified by:
getInternalBytein classRowProtocol- Parameters:
columnInfo- column information- Returns:
- byte value
- Throws:
java.sql.SQLException- if column type doesn't permit conversion
-
getInternalShort
public short getInternalShort(ColumnDefinition columnInfo) throws java.sql.SQLException
Get short from raw binary format.- Specified by:
getInternalShortin classRowProtocol- Parameters:
columnInfo- column information- Returns:
- short value
- Throws:
java.sql.SQLException- if column type doesn't permit conversion
-
getInternalTimeString
public java.lang.String getInternalTimeString(ColumnDefinition columnInfo)
Get Time in string format from raw binary format.- Specified by:
getInternalTimeStringin classRowProtocol- Parameters:
columnInfo- column information- Returns:
- time value
-
getInternalBigInteger
public java.math.BigInteger getInternalBigInteger(ColumnDefinition columnInfo) throws java.sql.SQLException
Get BigInteger from raw binary format.- Specified by:
getInternalBigIntegerin classRowProtocol- Parameters:
columnInfo- column information- Returns:
- BigInteger value
- Throws:
java.sql.SQLException- if column type doesn't permit conversion or value is not in BigInteger range
-
getInternalZonedDateTime
public java.time.ZonedDateTime getInternalZonedDateTime(ColumnDefinition columnInfo, java.lang.Class clazz, java.util.TimeZone timeZone) throws java.sql.SQLException
Get ZonedDateTime from raw binary format.- Specified by:
getInternalZonedDateTimein classRowProtocol- Parameters:
columnInfo- column informationclazz- asked classtimeZone- time zone- Returns:
- ZonedDateTime value
- Throws:
java.sql.SQLException- if column type doesn't permit conversion
-
getInternalOffsetTime
public java.time.OffsetTime getInternalOffsetTime(ColumnDefinition columnInfo, java.util.TimeZone timeZone) throws java.sql.SQLException
Get OffsetTime from raw binary format.- Specified by:
getInternalOffsetTimein classRowProtocol- Parameters:
columnInfo- column informationtimeZone- time zone- Returns:
- OffsetTime value
- Throws:
java.sql.SQLException- if column type doesn't permit conversion
-
getInternalLocalTime
public java.time.LocalTime getInternalLocalTime(ColumnDefinition columnInfo, java.util.TimeZone timeZone) throws java.sql.SQLException
Get LocalTime from raw binary format.- Specified by:
getInternalLocalTimein classRowProtocol- Parameters:
columnInfo- column informationtimeZone- time zone- Returns:
- LocalTime value
- Throws:
java.sql.SQLException- if column type doesn't permit conversion
-
getInternalLocalDate
public java.time.LocalDate getInternalLocalDate(ColumnDefinition columnInfo, java.util.TimeZone timeZone) throws java.sql.SQLException
Get LocalDate from raw binary format.- Specified by:
getInternalLocalDatein classRowProtocol- Parameters:
columnInfo- column informationtimeZone- time zone- Returns:
- LocalDate value
- Throws:
java.sql.SQLException- if column type doesn't permit conversion
-
isBinaryEncoded
public boolean isBinaryEncoded()
Indicate if data is binary encoded.- Specified by:
isBinaryEncodedin classRowProtocol- Returns:
- always true.
-
-