package ca.sqlpower.sql; import java.rmi.Remote; import java.rmi.RemoteException; import java.util.Collection; /** * Remote interface used to obtain the list of database connections * from a central server (for clustering this web application). * * @author Dan Fraser * @version $Id$ */ public interface DBConnectionSpecServer extends Remote { /** * Returns a collection of DBConnectionSpec objects. */ public Collection getAvailableDatabases() throws RemoteException; /** * Returns true if the password in the argument matches the administrative * password on the RMI server. Returns false otherwise. */ public boolean checkPassword(String password) throws RemoteException; /** * This sets the list of available databases on the RMI server. * * @param dbList a Collection of DBConnectionSpec objects. * @param oldPass the current administrative password (required) * @param newPass if non-null and non-empty, the password will * be changed to this password. */ public void setAvailableDatabases(Collection dbList, String oldPass, String newPass) throws RemoteException; }