Well, since you asked :)
On 17/10/2007, at 2:10 PM, Joakim Erdfelt wrote:
ArchivaArtifactConsumer is an abstract-dealing-with-artifacts
consumer.
RepositoryContentConsumer is for files.
A file that isn't an artifact can be *.xml, *.sha1, *.md5, maven-
metadata.xml, bad content, poorly named content, etc.
Would it be better to state the phase/scan instead?
RepositoryContentConsumer becomes -> RepositoryScanConsumer
ArchivaArtifactConsumer becomes -> DatabaseScanConsumer
These seem better, though there is still some question over even
these names. I suggest following through on Wendy's questions before
jumping ahead with anything.
And I would rather make this change now (yes Brett, I see you
there) and not have to deal with backwards compatibility issues
post 1.0 "in the wild". This time (right now) is the best time to
make this change. After the 1.0 release is just going to add
misery and pain to this process. Now is the sweet spot. We could
make the change post 1.0 but it wouldn't be a change, it would just
be another band-aide. Make the change now. Did you know that
making the change now would take less than an hour, including
testing. I think that Now is a good time. Now is the winter of
our discontent. Right now, hey, its your tomorrow. Right now,
C'mon (Brett), its everything. Right now, catch a magic moment, do
it, right here and now. It means everything. Its right now, oh,
tell me what are you waiting for, turn this thing around. :-)
I know you're somewhat kidding here, but I'm not quite sure how much,
so I'll say it anyway :)
I do not agree that 1.0 is some miracle milestone of inflexibility.
For two reasons:
a) whatever in the wild milestone you are referring to should have
been at the point of beta-1, as I said in the last mail
b) it's bad thinking that things can't change after 1.0
Frankly, I would prefer that development was done in the same fashion
whether it's 0.0.1-alpha-0, 1.0, 1.0.1, 1.1, 2.0 or Archiva 2008.
Simple, minimal public API exposure that allows maintaining
compatibility and the ability to refactor implementation details
within a module.
Let's just define what the acceptable extension points for Archiva
1.0 are (probably consumers, so maybe you've found the one example
where it might be difficult!), document them, and commit to
maintaining them and move forward in that way.
- Brett
--
Brett Porter - [EMAIL PROTECTED]
Blog: http://www.devzuz.org/blogs/bporter/