Uploaded image for project: 'Fedora Repository Project'
  1. Fedora Repository Project
  2. FCREPO-2035

remove fcrepo-audit-triplestore's dependency on fcrepo-audit

    Details

    • Roadmap Theme:
      API Specification, SPI Specification
    • Sprint:
      Sprint 2015 - 15

      Description

      In order to avoid code duplication, the camel-toolbox artifact fcrepo-audit-triplestore uses a method from fcrepo-audit. While this saves a few lines of code and adheres to the principle of DRY, in this case, it is a terrible structure. The reason it is terrible is that the fcrepo-audit module has a hard dependency on fcrepo-kernel-modeshape and by extension: infinispan, cassandra, mongodb, etc. In OSGi, one needs to be explicit about dependencies and so simply by using that one static function from fcrepo-audit, it makes the OSGi bundle carry along the entire modeshape/infinispan infrastructure in the OSGi runtime. This actually makes the system _more_ brittle, makes testing harder and is, generally a bad architecture. The camel code shouldn't need to care a whit about modeshape.

      Until the time that fcrepo-audit does not have a hard dependency on modeshape, etc, the camel code should not use the fcrepo-audit module.

        Attachments

          Activity

            People

            • Assignee:
              acoburn Aaron Coburn
              Reporter:
              acoburn Aaron Coburn
              Reviewer:
              Andrew Woods
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: