Class PositionBatcher

java.lang.Object
net.sf.basedb.core.AbstractBatcher
net.sf.basedb.core.PositionBatcher
All Implemented Interfaces:
AutoCloseable, Batcher

public class PositionBatcher
extends AbstractBatcher
Batcher class for per-position data in the dynamic database. This batcher is used to insert data that is valid for all positions in a data cube.

Normally this means linking a position to a reporter.

Code example: Dynamic API - Creating a root bioassayset

Version:
2.0
Author:
Nicklas
See Also:
BioAssaySet.getPositionBatcher()
Last modified
$Date: 2015-04-21 09:59:42 +0200 (ti, 21 apr 2015) $
  • Field Details

    • dataCube

      private final DataCube dataCube
      The datacube this batcher inserts data for.
    • queuedInsertCount

      private int queuedInsertCount
      The number of queued inserts. Used to check when a flush is needed.
    • totalInsertCount

      private int totalInsertCount
      The total number of inserts done by this batcher.
    • maxPosition

      private int maxPosition
      The maximum position number inserted by the batcher.
    • bytes

      private long bytes
      The number of bytes this batcher has added to the data cube and experiment.
    • bytesPerRow

      private final long bytesPerRow
      The number of bytes used by a single row.
    • positionSql

      private PreparedStatement positionSql
      The statement that inserts the position/reporter link.
      INSERT INTO Dynamic#PerPosition (cube, position, reporter_id)
      VALUES (cube, ?, ?)
      
    • positionSqlStatement

      private String positionSqlStatement
      The SQL string for the positionSql statement.
  • Constructor Details

    • PositionBatcher

      PositionBatcher​(DbControl dc, DataCube dataCube)
      Create a new position batcher for a data cube. It is assumed that the calling code has checked that the cube is allowed to receive more data (ie. it hasn't been committed to the database).
  • Method Details