org.h2.value.lob

## Class LobDataFetchOnDemand

- java.lang.Object
- - org.h2.value.lob.LobData
  - - org.h2.value.lob.LobDataFetchOnDemand

    public final class LobDataFetchOnDemand
    extends LobData

A implementation of the LOB data used on the client side of a remote H2 connection. Fetches the underlying on data from the server.

### Field Summary

Fields
`protected byte[]` `hmac` If this is a client-side ValueLobDb object returned by a ResultSet, the hmac acts a security cookie that the client can send back to the server to ask for data related to this LOB.

### Constructor Summary

Constructors
Constructor and Description
`LobDataFetchOnDemand(DataHandler handler, int tableId, long lobId, byte[] hmac)`

### Method Summary

All Methods Instance Methods Concrete Methods
`DataHandler` `getDataHandler()`
`java.io.InputStream` `getInputStream(long precision)` Get stream to read LOB data from
`long` `getLobId()`
`int` `getTableId()` Get the current table id of this lob.
`boolean` `isLinkedToTable()` Check if this value is linked to a specific table.
`java.lang.String` `toString()`

### Methods inherited from class org.h2.value.lob.LobData

`getMemory, remove`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Field Detail

#### hmac

    protected final byte[] hmac

If this is a client-side ValueLobDb object returned by a ResultSet, the hmac acts a security cookie that the client can send back to the server to ask for data related to this LOB.

### Constructor Detail

#### LobDataFetchOnDemand

    public LobDataFetchOnDemand(DataHandler handler,
                                int tableId,
                                long lobId,
                                byte[] hmac)

### Method Detail

#### isLinkedToTable

    public boolean isLinkedToTable()

Check if this value is linked to a specific table. For values that are kept fully in memory, this method returns false.

Overrides:
  `isLinkedToTable` in class `LobData`
Returns:
  true if it is

#### getTableId

    public int getTableId()

Get the current table id of this lob.

Returns:
  the table id

#### getLobId

    public long getLobId()

#### getInputStream

    public java.io.InputStream getInputStream(long precision)

Description copied from class: `LobData`
Get stream to read LOB data from

Specified by:
  `getInputStream` in class `LobData`
Parameters:
  `precision` - octet length of the stream, or -1 if unknown
Returns:
  stream to read LOB data from

#### getDataHandler

    public DataHandler getDataHandler()

Overrides:
  `getDataHandler` in class `LobData`

#### toString

    public java.lang.String toString()

Overrides:
  `toString` in class `java.lang.Object`