Subtle Earthquakes
It's amazing how complex systems can really bite you in the rear. I'm reading Prey as well as trying to get a few fixes out that have been impacted by a seemingly minor change in one of the data sources I use. Seemingly, I say, because the ripple effects were far wider than I had originally thought, and to fix each one has taken more time than I had originally planned. Oh sure, the changes I knew about have been put into place just fine... it's the ones that I didn't know I'd be facing that are real pains.
For example, I'm using the JEP Java Expression Parser, and while it's a nice piece of work, it's got some structures based on Hashtables as opposed to HashMaps. This means that I can't ask it to represent null values properly as the old Hashtable can't deal with that. Since the error reporting it less than "stellar", I don't even get good error messages when I give it a null. So that brings up the problem of testing for a null in an expression - clearly, you can't. But what a pain when the HashMap is right there!
I've now taken the route that any null variable value is immediately bad news, and the expression can never evaluate to true which is the point of the expression - to filter results. I'm hoping that this takes care of the problems I've been having, but it's never over till it's over, and I don't hear and fat singing lady.
Not yet, anyway.