def.invoke( entry.getKey(), instance, entry.getValue() );
}
if ( def.isCache() && def.getKeyMethod() == null && filterDefinition.getParameters().size() > 0 ) {
throw new SearchException("Filter with parameters and no @Key method: " + filterDefinition.getName() );
}
FilterKey key = null;
if ( def.isCache() ) {
if ( def.getKeyMethod() == null ) {
key = new FilterKey( ) {
public int hashCode() {
return getImpl().hashCode();
}
public boolean equals(Object obj) {
if ( ! ( obj instanceof FilterKey ) ) return false;
FilterKey that = (FilterKey) obj;
return this.getImpl().equals( that.getImpl() );
}
};
}
else {
try {