/******************************************************************************* * | o | * | o o | HELYX-OS: The Open Source GUI for OpenFOAM | * | o O o | Copyright (C) 2012-2016 ENGYS | * | o o | http://www.engys.com | * | o | | * |---------------------------------------------------------------------------| * | License | * | This file is part of HELYX-OS. | * | | * | HELYX-OS 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 2 of the License, or (at your | * | option) any later version. | * | | * | HELYX-OS 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 HELYX-OS; if not, write to the Free Software Foundation, | * | Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | *******************************************************************************/ package eu.engys.core.controller; import java.rmi.Remote; import java.rmi.RemoteException; import java.util.List; import eu.engys.core.controller.actions.StopCommandInfo; import eu.engys.core.project.state.ServerState; public interface Server extends Remote, ParsersManager { void heartBeat() throws RemoteException; CommandInfo executeCommand(ClientServerCommand command) throws RemoteException; StopCommandInfo stopCommand(Command command) throws RemoteException; CommandInfo killCommand(Command command) throws RemoteException; StateConnector getStateConnector() throws RemoteException; ILogServer getLogConnector() throws RemoteException; QueueConnector getQueueConnector() throws RemoteException; List getStates() throws RemoteException; ServerInfo start() throws Exception; void stop() throws RemoteException; void shutdown() throws RemoteException; String test() throws RemoteException; void clientDisconnect() throws RemoteException; QueueInfo getQueueInfo() throws RemoteException; CommandInfo goToBatch() throws RemoteException; CommandInfo connect(ClientInfo clientInfo) throws RemoteException; String getServerID() throws RemoteException; boolean isRunningCommand() throws RemoteException; ClientInfo getClientInfo() throws RemoteException; }