Class LastModifiedTimestampDecorator<T extends org.apache.spark.sql.catalyst.InternalRow>

  • Type Parameters:
    T - type of row returned by this builder
    All Implemented Interfaces:
    org.apache.cassandra.spark.sparksql.RowBuilder<T>

    public class LastModifiedTimestampDecorator<T extends org.apache.spark.sql.catalyst.InternalRow>
    extends java.lang.Object
    Wrap a builder to append last modified timestamp
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected org.apache.cassandra.spark.sparksql.RowBuilder<T> delegate  
    • Constructor Summary

      Constructors 
      Constructor Description
      LastModifiedTimestampDecorator​(org.apache.cassandra.spark.sparksql.RowBuilder<T> delegate, java.lang.String fieldName)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Object[] array()  
      T build()  
      int columnsCount()  
      void copyKeys​(org.apache.cassandra.spark.sparksql.Cell cell)  
      void copyValue​(org.apache.cassandra.spark.sparksql.Cell cell)  
      int expandRow​(int extraColumns)  
      protected int extraColumns()  
      int fieldIndex​(java.lang.String name)  
      org.apache.cassandra.spark.data.CqlTable getCqlTable()  
      boolean hasMoreCells()  
      boolean hasRegularValueColumn()  
      protected int internalExpandRow()
      Preferred to call if the decorator is adding extra columns
      boolean isFirstCell()  
      void onCell​(org.apache.cassandra.spark.sparksql.Cell cell)  
      void reset()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • delegate

        protected final org.apache.cassandra.spark.sparksql.RowBuilder<T extends org.apache.spark.sql.catalyst.InternalRow> delegate
    • Constructor Detail

      • LastModifiedTimestampDecorator

        public LastModifiedTimestampDecorator​(org.apache.cassandra.spark.sparksql.RowBuilder<T> delegate,
                                              java.lang.String fieldName)
    • Method Detail

      • reset

        public void reset()
        Specified by:
        reset in interface org.apache.cassandra.spark.sparksql.RowBuilder<T extends org.apache.spark.sql.catalyst.InternalRow>
      • onCell

        public void onCell​(org.apache.cassandra.spark.sparksql.Cell cell)
        Specified by:
        onCell in interface org.apache.cassandra.spark.sparksql.RowBuilder<T extends org.apache.spark.sql.catalyst.InternalRow>
      • extraColumns

        protected int extraColumns()
      • build

        public T build()
        Specified by:
        build in interface org.apache.cassandra.spark.sparksql.RowBuilder<T extends org.apache.spark.sql.catalyst.InternalRow>
      • columnsCount

        public int columnsCount()
        Specified by:
        columnsCount in interface org.apache.cassandra.spark.sparksql.RowBuilder<T extends org.apache.spark.sql.catalyst.InternalRow>
      • hasRegularValueColumn

        public boolean hasRegularValueColumn()
        Specified by:
        hasRegularValueColumn in interface org.apache.cassandra.spark.sparksql.RowBuilder<T extends org.apache.spark.sql.catalyst.InternalRow>
      • isFirstCell

        public boolean isFirstCell()
        Specified by:
        isFirstCell in interface org.apache.cassandra.spark.sparksql.RowBuilder<T extends org.apache.spark.sql.catalyst.InternalRow>
      • hasMoreCells

        public boolean hasMoreCells()
        Specified by:
        hasMoreCells in interface org.apache.cassandra.spark.sparksql.RowBuilder<T extends org.apache.spark.sql.catalyst.InternalRow>
      • copyKeys

        public void copyKeys​(org.apache.cassandra.spark.sparksql.Cell cell)
        Specified by:
        copyKeys in interface org.apache.cassandra.spark.sparksql.RowBuilder<T extends org.apache.spark.sql.catalyst.InternalRow>
      • copyValue

        public void copyValue​(org.apache.cassandra.spark.sparksql.Cell cell)
        Specified by:
        copyValue in interface org.apache.cassandra.spark.sparksql.RowBuilder<T extends org.apache.spark.sql.catalyst.InternalRow>
      • array

        public java.lang.Object[] array()
        Specified by:
        array in interface org.apache.cassandra.spark.sparksql.RowBuilder<T extends org.apache.spark.sql.catalyst.InternalRow>
      • expandRow

        public int expandRow​(int extraColumns)
        Specified by:
        expandRow in interface org.apache.cassandra.spark.sparksql.RowBuilder<T extends org.apache.spark.sql.catalyst.InternalRow>
      • getCqlTable

        public org.apache.cassandra.spark.data.CqlTable getCqlTable()
        Specified by:
        getCqlTable in interface org.apache.cassandra.spark.sparksql.RowBuilder<T extends org.apache.spark.sql.catalyst.InternalRow>
      • internalExpandRow

        protected int internalExpandRow()
        Preferred to call if the decorator is adding extra columns
        Returns:
        the index of the fist extra column
      • fieldIndex

        public int fieldIndex​(java.lang.String name)
        Specified by:
        fieldIndex in interface org.apache.cassandra.spark.sparksql.RowBuilder<T extends org.apache.spark.sql.catalyst.InternalRow>