Package tigase.db.beans

## Class SDRepositoryBeanWithStatistics<T extends DataSourceAware>

- java.lang.Object
- - tigase.db.beans.SDRepositoryBean<T>
  - - tigase.db.beans.SDRepositoryBeanWithStatistics<T>

- All Implemented Interfaces:
    `ConfigurationChangedAware`, `Initializable`, `RegistrarBean`, `UnregisterAware`, `ComponentStatisticsProvider`, `StatisticsProviderIfc`

      public abstract class SDRepositoryBeanWithStatistics<T extends DataSourceAware>
      extends SDRepositoryBean<T>
      implements ComponentStatisticsProvider

  Extended version of SDRepositoryBean class with support for statistics gathering.
  Created by andrzej on 15.12.2016.

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `SDRepositoryBeanWithStatistics​(java.lang.Class<T> repoClazz)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `everyHour()` |
    `void` | `everyMinute()` |
    `void` | `everySecond()` |
    `protected T` | `getRepository()` |
    `void` | `getStatistics​(java.lang.String compName, StatisticsList list)` |
    `void` | `setRepository​(T repository)` |
    `void` | `setStatisticsEnabled​(boolean value)` |
    `void` | `wrapInProxy​(T repo)` |

    - ### Methods inherited from class tigase.db.beans.SDRepositoryBean

      `beanConfigurationChanged, beforeUnregister, findClassForDataSource, getDataSourceName, getName, getRepositoryClassName, initialize, initializeRepository, onDataSourceChange, register, unregister`

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

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

    - ### Methods inherited from interface tigase.stats.ComponentStatisticsProvider

      `belongsTo`

- - ### Constructor Detail

    - #### SDRepositoryBeanWithStatistics

          public SDRepositoryBeanWithStatistics​(java.lang.Class<T> repoClazz)

  - ### Method Detail

    - #### everyHour

          public void everyHour()

      Specified by:
        `everyHour` in interface `ComponentStatisticsProvider`

    - #### everyMinute

          public void everyMinute()

      Specified by:
        `everyMinute` in interface `ComponentStatisticsProvider`

    - #### everySecond

          public void everySecond()

      Specified by:
        `everySecond` in interface `ComponentStatisticsProvider`

    - #### getStatistics

          public void getStatistics​(java.lang.String compName,
                                    StatisticsList list)

      Specified by:
        `getStatistics` in interface `StatisticsProviderIfc`

    - #### setStatisticsEnabled

          public void setStatisticsEnabled​(boolean value)

    - #### wrapInProxy

          public void wrapInProxy​(T repo)

    - #### getRepository

          protected T getRepository()

      Overrides:
        `getRepository` in class `SDRepositoryBean<T extends DataSourceAware>`

    - #### setRepository

          public void setRepository​(T repository)

      Overrides:
        `setRepository` in class `SDRepositoryBean<T extends DataSourceAware>`