Uploaded image for project: 'Maven'
  1. Maven
  2. MNG-8120

ProjectBuilder api and ModelBuilder enhancements

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • 4.0.0
    • None
    • None

    Description

      The project builder uses multiple caches in the DefaultProjectBuilder.BuildSession:

      • the modelPool
      • the parentCache
      • the transformerContextBuilder
      • the modelCache

      The responsabilities are not clear, and the project builder needs to pass objects to the model builder without a clear API. A ModelSession interface should be provided by the ModelBuilder so that requests can be grouped and data cached correctly.
      This ModelSession becoming a public API, it could be stored and made available through the Project object, thereby becoming available to the DefaultConsumerPomBuilder which needs to re-load models inside a given model session (so as to access cached parents for example).

      The transformerContextBuilder which is used for raw/build POM transformation, needs to access already loaded models and eventually load new models.

      Attachments

        Activity

          People

            gnodet Guillaume Nodet
            gnodet Guillaume Nodet
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: