001/*
002 * HA-JDBC: High-Availability JDBC
003 * Copyright (c) 2004-2007 Paul Ferraro
004 * 
005 * This library is free software; you can redistribute it and/or modify it 
006 * under the terms of the GNU Lesser General Public License as published by the 
007 * Free Software Foundation; either version 2.1 of the License, or (at your 
008 * option) any later version.
009 * 
010 * This library is distributed in the hope that it will be useful, but WITHOUT
011 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 
012 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License 
013 * for more details.
014 * 
015 * You should have received a copy of the GNU Lesser General Public License
016 * along with this library; if not, write to the Free Software Foundation, 
017 * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
018 * 
019 * Contact: ferraro@users.sourceforge.net
020 */
021package net.sf.hajdbc;
022
023/**
024 * @author  Paul Ferraro
025 * @since   1.1
026 */
027public interface InactiveDatabaseMBean extends ActiveDatabaseMBean
028{
029        /**
030         * Set the weight for this database
031         * @param weight a weight
032         * @exception IllegalArgumentException if weight is less than 0
033         */
034        public void setWeight(int weight);
035        
036        /**
037         * Set the user for this database.
038         * @param user a user
039         */
040        public void setUser(String user);
041        
042        /**
043         * Set the password for this database
044         * @param password a password
045         */
046        public void setPassword(String password);
047        
048        /**
049         * Set the value of the specified property.
050         * @param name a property name
051         * @param value a property value
052         */
053        public void setProperty(String name, String value);
054        
055        /**
056         * Removes the specified property.
057         * @param name a property name
058         */
059        public void removeProperty(String name);
060        
061        /**
062         * Sets whether or not this database is local to the machine on which the JVM resides.
063         * @param local true if local, false if remote
064         */
065        public void setLocal(boolean local);
066}