## org.h2.engine
Interface SessionInterface

All Known Implementing Classes:
  Session, SessionRemote, SessionWithState

    public interface SessionInterface

A local or remote session. A session represents a database connection.

Method Summary
`void` `afterWriting()` Called after writing has ended.
`void` `cancel()` Cancel the current or next command (called when closing a connection).
`void` `close()` Roll back pending transactions and close the session.
`boolean` `getAutoCommit()` Check if this session is in auto-commit mode.
`DataHandler` `getDataHandler()` Get the data handler object.
`int` `getPowerOffCount()` Get the number of disk operations before power failure is simulated.
`Trace` `getTrace()` Get the trace object
`boolean` `isClosed()` Check if close was called.
`boolean` `isReconnectNeeded(boolean write)` Check if the database changed and therefore reconnecting is required.
`CommandInterface` `prepareCommand(java.lang.String sql, int fetchSize)` Parse a command and prepare it for execution.
`SessionInterface` `reconnect(boolean write)` Close the connection and open a new connection.
`void` `setAutoCommit(boolean autoCommit)` Set the auto-commit mode.
`void` `setPowerOffCount(int i)` Set the number of disk operations before power failure is simulated.

Method Detail

### prepareCommand

    CommandInterface prepareCommand(java.lang.String sql,
                                    int fetchSize)

  Parse a command and prepare it for execution.

  Parameters:
    `sql` - the SQL statement
    `fetchSize` - the number of rows to fetch in one step
  Returns:
    the prepared command

### close

    void close()

  Roll back pending transactions and close the session.

### getTrace

    Trace getTrace()

  Get the trace object

  Returns:
    the trace object

### isClosed

    boolean isClosed()

  Check if close was called.

  Returns:
    if the session has been closed

### getPowerOffCount

    int getPowerOffCount()

  Get the number of disk operations before power failure is simulated. This is used for testing. If not set, 0 is returned

  Returns:
    the number of operations, or 0

### setPowerOffCount

    void setPowerOffCount(int i)

  Set the number of disk operations before power failure is simulated. To disable the countdown, use 0.

  Parameters:
    `i` - the number of operations

### getDataHandler

    DataHandler getDataHandler()

  Get the data handler object.

  Returns:
    the data handler

### cancel

    void cancel()

  Cancel the current or next command (called when closing a connection).

### isReconnectNeeded

    boolean isReconnectNeeded(boolean write)

  Check if the database changed and therefore reconnecting is required.

  Parameters:
    `write` - if the next operation may be writing
  Returns:
    true if reconnecting is required

### reconnect

    SessionInterface reconnect(boolean write)

  Close the connection and open a new connection.

  Parameters:
    `write` - if the next operation may be writing
  Returns:
    the new connection

### afterWriting

    void afterWriting()

  Called after writing has ended. It needs to be called after isReconnectNeeded(true) returned false.

### getAutoCommit

    boolean getAutoCommit()

  Check if this session is in auto-commit mode.

  Returns:
    true if the session is in auto-commit mode

### setAutoCommit

    void setAutoCommit(boolean autoCommit)

  Set the auto-commit mode.

  Parameters:
    `autoCommit` - the new value