00001 /** 00002 * C-JDBC: Clustered JDBC. 00003 * Copyright (C) 2002-2004 French National Institute For Research In Computer 00004 * Science And Control (INRIA). 00005 * Contact: c-jdbc@objectweb.org 00006 * 00007 * This library is free software; you can redistribute it and/or modify it 00008 * under the terms of the GNU Lesser General Public License as published by the 00009 * Free Software Foundation; either version 2.1 of the License, or any later 00010 * version. 00011 * 00012 * This library is distributed in the hope that it will be useful, but WITHOUT 00013 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 00014 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License 00015 * for more details. 00016 * 00017 * You should have received a copy of the GNU Lesser General Public License 00018 * along with this library; if not, write to the Free Software Foundation, 00019 * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. 00020 * 00021 * Initial developer(s): Nicolas Modrzyk. 00022 * Contributor(s): ______________________. 00023 */ 00024 00025 package org.objectweb.cjdbc.common.shared; 00026 00027 /** 00028 * This describes the different backend states 00029 * 00030 * @author <a href="mailto:Nicolas.Modrzyk@inrialpes.fr">Nicolas Modrzyk </a> 00031 * @version 1.0 00032 */ 00033 public interface BackendState 00034 { 00035 00036 /** 00037 * The backend can execute read requests, but not write requests 00038 */ 00039 int READ_ENABLED_WRITE_DISABLED = 0; 00040 00041 /** 00042 * The backend can execute read and write requests 00043 */ 00044 int READ_ENABLED_WRITE_ENABLED = 1; 00045 00046 /** 00047 * The backend can execute write requests but not read requests 00048 */ 00049 int READ_DISABLED_WRITE_ENABLED = 2; 00050 00051 /** 00052 * The backend cannot execute any requests 00053 */ 00054 int DISABLED = 3; 00055 00056 /** 00057 * The backend is loading data from a dump file 00058 */ 00059 int RECOVERING = 4; 00060 00061 /** 00062 * The backend is set for disabled. It is finishing to execute open 00063 * transactions 00064 */ 00065 int DISABLING = 5; 00066 00067 /** 00068 * The backend is in a restore process. The content of a backup file is being 00069 * copied onto the backen 00070 */ 00071 int BACKUPING = 6; 00072 00073 /** 00074 * Unknown backend state. This is used when the state of the backend cannot be 00075 * determined properly. This is the state the backend is set to after a 00076 * backup, restore or recovery failure. 00077 */ 00078 int UNKNOWN = -1; 00079 00080 /** 00081 * Replaying request from the recovery log 00082 */ 00083 int REPLAYING = 7; 00084 }