All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.anotheria.anosite.gen.asexperiment.service.ASExperimentServiceFactory Maven / Gradle / Ivy

There is a newer version: 4.1.2
Show newest version
/**
 ********************************************************************************
 *** ASExperimentServiceFactory.java                                          ***
 *** The factory for the IASExperimentService implementation.                 ***
 *** generated by AnoSiteGenerator (ASG), Version: 3.2.2                      ***
 *** Copyright (C) 2005 - 2023 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.asexperiment.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 ASExperimentServiceFactory implements ServiceFactory{

	private static AtomicInteger instanceCounter = new AtomicInteger(0);
	private static IASExperimentService defaultInstance = createASExperimentService();

	public IASExperimentService create(){
		return createASExperimentService();
	}

	public static IASExperimentService createASExperimentService(){
		MoskitoInvokationProxy proxy = new MoskitoInvokationProxy(
			createInstance(),
			new ServiceStatsCallHandler(),
			new ServiceStatsFactory(),
			"IASExperimentService-"+instanceCounter.incrementAndGet(),
			"service",
			"asg-cms",
			IASExperimentService.class, ASGService.class
		);
		return (IASExperimentService) proxy.createProxy();
	}

	private static IASExperimentService createInstance(){
		return ASExperimentServiceImpl.getInstance();
	}

	static IASExperimentService getDefaultInstance(){
		return defaultInstance;
	}
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy