For anyone who’s read my books or considered the design of Spring, the interface part is hardly a surprise. It plays on both the OO concept of an interface (for which I’ve always had a deep love) and the notion of the interface to a system. For example, putting a web interface onto an existing green screen system–something I was actually doing when I first thought of the company name.
I was on site at a customer last week and a question came from the crowd, “Why isn’t getConfigLocations() abstract anymore?” After working in front of customers for a while, it becomes rare that you’re speechless, and yet I was. To be honest, my first thought was that there was no way the customer could be right. But lo and behold, in revision 1.3 of AbstractSingleSpringContextTests it clearly states that getConfigLocations() is no longer abstract. I hadn’t created any new integration tests against 2.0.1, so I hadn’t even seen the change.