
com.jpattern.gwt.client.AApplication Maven / Gradle / Ivy
package com.jpattern.gwt.client;
import java.util.HashMap;
import java.util.Map;
import com.jpattern.gwt.client.cache.CacheService;
import com.jpattern.gwt.client.cache.ACacheService;
import com.jpattern.gwt.client.history.DirectHistoryEngine;
import com.jpattern.gwt.client.history.HistoryService;
import com.jpattern.gwt.client.history.AHistoryService;
import com.jpattern.gwt.client.history.NullHistoryManagerObserver;
import com.jpattern.gwt.client.logger.ALoggerService;
import com.jpattern.gwt.client.logger.NullLoggerService;
import com.jpattern.gwt.client.security.ASecurityContext;
import com.jpattern.gwt.client.security.SecurityContext;
import com.jpattern.gwt.client.serializer.ASerializerService;
import com.jpattern.gwt.client.serializer.NullSerializerService;
/**
*
* @author Francesco Cina'
*
* 12 Apr 2011
*/
public abstract class AApplication implements IApplicationProvider, IApplicationSystem {
private Map serviceMap = new HashMap();
private ASerializerService serializerService;
private ALoggerService loggerService;
private AServerCallService serverCallService;
private ACacheService cacheService;
private AHistoryService historyService;
private AManagedErrorService managedErrorService;
private ASecurityContext securityContext;
public AApplication() {
setSerializerService(new NullSerializerService());
setLoggerService(new NullLoggerService());
setServerCallService(new RestServerCallService());
setCacheService( new CacheService() );
setHistoryService( new HistoryService(new DirectHistoryEngine(new NullLoggerService()), new NullHistoryManagerObserver(), new NullLoggerService()) );
setManagedErrorService(new ManagedErrorService(this));
setSecurityContext( new SecurityContext() );
}
@Override
public final ALoggerService getLoggerService() {
return loggerService;
}
@Override
public final void setLoggerService(ALoggerService loggerService) {
if (loggerService!=null) {
this.loggerService = loggerService;
this.loggerService.setProvider(this);
}
}
@Override
public final AServerCallService getServerCallService() {
return serverCallService;
}
@Override
public final void setServerCallService(AServerCallService serverCallService) {
if (serverCallService!=null) {
this.serverCallService = serverCallService;
this.serverCallService.setProvider(this);
}
}
@Override
public final AService getService(String serviceName) {
if (serviceMap.containsKey(serviceName)) {
return serviceMap.get(serviceName);
}
return new NullService();
}
@Override
public final void addService(String serviceName, AService service){
service.setProvider(this);
serviceMap.put(serviceName, service);
}
@Override
public final ASerializerService getSerializerService() {
return serializerService;
}
@Override
public final void setSerializerService(ASerializerService serializerService) {
this.serializerService = serializerService;
this.serializerService.setProvider(this);
}
@Override
public final ACacheService getCacheService() {
return cacheService ;
}
@Override
public final AHistoryService getHistoryService() {
return historyService;
}
@Override
public final void setHistoryService(AHistoryService historyService) {
this.historyService = historyService;
this.historyService.setProvider(this);
}
@Override
public final AManagedErrorService getManagedErrorService() {
return managedErrorService;
}
@Override
public final ASecurityContext getSecurityContext() {
return securityContext;
}
@Override
public void setSecurityContext(ASecurityContext securityContext) {
this.securityContext = securityContext;
this.securityContext.setProvider(this);
}
@Override
public void setCacheService(ACacheService cacheService) {
this.cacheService = cacheService;
this.cacheService.setProvider(this);
}
@Override
public void setManagedErrorService(AManagedErrorService managedErrorService) {
this.managedErrorService = managedErrorService;
this.managedErrorService.setProvider(this);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy