Uploaded image for project: 'Magnolia'
  1. Magnolia
  2. MAGNOLIA-1659

always register repositories, nodetypes and workspaces from module definitions

XMLWordPrintable

    • Icon: Improvement Improvement
    • Resolution: Fixed
    • Icon: Major Major
    • 3.5 RC1
    • 3.1 M1
    • updatemechanism
    • None

      (related to the new update mechanism, MAGNOLIA-1602 )

      at this moment the registration of new workspaces (also repositories/nodetypes) only happens during bootstrap and it's implemented by rewriting the repositories.xml file that will be loaded at system restart.
      This should not be needed, we have all the APIs we need to register new repositories/workspaces without changing such xml file...

      I propose to change the current implementation by making repositories declared in the module definition always checked. These are the steps that should be always performed while loading a module:

      • check if a declared repository exists -> if not create/load it in memory with default values (as it happens now on the repositories.xml file)
      • check if nodetypes already exist -> if not create them (better than now, this will auto-fix repositories where the nodetype definition is wrong/not complete)
      • check if workspace exists -> if not create it

      I see several benefits in doing it this way: no restart needed, cleaner implementation and removal of the last bit that still rewrite a user configuration file. It should not have any drawback (if you want to tune your configuration you can still add a repository/workspace configuration to repositories.xml as before)

        Acceptance criteria

              fgiust Fabrizio Giustina
              fgiust Fabrizio Giustina
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Created:
                Updated:
                Resolved:

                  Task DoD