Hi,

I put these together the other day - any thoughts?

Topic
- [ ] Recent changes
    - [ ] archiva-common
        - [ ] PathUtil
- [ ] doesn't this already exist in plexus-utils/commons- io?
        - [ ] BaseFile
            - [ ] is this a case of premature optimisation?
        - [ ] Consumer
            - [ ] why init? why not just in the constructor? Seems like
                  a half component...
            - [ ] I found it to be a confusing inheritence structure
            - [ ] Better to move all consumers to a -consumers artifact
                  rather than split over commons and core?
        - [ ] ConsumerFactory
            - [ ] unnecessary plexus use. 'name' is never used.
        - [ ] GenericModelConsumer
            - [ ] only used in mocks?
        - [ ] GenericArtifactConsumer
            - [ ] should use plexus requirements to get the builders as
                  a map
- [ ] since this probably shouldn't be a component, pass in the
                  builder to processFile (or wrap the artifact
                  repository in a container that has the builder and
                  artifact repo - this is more practical since
                  eventually it will be part of the layout anyway)
        - [ ] ManagedArtifactTypes
            - [ ] this should be able to be achieved with the
                  existing metadata from the ArtifactTypeHandler in
                  maven-artifact, rather than duplicating the types of
                  attachments (with the addition of the javadoc and
sources attachments which could be managed in Archiva)
    - [ ] archiva-core
        - [ ] RepositoryTask
            - [ ] put policies into plexus-taskqueue?
        - [ ] DataRefreshExecutor
            - [ ] consumers should be a list requirement directly from
                  plexus, no need for wrapper class
    - [ ] archiva-reports-standard
        - [ ] better to use string representation for key than
              [Artifact|Metadata]ResultsKey?
        - [ ] ReportingDatabase should be an interface, proper
              components
        - [ ] why is getting the number of failures, etc resource
              intensive? Because not all loaded at once?
        - [ ] ArtifactResultsDatabase has strange component declaration
              vs inheritence.
- [ ] ARD is JDO specific. (this may have been fixed in archiva-database, haven't looked yet)
        - [ ] split into database, database-jdo and reports-standard,
              reports-other, etc.
        - [ ] is there an interface trigger for re-generating the
              reports in case the data gets out of sync?
    - [ ] General
- [ ] Some design notes needed / existing ones updated, and more javadoc particularly
              for the reusable classes
- [ ] Old Stuff
    - [ ] archiva-converter
        - [ ] FileTransaction seems duplicated with various transaction
              events (though both are used)
        - [ ] legacy converter is in separate package, but default
              repository converter is not.
        - [ ] check for code duplication between legacy and default
              converters

Reply via email to