diff options
Diffstat (limited to 'projects/net.wotonomy.persistence/src/main/java/net/wotonomy/control/EOOrQualifier.java')
| -rw-r--r-- | projects/net.wotonomy.persistence/src/main/java/net/wotonomy/control/EOOrQualifier.java | 183 |
1 files changed, 83 insertions, 100 deletions
diff --git a/projects/net.wotonomy.persistence/src/main/java/net/wotonomy/control/EOOrQualifier.java b/projects/net.wotonomy.persistence/src/main/java/net/wotonomy/control/EOOrQualifier.java index 7f4b1c6..fe31abe 100644 --- a/projects/net.wotonomy.persistence/src/main/java/net/wotonomy/control/EOOrQualifier.java +++ b/projects/net.wotonomy.persistence/src/main/java/net/wotonomy/control/EOOrQualifier.java @@ -28,90 +28,76 @@ import net.wotonomy.foundation.NSMutableArray; import net.wotonomy.foundation.internal.WotonomyException; /** -* EOOrQualifier contains other EOQualifiers, -* evaluating as true if any of the contained -* qualifiers evaluate as true. -* -* @author michael@mpowers.net -* @author yjcheung@intersectsoft.com -* @author $Author: cgruber $ -* @version $Revision: 894 $ -*/ -public class EOOrQualifier extends EOQualifier - implements EOKeyValueArchiving, EOQualifierEvaluation -{ - private List qualifiers; - - public EOOrQualifier( - List aQualifierList ) - { - qualifiers = new LinkedList( aQualifierList ); - } - - /** - * Returns a List of qualifiers contained by this qualifier. - */ - public NSArray qualifiers() - { - return new NSArray( qualifiers ); - } - - /** - * Add a new qualifier to the list. - */ - public void addQualifier(EOQualifier qualifier) - { - qualifiers.add(qualifier); - } - - /** - * Evaluates this qualifier for the specified object, - * and returns whether the object is qualified. - * selector() is invoked on the value for key() on the - * specified object, with value() as the parameter. - * - * Note: this has a lazy "or" implementation. Ex. Qal1 or Qal2. - * If Qal1 is evaluated to be true, then it returns true without - * further evaluate Qal2. - */ - public boolean evaluateWithObject( Object anObject ) - { - Iterator it = qualifiers.iterator(); - while( it.hasNext() ) - { - if ( ((EOQualifier) it.next()).evaluateWithObject(anObject) ) - { - return true; - } - } - return false; - } - - /** - * Returns a string representation of this qualifier. - */ - public String toString() - { - StringBuffer myBuf = new StringBuffer("("); - Iterator it = qualifiers.iterator(); - while (it.hasNext()) - { - myBuf = myBuf.append(((EOQualifier) it.next()).toString()).append(" or "); - } - String myStr = myBuf.toString(); - myStr = myStr.substring(0, myStr.lastIndexOf(" or ")).concat(")"); - return myStr; - } + * EOOrQualifier contains other EOQualifiers, evaluating as true if any of the + * contained qualifiers evaluate as true. + * + * @author michael@mpowers.net + * @author yjcheung@intersectsoft.com + * @author $Author: cgruber $ + * @version $Revision: 894 $ + */ +public class EOOrQualifier extends EOQualifier implements EOKeyValueArchiving, EOQualifierEvaluation { + private List qualifiers; + + public EOOrQualifier(List aQualifierList) { + qualifiers = new LinkedList(aQualifierList); + } + + /** + * Returns a List of qualifiers contained by this qualifier. + */ + public NSArray qualifiers() { + return new NSArray(qualifiers); + } + + /** + * Add a new qualifier to the list. + */ + public void addQualifier(EOQualifier qualifier) { + qualifiers.add(qualifier); + } + + /** + * Evaluates this qualifier for the specified object, and returns whether the + * object is qualified. selector() is invoked on the value for key() on the + * specified object, with value() as the parameter. + * + * Note: this has a lazy "or" implementation. Ex. Qal1 or Qal2. If Qal1 is + * evaluated to be true, then it returns true without further evaluate Qal2. + */ + public boolean evaluateWithObject(Object anObject) { + Iterator it = qualifiers.iterator(); + while (it.hasNext()) { + if (((EOQualifier) it.next()).evaluateWithObject(anObject)) { + return true; + } + } + return false; + } + + /** + * Returns a string representation of this qualifier. + */ + public String toString() { + StringBuffer myBuf = new StringBuffer("("); + Iterator it = qualifiers.iterator(); + while (it.hasNext()) { + myBuf = myBuf.append(((EOQualifier) it.next()).toString()).append(" or "); + } + String myStr = myBuf.toString(); + myStr = myStr.substring(0, myStr.lastIndexOf(" or ")).concat(")"); + return myStr; + } public static Object decodeWithKeyValueUnarchiver(EOKeyValueUnarchiver arch) { - NSArray a = (NSArray)arch.decodeObjectForKey("qualifiers"); + NSArray a = (NSArray) arch.decodeObjectForKey("qualifiers"); if (a == null) return null; NSMutableArray l = new NSMutableArray(); for (int i = 0; i < a.count(); i++) { - NSDictionary d = (NSDictionary)a.objectAtIndex(i); + NSDictionary d = (NSDictionary) a.objectAtIndex(i); EOKeyValueUnarchiver ua = new EOKeyValueUnarchiver(d); - EOQualifier q = (EOQualifier)EOQualifier.decodeWithKeyValueUnarchiver(ua); + EOQualifier q = (EOQualifier) EOQualifier.decodeWithKeyValueUnarchiver(ua); if (q != null) l.addObject(q); } @@ -121,11 +107,11 @@ public class EOOrQualifier extends EOQualifier public void encodeWithKeyValueArchiver(EOKeyValueArchiver arch) { arch.encodeObject("EOOrQualifier", "class"); NSMutableArray arr = new NSMutableArray(qualifiers.size()); - for (int i = 0; i < qualifiers.size(); i++) { - EOQualifier q = (EOQualifier)qualifiers.get(i); + for (int i = 0; i < qualifiers.size(); i++) { + EOQualifier q = (EOQualifier) qualifiers.get(i); if (q instanceof EOKeyValueArchiving) { EOKeyValueArchiver ar2 = new EOKeyValueArchiver(); - ((EOKeyValueArchiving)q).encodeWithKeyValueArchiver(ar2); + ((EOKeyValueArchiving) q).encodeWithKeyValueArchiver(ar2); arr.addObject(ar2.dictionary()); } else throw new WotonomyException("Cannot archive instance of " + q.getClass().getName()); @@ -136,34 +122,31 @@ public class EOOrQualifier extends EOQualifier } /* - * $Log$ - * Revision 1.2 2006/02/16 16:47:14 cgruber - * Move some classes in to "internal" packages and re-work imports, etc. + * $Log$ Revision 1.2 2006/02/16 16:47:14 cgruber Move some classes in to + * "internal" packages and re-work imports, etc. * - * Also use UnsupportedOperationExceptions where appropriate, instead of WotonomyExceptions. + * Also use UnsupportedOperationExceptions where appropriate, instead of + * WotonomyExceptions. * - * Revision 1.1 2006/02/16 13:19:57 cgruber - * Check in all sources in eclipse-friendly maven-enabled packages. + * Revision 1.1 2006/02/16 13:19:57 cgruber Check in all sources in + * eclipse-friendly maven-enabled packages. * - * Revision 1.6 2003/08/12 01:43:04 chochos - * formally implement EOQualifierEvaluation + * Revision 1.6 2003/08/12 01:43:04 chochos formally implement + * EOQualifierEvaluation * - * Revision 1.5 2003/08/09 01:22:51 chochos - * qualifiers implement EOKeyValueArchiving + * Revision 1.5 2003/08/09 01:22:51 chochos qualifiers implement + * EOKeyValueArchiving * - * Revision 1.4 2003/08/06 23:07:52 chochos - * general code cleanup (mostly, removing unused imports) + * Revision 1.4 2003/08/06 23:07:52 chochos general code cleanup (mostly, + * removing unused imports) * - * Revision 1.3 2001/10/31 15:25:14 mpowers - * Cleanup of qualifiers. + * Revision 1.3 2001/10/31 15:25:14 mpowers Cleanup of qualifiers. * - * Revision 1.2 2001/10/30 22:57:28 mpowers - * EOQualifier framework is now working. + * Revision 1.2 2001/10/30 22:57:28 mpowers EOQualifier framework is now + * working. * - * Revision 1.1 2001/09/13 15:25:56 mpowers - * Started implementation of the EOQualifier framework. + * Revision 1.1 2001/09/13 15:25:56 mpowers Started implementation of the + * EOQualifier framework. * * */ - - |
