001/** 002 * Copyright (C) 2014 Universidade de Aveiro, DETI/IEETA, Bioinformatics Group - http://bioinformatics.ua.pt/ 003 * 004 * This file is part of Dicoogle/dicoogle. 005 * 006 * Dicoogle/dicoogle is free software: you can redistribute it and/or modify 007 * it under the terms of the GNU General Public License as published by 008 * the Free Software Foundation, either version 3 of the License, or 009 * (at your option) any later version. 010 * 011 * Dicoogle/dicoogle is distributed in the hope that it will be useful, 012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 014 * GNU General Public License for more details. 015 * 016 * You should have received a copy of the GNU General Public License 017 * along with Dicoogle. If not, see <http://www.gnu.org/licenses/>. 018 */ 019 020package pt.ua.dicoogle.rGUI.interfaces; 021 022import pt.ua.dicoogle.rGUI.RFileBrowser.IRemoteFileSystem; 023import java.rmi.Remote; 024import java.rmi.RemoteException; 025 026import pt.ua.dicoogle.rGUI.interfaces.controllers.ILogs; 027import pt.ua.dicoogle.rGUI.interfaces.controllers.IServices; 028import pt.ua.dicoogle.rGUI.interfaces.controllers.IStartupServ; 029import pt.ua.dicoogle.rGUI.interfaces.controllers.IQRServers; 030import pt.ua.dicoogle.rGUI.interfaces.controllers.IAccessList; 031import pt.ua.dicoogle.rGUI.interfaces.controllers.IActiveSessions; 032import pt.ua.dicoogle.rGUI.interfaces.controllers.IDirectory; 033import pt.ua.dicoogle.rGUI.interfaces.controllers.IIndexOptions; 034import pt.ua.dicoogle.rGUI.interfaces.controllers.INetworkInterfaces; 035import pt.ua.dicoogle.rGUI.interfaces.controllers.IPendingMessages; 036import pt.ua.dicoogle.rGUI.interfaces.controllers.IPluginControllerAdmin; 037import pt.ua.dicoogle.rGUI.interfaces.controllers.IPluginControllerUser; 038import pt.ua.dicoogle.rGUI.interfaces.controllers.IQueryRetrieve; 039import pt.ua.dicoogle.rGUI.interfaces.controllers.ISOPClass; 040import pt.ua.dicoogle.rGUI.interfaces.controllers.ITaskList; 041import pt.ua.dicoogle.rGUI.interfaces.controllers.IUsersManager; 042 043 044/** 045 * This interface contains methods that are features of administration 046 * 047 * @author Samuel Campos <samuelcampos@ua.pt> 048 */ 049@Deprecated 050public interface IAdmin extends Remote { 051 052 //get the username of the current Administrator 053 public String getUsername() throws RemoteException; 054 055 public IUser getUser() throws RemoteException; 056 057 public IServices getServices() throws RemoteException; 058 059 public ILogs getLogs() throws RemoteException; 060 061 public IQRServers getQRServers() throws RemoteException; 062 063 public IStartupServ getStartupServ() throws RemoteException; 064 065 public IQueryRetrieve getQueryRetrive() throws RemoteException; 066 067 public IAccessList getAccessList() throws RemoteException; 068 069 public IIndexOptions getIndexOptions() throws RemoteException; 070 071 public ISOPClass getSOPClass() throws RemoteException; 072 073 public IDirectory getDirectorySettings() throws RemoteException; 074 075 public IUsersManager getUsersManager() throws RemoteException; 076 077 public IActiveSessions getActiveSessions() throws RemoteException; 078 079 public ITaskList getTaskList() throws RemoteException; 080 081 public IPendingMessages getPendingMessages() throws RemoteException; 082 083 public INetworkInterfaces getNetworkInterface() throws RemoteException; 084 085 public IPluginControllerAdmin getPluginController() throws RemoteException; 086 //public IStatus getStatus() throws RemoteException; 087 088 public String getDefaultFilePath() throws RemoteException; 089 public IRemoteFileSystem getRFS() throws RemoteException; 090 091 //check if there are unsaved Settings 092 public boolean unsavedSettings() throws RemoteException; 093 094 //Save Settings (print XML) 095 public void saveSettings() throws RemoteException; 096 public void resetSettings() throws RemoteException; 097 098 public void logout() throws RemoteException; 099 100 public void shutdownServer() throws RemoteException; 101 102 public void KeepAlive() throws RemoteException; 103 104 /** 105 * If the number is equal to the number randomly generated 106 * in Main class, the timetout stops. 107 * 108 * @param number 109 * @return if the number is equal or not 110 * @throws RemoteException 111 */ 112 public boolean shtudownTimeout(int number) throws RemoteException; 113}