View Javadoc
1   package org.apache.commons.jcs3.utils.access;
2   
3   import java.util.concurrent.atomic.AtomicBoolean;
4   
5   /*
6    * Licensed to the Apache Software Foundation (ASF) under one
7    * or more contributor license agreements.  See the NOTICE file
8    * distributed with this work for additional information
9    * regarding copyright ownership.  The ASF licenses this file
10   * to you under the Apache License, Version 2.0 (the
11   * "License"); you may not use this file except in compliance
12   * with the License.  You may obtain a copy of the License at
13   *
14   *   http://www.apache.org/licenses/LICENSE-2.0
15   *
16   * Unless required by applicable law or agreed to in writing,
17   * software distributed under the License is distributed on an
18   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
19   * KIND, either express or implied.  See the License for the
20   * specific language governing permissions and limitations
21   * under the License.
22   */
23  
24  /**
25   * This is an abstract template for JCSWorkerHelper implementations. it simple has a convenience
26   * method for setting the finished flag.
27   */
28  public abstract class AbstractJCSWorkerHelper<V> implements JCSWorkerHelper<V>
29  {
30      /** finished flag. Can't we use wait notify? */
31      private final AtomicBoolean finished = new AtomicBoolean(false);
32  
33      /**
34       * Default
35       */
36      public AbstractJCSWorkerHelper()
37      {
38      }
39  
40      /**
41       * @return finished
42       */
43      @Override
44      public boolean isFinished()
45      {
46          return finished.get();
47      }
48  
49      /**
50       * @param isFinished
51       */
52      @Override
53      public void setFinished( final boolean isFinished )
54      {
55          finished.set(isFinished);
56      }
57  }