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

pl.bristleback.server.bristle.action.ActionsContainer Maven / Gradle / Ivy

/*
 * Bristleback Websocket Framework - Copyright (c) 2010-2013 http://bristleback.pl
 * ---------------------------------------------------------------------------
 * This program is free software; you can redistribute it and/or modify it
 * under the terms of the GNU Lesser General Public License as published by the
 * Free Software Foundation; either version 3 of the License, or (at your
 * option) any later version.
 * This library 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.
 * You should have received a copy of the GNU Lesser General Public License along
 * with this program; if not, see .
 * ---------------------------------------------------------------------------
 */

package pl.bristleback.server.bristle.action;

import pl.bristleback.server.bristle.action.exception.BrokenActionProtocolException;
import pl.bristleback.server.bristle.integration.spring.BristleSpringIntegration;

import java.util.Map;

/**
 * //@todo class description
 * 

* Created on: 2012-01-23 20:02:06
* * @author Wojciech Niemiec */ public class ActionsContainer { private Map actionClasses; public ActionClassInformation getActionClass(String actionClassName) { ActionClassInformation actionClass = actionClasses.get(actionClassName); if (actionClass == null) { throw new BrokenActionProtocolException(BrokenActionProtocolException.ReasonType.NO_ACTION_CLASS_FOUND, "Cannot find action class with name \"" + actionClassName + "\"."); } return actionClass; } public Object getActionClassInstance(ActionClassInformation actionClass, BristleSpringIntegration springIntegration) { if (actionClass.isSingleton()) { return actionClass.getSingletonActionClassInstance(); } else { return springIntegration.getApplicationBean(actionClass.getSpringBeanName(), actionClass.getType()); } } public void setActionClasses(Map actionClasses) { this.actionClasses = actionClasses; } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy