org.janusproject.kernel.agent.bdi.BDIActionFactory Maven / Gradle / Ivy
/*
* $Id$
*
* Janus platform is an open-source multiagent platform.
* More details on
* Copyright (C) 2011-2012 Janus Core Developers
*
* 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.
*
* 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
* along with this program. If not, see .
*/
package org.janusproject.kernel.agent.bdi;
import java.util.Collection;
/**
* Action factory.
*
* @author $Author: [email protected]$
* @author $Author: ngaud$
* @author $Author: sgalland$
* @version $FullVersion$
* @mavengroupid $Groupid$
* @mavenartifactid $ArtifactId$
*/
public interface BDIActionFactory {
/**
* Get all the actions.
* @return a collection of actions
*/
public Collection getActions();
/**
* Retrieve an action
* @param agent is the BDIAgent calling the method
* @param action is the action's class
* @return an instanciated action
*/
public BDIAction getAction(BDIAgent agent, Class extends BDIAction> action);
}