KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > roller > business > search > operations > ReadFromIndexOperation


1 /*
2  * Licensed to the Apache Software Foundation (ASF) under one or more
3  * contributor license agreements. The ASF licenses this file to You
4  * under the Apache License, Version 2.0 (the "License"); you may not
5  * use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License. For additional information regarding
15  * copyright in this work, please see the NOTICE file in the top level
16  * directory of this distribution.
17  */

18 package org.apache.roller.business.search.operations;
19
20 import org.apache.commons.logging.Log;
21 import org.apache.commons.logging.LogFactory;
22 import org.apache.roller.business.IndexManagerImpl;
23
24 /**
25  * @author aim4min
26  */

27 public abstract class ReadFromIndexOperation extends IndexOperation {
28     public ReadFromIndexOperation(IndexManagerImpl mgr) {
29         super(mgr);
30     }
31     
32     private static Log mLogger = LogFactory.getFactory().getInstance(
33             ReadFromIndexOperation.class);
34     
35     public final void run() {
36         try {
37             manager.getReadWriteLock().readLock().acquire();
38             doRun();
39         } catch (InterruptedException JavaDoc e) {
40             mLogger.info("Error acquiring read lock on index", e);
41         } finally {
42             manager.getReadWriteLock().readLock().release();
43         }
44     }
45     
46 }
Popular Tags