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): Emmanuel Cecchet. 00022 * Contributor(s): Julie Marguerite. 00023 */ 00024 00025 package org.objectweb.cjdbc.controller.recoverylog; 00026 00027 import org.objectweb.cjdbc.controller.loadbalancer.tasks.AbstractTask; 00028 00029 /** 00030 * Recovery task containing an <code>AbstractTask</code> and the id of the 00031 * task in the recovery log. 00032 * 00033 * @author <a href="mailto:Emmanuel.Cecchet@inria.fr">Emmanuel Cecchet</a> 00034 * @author <a href="mailto:Julie.Marguerite@inria.fr">Julie Marguerite</a> 00035 * @version 1.0 00036 */ 00037 public class RecoveryTask 00038 { 00039 private int id; 00040 private long tid; 00041 private AbstractTask task; 00042 00043 /** 00044 * Constructs a new <code>RecoveryTask</code> instance. 00045 * 00046 * @param tid transaction id 00047 * @param id task id in the recovery log 00048 * @param task task to be executed 00049 */ 00050 public RecoveryTask(long tid,int id, AbstractTask task) 00051 { 00052 this.id = id; 00053 this.tid = tid; 00054 this.task = task; 00055 } 00056 00057 /** 00058 * Returns the tid value. 00059 * 00060 * @return Returns the tid. 00061 */ 00062 public long getTid() 00063 { 00064 return tid; 00065 } 00066 /** 00067 * Returns the id. 00068 * 00069 * @return int 00070 */ 00071 public int getId() 00072 { 00073 return id; 00074 } 00075 00076 /** 00077 * Returns the task. 00078 * 00079 * @return AbstractTask 00080 */ 00081 public AbstractTask getTask() 00082 { 00083 return task; 00084 } 00085 00086 /** 00087 * Sets the id. 00088 * 00089 * @param id the id to set 00090 */ 00091 public void setId(int id) 00092 { 00093 this.id = id; 00094 } 00095 00096 /** 00097 * Sets the task. 00098 * 00099 * @param task the task to set 00100 */ 00101 public void setTask(AbstractTask task) 00102 { 00103 this.task = task; 00104 } 00105 }