com.tibco.cep.store.custom

## Class BaseStoreProvider

- java.lang.Object
- - com.tibco.cep.runtime.service.store.AbstractStoreProvider
  - - com.tibco.cep.store.custom.BaseStoreProvider

-     public abstract class BaseStoreProvider
      extends com.tibco.cep.runtime.service.store.AbstractStoreProvider

  `BEStoreProvider` is an entry point for implementing custom stores.
  Since:
    6.1

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract void` | `commit()` Commits the transaction.
    `abstract void` | `delete(java.util.List rowsList)` Delete the record from the implemented store.
    `abstract void` | `delete(StoreRowHolder row)` Delete the records from the implemented store.
    `abstract void` | `endTransaction()` Ends the transaction.
    `java.lang.String` | `getFilterBuilderClass()` Returns the fully qualified class name of `StoreFilterBuilder`.
    `abstract StoreDataTypeMapper` | `getStoreDataTypeMapper()` Returns the handle for `StoreDataTypeMapper`
    `StoreProperties` | `getStoreProperties()` Sets database specific properties.
    `protected abstract void` | `initConnection(java.util.Properties storeConfigProperties)` This method should be used to initialize connection objects and connection pools.
    `protected abstract boolean` | `isConnectionAlive()` Set if connection is a alive or not.
    `boolean` | `isTransactionEnabled()` Returns true by default.
    `abstract StoreRowHolder` | `read(StoreRowHolder query)` Read the record from the implemented store.
    `java.util.List` | `readAll(java.util.List query)` Read the records from the implemented store.
    `abstract java.util.List` | `readAll(StoreRowHolder query)` Read the records from the implemented store.
    `abstract java.util.List` | `readAvg(StoreRowHolder query)` Reads the avg value from the implemented store.
    `abstract java.util.List` | `readCount(StoreRowHolder query)` Reads the count value from the implemented store.
    `abstract java.util.List` | `readMax(StoreRowHolder query)` Reads the max value from the implemented store.
    `abstract java.util.List` | `readMin(StoreRowHolder query)` Reads the min value from the implemented store.
    `abstract java.util.List` | `readSum(StoreRowHolder query)` Reads the sum value from the implemented store.
    `abstract void` | `rollback()` Rollbacks the transaction.
    `abstract void` | `startTransaction()` Starts the transaction.
    `abstract void` | `update(java.util.List dataHolder)` Updates the records to the implemented store.
    `abstract void` | `write(java.util.List dataHolder)` Writes the records to the implemented store.

- - ### Method Detail

    - #### getStoreDataTypeMapper

          public abstract StoreDataTypeMapper getStoreDataTypeMapper()

      Returns the handle for `StoreDataTypeMapper`
      Since:
        6.1

    - #### isTransactionEnabled

          public boolean isTransactionEnabled()

      Returns true by default. Override this method in case store needs to disable/not supports transaction.

    - #### startTransaction

          public abstract void startTransaction()

      Starts the transaction.

    - #### endTransaction

          public abstract void endTransaction()

      Ends the transaction.

    - #### commit

          public abstract void commit()

      Commits the transaction. Provide a implementation in case isTransactionEnabled is not disabled.

    - #### rollback

          public abstract void rollback()

      Rollbacks the transaction. Provide a implementation in case isTransactionEnabled is not disabled.

    - #### getFilterBuilderClass

          public java.lang.String getFilterBuilderClass()

      Returns the fully qualified class name of `StoreFilterBuilder`. Override this method in case `StoreFilterBuilder` is extended.
      Overrides:
        `getFilterBuilderClass` in class `com.tibco.cep.runtime.service.store.AbstractStoreProvider`

    - #### initConnection

          protected abstract void initConnection(java.util.Properties storeConfigProperties)

      This method should be used to initialize connection objects and connection pools.
      Parameters:
        `storeConfigProperties` - property values configured in the cdd.
      Throws:
        `java.lang.Exception`
      Since:
        6.1

    - #### write

          public abstract void write(java.util.List dataHolder)

      Writes the records to the implemented store.
      Parameters:
        `dataHolder` - list containing information about data to write. See `StoreRowHolder`
      Throws:
        `java.lang.Exception`
      Since:
        6.1

    - #### update

          public abstract void update(java.util.List dataHolder)

      Updates the records to the implemented store.
      Parameters:
        `dataHolder` - list containing information about data to update. See `StoreRowHolder`
      Throws:
        `java.lang.Exception`
      Since:
        6.1

    - #### read

          public abstract StoreRowHolder read(StoreRowHolder query)

      Read the record from the implemented store.
      Parameters:
        `query` - provides information about table name, select fields, and filter fields.
      Returns:
        read data.
      Throws:
        `java.lang.Exception`
      Since:
        6.1

    - #### readAll

          public abstract java.util.List readAll(StoreRowHolder query)

      Read the records from the implemented store.
      Parameters:
        `query` - provides information about table name, select fields, and filter fields.
      Returns:
        read data.
      Throws:
        `java.lang.Exception`
      Since:
        6.1

    - #### readAll

          public java.util.List readAll(java.util.List query)

      Read the records from the implemented store.
      Parameters:
        `query` - provides information about table name, select fields, and filter fields.
      Returns:
        read data.
      Throws:
        `java.lang.Exception`
      Since:
        6.3

    - #### delete

          public abstract void delete(java.util.List rowsList)

      Delete the record from the implemented store.
      Parameters:
        `rowsList` - gives information about query parameters to delete data.
      Throws:
        `java.lang.Exception`
      Since:
        6.1

    - #### delete

          public abstract void delete(StoreRowHolder row)

      Delete the records from the implemented store.
      Parameters:
        `row` - gives information about query parameters to delete data.
      Throws:
        `java.lang.Exception`
      Since:
        6.1

    - #### readMin

          public abstract java.util.List readMin(StoreRowHolder query)

      Reads the min value from the implemented store.
      Parameters:
        `query` - gives information about query parameters.
      Throws:
        `java.lang.Exception`
      Since:
        6.1

    - #### readMax

          public abstract java.util.List readMax(StoreRowHolder query)

      Reads the max value from the implemented store.
      Parameters:
        `query` - gives information about query parameters.
      Throws:
        `java.lang.Exception`
      Since:
        6.1

    - #### readAvg

          public abstract java.util.List readAvg(StoreRowHolder query)

      Reads the avg value from the implemented store.
      Parameters:
        `query` - gives information about queryparameters .
      Throws:
        `java.lang.Exception`
      Since:
        6.1

    - #### readCount

          public abstract java.util.List readCount(StoreRowHolder query)

      Reads the count value from the implemented store.
      Parameters:
        `query` - gives information about query parameters.
      Throws:
        `java.lang.Exception`
      Since:
        6.1

    - #### readSum

          public abstract java.util.List readSum(StoreRowHolder query)

      Reads the sum value from the implemented store.
      Parameters:
        `query` - gives information about query parameters.
      Throws:
        `java.lang.Exception`
      Since:
        6.1

    - #### getStoreProperties

          public StoreProperties getStoreProperties()

      Sets database specific properties.
      Throws:
        `java.lang.Exception`
      Since:
        6.1

    - #### isConnectionAlive

          protected abstract boolean isConnectionAlive()

      Set if connection is a alive or not.
      Throws:
        `java.lang.Exception`
      Since:
        6.1