/** * ESUP-Portail Helpdesk - Copyright (c) 2004-2009 ESUP-Portail consortium. */ package org.esupportail.helpdesk.web.beans; import java.util.HashMap; import org.esupportail.commons.utils.Assert; import org.esupportail.helpdesk.domain.DomainService; import org.esupportail.helpdesk.web.controllers.SessionController; import org.springframework.beans.factory.InitializingBean; /** * A provider for assignment algorithms i18n descriptions. */ public class AssignmentAlgorithmI18nDescriptionProvider extends HashMap<String, String> implements InitializingBean { /** * The serialization id. */ private static final long serialVersionUID = -5669636822643694992L; /** * The domain service. */ private DomainService domainService; /** * The session controller. */ private SessionController sessionController; /** * Bean constructor. */ public AssignmentAlgorithmI18nDescriptionProvider() { super(); } /** * @see org.springframework.beans.factory.InitializingBean#afterPropertiesSet() */ @Override public void afterPropertiesSet() { Assert.notNull(domainService, "property domainService of class " + this.getClass().getName() + " can not be null"); Assert.notNull(sessionController, "property sessionController of class " + this.getClass().getName() + " can not be null"); } /** * @see java.util.HashMap#get(java.lang.Object) */ @Override public String get(final Object algorithmName) { return domainService.getAssignmentAlgorithmDescription( (String) algorithmName, sessionController.getLocale()); } /** * @return the domainService */ protected DomainService getDomainService() { return domainService; } /** * @param domainService the domainService to set */ public void setDomainService(final DomainService domainService) { this.domainService = domainService; } /** * @return the sessionController */ protected SessionController getSessionController() { return sessionController; } /** * @param sessionController the sessionController to set */ public void setSessionController(final SessionController sessionController) { this.sessionController = sessionController; } }