1 /** 2 * C-JDBC: Clustered JDBC. 3 * Copyright (C) 2002-2005 French National Institute For Research In Computer 4 * Science And Control (INRIA). 5 * Contact: c-jdbc@objectweb.org 6 * 7 * This library is free software; you can redistribute it and/or modify it 8 * under the terms of the GNU Lesser General Public License as published by the 9 * Free Software Foundation; either version 2.1 of the License, or any later 10 * version. 11 * 12 * This library is distributed in the hope that it will be useful, but WITHOUT 13 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 14 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License 15 * for more details. 16 * 17 * You should have received a copy of the GNU Lesser General Public License 18 * along with this library; if not, write to the Free Software Foundation, 19 * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. 20 * 21 * Initial developer(s): Emmanuel Cecchet. 22 * Contributor(s): ______________________. 23 */ 24 25 package org.objectweb.cjdbc.controller.virtualdatabase.protocol; 26 27 import java.sql.SQLException; 28 29 import org.objectweb.cjdbc.common.sql.AbstractWriteRequest; 30 import org.objectweb.cjdbc.controller.requestmanager.distributed.DistributedRequestManager; 31 32 /** 33 * This class defines a CacheInvalidate 34 * 35 * @author <a HREF="mailto:Emmanuel.Cecchet@inria.fr">Emmanuel Cecchet </a> 36 * @version 1.0 37 */ 38 public class CacheInvalidate extends DistributedRequest 39 { 40 private static final long serialVersionUID = -3330942475224539877L; 41 42 /** 43 * Creates a new <code>CacheInvalidate</code> object 44 * 45 * @param request Write request that invalidates the cache 46 */ 47 public CacheInvalidate(AbstractWriteRequest request) 48 { 49 super(request); 50 } 51 52 /** 53 * @see org.objectweb.cjdbc.controller.virtualdatabase.protocol.DistributedRequest#scheduleRequest(org.objectweb.cjdbc.controller.requestmanager.distributed.DistributedRequestManager) 54 */ 55 public final void scheduleRequest(DistributedRequestManager drm) 56 throws SQLException 57 { 58 } 59 60 /** 61 * @see org.objectweb.cjdbc.controller.virtualdatabase.protocol.DistributedRequest#executeScheduledRequest(org.objectweb.cjdbc.controller.requestmanager.distributed.DistributedRequestManager) 62 */ 63 public final Object executeScheduledRequest(DistributedRequestManager drm) 64 throws SQLException 65 { 66 // Notify cache if any 67 if (drm.getResultCache() != null) 68 { // Update cache 69 drm.getResultCache().writeNotify((AbstractWriteRequest) request); 70 } 71 return null; 72 } 73 74 }