Eran Chinthaka wrote:
I tried to do this with Sandesha2, Policy and Axis2 in the project, in addition to Axiom. I found that this will change 242 places in 83 files. Doing this kind of non-critical refactoring is not that good, at least in the current stage.
a) This kind of refactor doesn't change functionality at all - therefore it's a much less intrusive/worrysome change than some kind of behavioral thing which might actually affect the operation of dependent code (this is just a simple rename/recompile). What's the worry?
b) It is much better to change this stuff before 1.0. Yes, we'll do stuff like this after 1.0 but it'll be a bit more of a pain, so I'd rather get it out of the way.
c) 83 files across four projects really isn't that many (were you really surprised by that number?), and the tools make this kind of thing easy.
I would much rather do this change now. The only valid concern I can see is worrying about other people's code which might already depend on this API. If we're really concerned about that (I don't think it's a big deal before 1.0), we could deprecate getName() and still change all the Apache code to use getURI()/getNamespaceURI() - then get rid of it in 1.1 or 1.2.
I'll certainly live with it if everyone else feels we should leave it, I just hope that this isn't a trend towards locking down these APIs forever... I guarantee we didn't get everything right the first time around and would like to be able to fix things. :) My apologies, by the way, if I come across as cranky about this stuff - I don't intend to, I just want things to be as good/easy/clean as they can be.
--Glen
