David Spencer wrote:
Bernhard Messer wrote:
Hi,
I would like to cache query objects in a hash map. My implementation failed, because not all of the Query classes are implementing the necessary method: "public int hashCode()". The same counts for the "public boolean equals (Object o)", "public String toString(String fieldName)" and "public String toString()". To force all subclasses of Query to implement this 4 methods, i would like to make them abstract within the base class and implement the missing ones in the subclasses. So in Query class itself, it would look:
public abstract String toString(String field); public abstract String toString();
What's the point of toString() w/o an argument - this doesn't really matter for Query does it?
Having a clean implementation of toString(), one would be able to reparse a Query with QueryParser. This is something which was discussed several times on the dev and user lists. I expect that it will work for all queries supported by QueryParser.
public abstract int hashCode(); public abstract boolean equals(Object o);
I think this would make the API cleaner and more usable.
Thoughts ???
Bernhard
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]