org.appops.cache.injection.GuavaCacheServiceModule Maven / Gradle / Ivy
/*
* AppOps is a Java framework to develop, deploy microservices with ease and is available for free
* and common use developed by AinoSoft ( www.ainosoft.com )
*
* AppOps and AinoSoft are registered trademarks of Aino Softwares private limited, India.
*
* Copyright (C) <2016>
*
* This program is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version along with applicable additional terms as
* provisioned by GPL 3.
*
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
* even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License and applicable additional terms
* along with this program.
*
* If not, see and
*/
package org.appops.cache.injection;
import com.google.inject.Singleton;
import org.appops.cache.core.CacheService;
import org.appops.cache.event.SubscriberRegistry;
import org.appops.cache.impl.GuavaCacheImpl;
import org.appops.cache.impl.ServiceBusImpl;
import org.appops.cache.impl.SubscriberRegistryImpl;
import org.appops.cache.slim.Cache;
import org.appops.cache.slim.ServiceBus;
import org.appops.core.annotation.ImplModule;
import org.appops.service.injection.ServiceModule;
/**
* A class which contains all guice binding configuration.
*
* @author suraj
* @version $Id: $Id
*/
@ImplModule(serviceName = CacheService.class)
public class GuavaCacheServiceModule extends ServiceModule {
/** {@inheritDoc} */
@Override
public void configureModule() {
bind(Cache.class).to(GuavaCacheImpl.class);
bind(SubscriberRegistry.class).to(SubscriberRegistryImpl.class).in(Singleton.class);
bind(ServiceBus.class).to(ServiceBusImpl.class);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy