Uploaded image for project: 'Artificer'
  1. Artificer
  2. ARTIF-609

Create a new ArtifactBuilder concept


    • Type: Enhancement
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: 0.7.0.Final
    • Component/s: None
    • Labels:


      The Deriver and Linker concepts are necessary, but are somewhat inflexible and unextenadble. For SRAMP-547, SRAMP-465, SRAMP-466, etc., a better solution is needed.

      Replace with an ArtifactBuilder that is in charge of building up the primary artifact and its set of derived artifacts. The set of available builders will be chained together, allowing devs to extend the build-in capabilities.

      When building, if a relationship target is not available in the current set of primary/derived artifacts, a new mediation layer, RelationshipSource, will be given enough information to define the target value in a later step. This information could include a QName, etc.

      After the artifacts are persisted in JCR, the builders are re-called to process any RelationshipSources. Technically, this could be combined with the above into one single step. However, due to the chaining, we want to provide visibility into the entire set of artifacts provided by the whole chain. The alternative, passing the list of artifacts through the chain, is brittle and would require knowing required ordering ahead of time. This idea will be vital for SRAMP-466

        Gliffy Diagrams


            Issue Links



                • Assignee:
                  brmeyer Brett Meyer
                  brmeyer Brett Meyer
                • Votes:
                  0 Vote for this issue
                  1 Start watching this issue


                  • Created: