Package tigase.stats

# Class StatisticsInvocationHandler<S>

java.lang.Object
tigase.stats.StatisticsInvocationHandler<S>

All Implemented Interfaces:
  `InvocationHandler`

public class StatisticsInvocationHandler<S> extends Object implements InvocationHandler
Generic class used by MD connection pools and repositories to wrap and measure method execution times.
Created by andrzej on 15.12.2016.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static class`
  `StatisticsInvocationHandler.MethodStatistics`
  `static class`
  `StatisticsInvocationHandler.Statistics`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `StatisticsInvocationHandler(String name, S instance, Class... monitoredIfcs)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `everyHour()`
  `void`
  `everyMinute()`
  `void`
  `everySecond()`
  `void`
  `getStatistics(String compName, String prefix, StatisticsList list)`
  `Object`
  `invoke(Object proxy, Method method, Object[] args)`

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

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

- ## Constructor Details

  - ### StatisticsInvocationHandler

    public StatisticsInvocationHandler(String name, S instance, Class... monitoredIfcs)

- ## Method Details

  - ### everyHour

    public void everyHour()

  - ### everyMinute

    public void everyMinute()

  - ### everySecond

    public void everySecond()

  - ### getStatistics

    public void getStatistics(String compName, String prefix, StatisticsList list)

  - ### invoke

    public Object invoke(Object proxy, Method method, Object[] args) throws Throwable
    Specified by:
      `invoke` in interface `InvocationHandler`
    Throws:
      `Throwable`