net.anotheria.anosite.gen.ascustomdata.service.ASCustomDataServiceFactory Maven / Gradle / Ivy
/**
********************************************************************************
*** ASCustomDataServiceFactory.java ***
*** The factory for the IASCustomDataService implementation. ***
*** generated by AnoSiteGenerator (ASG), Version: 2.6.3 ***
*** Copyright (C) 2005 - 2010 Anotheria.net, www.anotheria.net ***
*** All Rights Reserved. ***
********************************************************************************
*** Don't edit this code, if you aren't sure ***
*** that you do exactly know what you are doing! ***
*** It's better to invest time in the generator, as into the generated code. ***
********************************************************************************
*/
package net.anotheria.anosite.gen.ascustomdata.service;
import java.util.concurrent.atomic.AtomicInteger;
import net.anotheria.moskito.core.dynamic.MoskitoInvokationProxy;
import net.anotheria.moskito.core.predefined.ServiceStatsCallHandler;
import net.anotheria.moskito.core.predefined.ServiceStatsFactory;
import net.anotheria.asg.service.ASGService;
import net.anotheria.anoprise.metafactory.ServiceFactory;
public class ASCustomDataServiceFactory implements ServiceFactory{
private static AtomicInteger instanceCounter = new AtomicInteger(0);
private static IASCustomDataService defaultInstance = createASCustomDataService();
public IASCustomDataService create(){
return createASCustomDataService();
}
public static IASCustomDataService createASCustomDataService(){
MoskitoInvokationProxy proxy = new MoskitoInvokationProxy(
createInstance(),
new ServiceStatsCallHandler(),
new ServiceStatsFactory(),
"IASCustomDataService-"+instanceCounter.incrementAndGet(),
"service",
"asg-cms",
IASCustomDataService.class, ASGService.class
);
return (IASCustomDataService) proxy.createProxy();
}
private static IASCustomDataService createInstance(){
return ASCustomDataServiceImpl.getInstance();
}
static IASCustomDataService getDefaultInstance(){
return defaultInstance;
}
}