protected EOAndQualifier andQualifierInCache(EOAndQualifier q) {
EOAndQualifier cachedQualifier = null;
String hashEntryName = nameForSet(q.allQualifierKeys());
Vector v = (Vector)_uniqueAndQualifiers.get(hashEntryName);
if (v != null) {
EOQualifier cache = qualifierContainedInEnumeration(q, v.elements());
if (cache != null)
cachedQualifier = (EOAndQualifier)cache;
} else {
v = new Vector();
_uniqueAndQualifiers.put(hashEntryName, v);
}
if (cachedQualifier == null) {
NSMutableArray qualifiers = null;
for (int c = 0; c < q.qualifiers().count(); c++) {
EOQualifier q1 = q.qualifiers().objectAtIndex(c);
EOQualifier cache = qualifierInCache(q1);
if (cache != null) {
if (qualifiers == null) {
qualifiers = new NSMutableArray();
qualifiers.addObjectsFromArray(q.qualifiers());
}