package org.anotheria.moskitodemo.usecases.fibonacci.business;
import net.anotheria.moskito.core.dynamic.MoskitoInvokationProxy;
import net.anotheria.moskito.core.predefined.ServiceStatsCallHandler;
import net.anotheria.moskito.core.predefined.ServiceStatsFactory;
public class FibonacciCalculatorFactory {
public static IFibonacciCalculator createFibonacciCalculator(){
FibonacciCalculatorImpl realInstance = new FibonacciCalculatorImpl();
MoskitoInvokationProxy proxy = new MoskitoInvokationProxy(
realInstance,
new ServiceStatsCallHandler(),
new ServiceStatsFactory(),
"service",
"fibonacci",
IFibonacciCalculator.class
);
IFibonacciCalculator monitoredInstance = (IFibonacciCalculator)proxy.createProxy();
realInstance.setOuterInstance(monitoredInstance);
return monitoredInstance;
}
}