Bertrand Delacretaz created SLING-5456:
------------------------------------------

             Summary: Implement SlingRepositoryInitializer plug-ins to setup 
the repository
                 Key: SLING-5456
                 URL: https://issues.apache.org/jira/browse/SLING-5456
             Project: Sling
          Issue Type: New Feature
          Components: Engine
            Reporter: Bertrand Delacretaz
            Assignee: Bertrand Delacretaz
            Priority: Minor


I'd like to implement a {{SlingRepositoryInitializer}} extension point for use 
cases like setting up service users and ACLs and creating the "base tree" of 
content as described in SLING-5449. 

This can also be very useful to handle content migrations or other cleanup 
operations in upgrades.

The scenario is that before registering the {{SlingRepository}} service, all 
active {{SlingRepositoryInitializer}} services are called in order of their 
service ranking, passing them the upcoming {{SlingRepository}} service so that 
they can act on it. Any exception thrown in this processing causes the 
{{SlingRepository}} service registration to be canceled.

The {{SlingRepositoryInitializer}} javadocs must stress that those services 
need to take clustered scenarios into account, and if necessary implement 
locking mechanisms to avoid stepping on each other's toes.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to