Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: com/virtuosotechnologies/asaph/model/opsemantics/FalsePredicateSemantics.java


1   /*
2   ================================================================================
3   
4     FILE:  FalsePredicateSemantics.java
5     
6     PROJECT:
7     
8       Asaph
9     
10    CONTENTS:
11    
12      A PredicateSemantics that sets every value to Boolean.FALSE.
13    
14    PROGRAMMERS:
15    
16      Daniel Azuma (DA)  <dazuma@kagi.com>
17    
18    COPYRIGHT:
19    
20      Copyright (C) 2003  Daniel Azuma  (dazuma@kagi.com)
21      
22      This program is free software; you can redistribute it and/or
23      modify it under the terms of the GNU General Public License as
24      published by the Free Software Foundation; either version 2
25      of the License, or (at your option) any later version.
26      
27      This program is distributed in the hope that it will be useful,
28      but WITHOUT ANY WARRANTY; without even the implied warranty of
29      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
30      GNU General Public License for more details.
31      
32      You should have received a copy of the GNU General Public
33      License along with this program; if not, write to
34        Free Software Foundation, Inc.
35        59 Temple Place, Suite 330
36        Boston, MA 02111-1307 USA
37  
38  ================================================================================
39  */
40  
41  
42  package com.virtuosotechnologies.asaph.model.opsemantics;
43  
44  
45  import java.util.Iterator;
46  
47  import com.virtuosotechnologies.asaph.model.SongIDResultSet;
48  import com.virtuosotechnologies.asaph.model.SongDatabaseFailedException;
49  
50  
51  /**
52   * A PredicateSemantics that sets every value to Boolean.FALSE.
53   */
54  public interface FalsePredicateSemantics
55  extends PredicateSemantics
56  {
57    /**
58     * The default implementation of FalsePredicateSemantics
59     */
60    public static class DefaultImplementation
61    implements FalsePredicateSemantics
62    {
63      /**
64       * Performs the operation on the given result set.
65       *
66       * @param resultSet the SongIDResultSet
67       * @exception SongDatabaseFailedException Catch-all exception for database-related
68       *     problems. This will often have a cause exception, which may be exceptions
69       *     like IOException or SQLException.
70       */
71      public void perform(
72        SongIDResultSet resultSet)
73      throws
74        SongDatabaseFailedException
75      {
76        for (Iterator iter = resultSet.getEntryCollection().iterator(); iter.hasNext(); )
77        {
78          SongIDResultSet.Entry entry = (SongIDResultSet.Entry)iter.next();
79          entry.setData(Boolean.FALSE);
80        }
81      }
82      
83      
84      /**
85       * The equals method should return true if the given object is a SongOperation
86       * with the same semantics as this one. (i.e. it would perform the same operation.)
87       * This may be used to optimize performance. It is always safe to return false from
88       * this method, if the semantics of the given object cannot be determined.
89       * (This is similar to the equals method in java.util.Comparator.)
90       * As a corollary, it is safe just to fall back on the default implementation
91       * inherited from java.lang.Object.
92       *
93       * @param obj object to test
94       * @return true if the object is equal
95       */
96      public boolean equals(
97        Object obj)
98      {
99        return obj instanceof FalsePredicateSemantics;
100     }
101   }
102 }