Java SDK Documentation  23.3.0
com.vertica.sdk.BlockWriter Class Reference
Inheritance diagram for com.vertica.sdk.BlockWriter:
Inheritance graph
Collaboration diagram for com.vertica.sdk.BlockWriter:
Collaboration graph

Public Member Functions

 BlockWriter (int rowcount, VerticaType returnType)
 
void addCol (ByteBuffer arg, int colstride, VerticaType dt, String colName)
 
void addCol (ByteBuffer arg, int colstride, VerticaType dt)
 
void addCol (ByteBuffer arg, ByteBuffer da, int colstride, VerticaType dt)
 
void addCol (ByteBuffer arg, ByteBuffer da, int colstride, VerticaType dt, String colName)
 
boolean checkStringUserBlockInfo (int idx)
 
boolean checkTimeUserBlockInfo (int idx)
 
ByteBuffer getColDataAreaRef (int idx)
 
ByteBuffer getColRef (int idx)
 
int getNumCols ()
 
int getNumRows ()
 
BaseDataOID getProcessBlockUserInfoVectorAt (int i)
 
SizedColumnTypes getTypeMetaData ()
 
VString getVStringWriter ()
 Allocates a new VString object to use as output. More...
 
void next ()
 Complete writing this row of output and move to the next row. More...
 
void resetBuffers ()
 
void setBoolean (boolean r)
 Adds a BOOLEAN value to the output row. More...
 
void setBooleanNull ()
 Adds NULL as a BOOLEAN value to the output row.
 
void setDate (java.sql.Date r)
 Adds a DATE value to the output row. More...
 
void setDateNull ()
 Adds NULL as a DATE value to the output row.
 
void setDouble (double r)
 Adds a DOUBLE value to the output row. More...
 
void setDoubleNull ()
 Adds NULL as a DOUBLE value to the output row.
 
void setLong (long r)
 Adds a LONG INTEGER value to the output row. More...
 
void setLongNull ()
 Adds NULL as a LONG INTEGER value to the output row.
 
void setNumeric (BigDecimal bd)
 Allocate a new VNumeric object to use as output. More...
 
void setNumericNull ()
 
void setString (String r)
 Adds a String value to the output row. More...
 
void setStringNull ()
 Adds NULL as a String value to the output row.
 
void setTimestamp (java.sql.Timestamp r)
 Adds a TIMESTAMP value to the output row. More...
 
void setTimestampInfiniteNeg ()
 Adds a '-infinity' TIMESTAMP value to the output row.
 
void setTimestampInfinitePos ()
 Adds a '+infinity' TIMESTAMP value to the output row.
 
void setTimestampNull ()
 Adds NULL as a TIMESTAMP value to the output row.
 
void throwInCorrectUsageError ()
 : Throwing UdfException for incorrect setter usage
 

Public Attributes

int count
 
int index
 
int ncols
 
int nrows
 
SizedColumnTypes typeMetaData
 

Protected Member Functions

void clear ()
 
ByteBuffer getInlineColBuffer (int idx)
 

Protected Attributes

ArrayList< ByteBuffer > coldataareas
 
ArrayList< ByteBuffer > cols
 
ArrayList< Integer > colstrides
 
ArrayList< Integer > currentPos
 

Detailed Description

Iterator interface for writing rows to a Vertica block

This class provides the output rows that ScalarFunction.processBlock() writes to.

Member Function Documentation

void com.vertica.sdk.VerticaBlock.addCol ( ByteBuffer  arg,
int  colstride,
VerticaType  dt,
String  colName 
)
inherited

Add the location for reading a particular argument.

Parameters
argThe base location to find data.
colstrideThe stride between data instances.
dtThe type of input.
colNameName of the column

Referenced by com.vertica.sdk.VerticaBlock.addCol().

void com.vertica.sdk.VerticaBlock.addCol ( ByteBuffer  arg,
int  colstride,
VerticaType  dt 
)
inherited

Add the location for reading a particular argument.

Parameters
argThe base location to find data.
colstrideThe stride between data instances.
dtThe type of input.
void com.vertica.sdk.VerticaBlock.addCol ( ByteBuffer  arg,
ByteBuffer  da,
int  colstride,
VerticaType  dt 
)
inherited

Add the location for reading a particular argument.

Parameters
argThe base location to find data.
daThe location to find out of band string data.
colstrideThe stride between data instances.
dtThe type of input.
void com.vertica.sdk.VerticaBlock.addCol ( ByteBuffer  arg,
ByteBuffer  da,
int  colstride,
VerticaType  dt,
String  colName 
)
inherited

Add the location for reading a particular argument.

Parameters
argThe base location to find data.
daThe location to find out of band string data.
colstrideThe stride between data instances.
dtThe type of input.
colNameName of the column
ByteBuffer com.vertica.sdk.VerticaBlock.getColDataAreaRef ( int  idx)
inherited

Get the ByteBuffer that stores out of line string data (Data Area) for the idx'th argument

Parameters
idxThe column number to retrieve from the input row.
Returns
the ByteBuffer

Referenced by com.vertica.sdk.BlockReader.getVString().

ByteBuffer com.vertica.sdk.VerticaBlock.getColRef ( int  idx)
inherited

Example: ByteBuffer a = arg_reader.getColPtr(0);

Parameters
idxThe column number to retrieve from the input row.
Returns
a ByteBuffer to the idx'th argument, containing data for the column

Referenced by com.vertica.sdk.PartitionWriter.copyFromInput(), com.vertica.sdk.BlockReader.getBoolean(), com.vertica.sdk.BlockReader.getDouble(), com.vertica.sdk.VerticaBlock.getInlineColBuffer(), com.vertica.sdk.BlockReader.getLong(), com.vertica.sdk.BlockReader.getStringLength(), com.vertica.sdk.BlockReader.getStringLoc(), com.vertica.sdk.BlockReader.getVNumeric(), com.vertica.sdk.BlockReader.getVString(), com.vertica.sdk.BlockWriter.getVStringWriter(), com.vertica.sdk.BlockReader.isBooleanNull(), com.vertica.sdk.ParamWriter.setBool(), com.vertica.sdk.BlockWriter.setBoolean(), com.vertica.sdk.BlockWriter.setBooleanNull(), com.vertica.sdk.PartitionWriter.setBooleanValue(), com.vertica.sdk.BlockWriter.setDate(), com.vertica.sdk.BlockWriter.setDateNull(), com.vertica.sdk.PartitionWriter.setDateValue(), com.vertica.sdk.BlockWriter.setDouble(), com.vertica.sdk.ParamWriter.setDouble(), com.vertica.sdk.BlockWriter.setDoubleNull(), com.vertica.sdk.PartitionWriter.setDoubleValue(), com.vertica.sdk.BlockWriter.setLong(), com.vertica.sdk.ParamWriter.setLong(), com.vertica.sdk.BlockWriter.setLongNull(), com.vertica.sdk.ParamWriter.setLongString(), com.vertica.sdk.PartitionWriter.setLongValue(), com.vertica.sdk.ParamWriter.setNumeric(), com.vertica.sdk.BlockWriter.setNumeric(), com.vertica.sdk.ParamWriter.setString(), com.vertica.sdk.BlockWriter.setString(), com.vertica.sdk.BlockWriter.setStringNull(), com.vertica.sdk.BlockWriter.setTimestamp(), com.vertica.sdk.BlockWriter.setTimestampInfiniteNeg(), com.vertica.sdk.BlockWriter.setTimestampInfinitePos(), com.vertica.sdk.BlockWriter.setTimestampNull(), and com.vertica.sdk.PartitionWriter.setTimestampValue().

ByteBuffer com.vertica.sdk.VerticaBlock.getInlineColBuffer ( int  idx)
protectedinherited

Give a ByteBuffer for the given column (inline storage only). Returns a buffer with position and limit bounding the data area for a single element of that column, given the current position in the column.

Parameters
idxThe column number to retrieve from the input row.
Returns
the ByteBuffer for the column

Referenced by com.vertica.sdk.PartitionWriter.setStringBytes(), and com.vertica.sdk.PartitionWriter.setStringValue().

int com.vertica.sdk.VerticaBlock.getNumCols ( )
inherited
Returns
the number of arguments held by this reader.
int com.vertica.sdk.VerticaBlock.getNumRows ( )
inherited
Returns
the number of rows held by this block.
SizedColumnTypes com.vertica.sdk.VerticaBlock.getTypeMetaData ( )
inherited
Returns
information about the types and numbers of arguments

Referenced by com.vertica.sdk.ParamReader.getType(), com.vertica.sdk.PartitionWriter.setRowFromMap(), and com.vertica.sdk.PartitionWriter.setValue().

VString com.vertica.sdk.BlockWriter.getVStringWriter ( )

Allocates a new VString object to use as output.

Returns
A new VString object to hold output. This object automatically added to the output row.
void com.vertica.sdk.BlockWriter.next ( )

Complete writing this row of output and move to the next row.

void com.vertica.sdk.BlockWriter.setBoolean ( boolean  r)

Adds a BOOLEAN value to the output row.

Parameters
rThe BOOLEAN value to insert into the output row.
void com.vertica.sdk.BlockWriter.setDate ( java.sql.Date  r)

Adds a DATE value to the output row.

Parameters
rThe DATE value to insert into the output row.
void com.vertica.sdk.BlockWriter.setDouble ( double  r)

Adds a DOUBLE value to the output row.

Parameters
rThe DOUBLE value to insert into the output row.
void com.vertica.sdk.BlockWriter.setLong ( long  r)

Adds a LONG INTEGER value to the output row.

Parameters
rThe LONG INTEGER value to insert into the output row.
void com.vertica.sdk.BlockWriter.setNumeric ( BigDecimal  bd)

Allocate a new VNumeric object to use as output.

Returns
A new VNumeric object to hold output. This object automatically added to the output row.
void com.vertica.sdk.BlockWriter.setString ( String  r)

Adds a String value to the output row.

Parameters
rThe String value to insert into the output row.
void com.vertica.sdk.BlockWriter.setTimestamp ( java.sql.Timestamp  r)

Adds a TIMESTAMP value to the output row.

Parameters
rThe TIMESTAMP value to insert into the output row.