[ 
https://issues.apache.org/jira/browse/SLING-8309?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sergiu Dumitriu updated SLING-8309:
-----------------------------------
    Description: 
Currently, {{OakSlingRepositoryManager}} uses a hard-coded list of 
{{CommitHook}} and {{EditorProvider}} to be used by the Oak repository. This 
means that other than building a patched version of 
{{OakSlingRepositoryManager}} there's no way to include a new commit observer. 
Ideally, a single pseudo-\{{CommitHook}} and pseudo-\{{EditorProvider}} should 
be handled to Oak, and these should just dynamically aggregate all the 
{{CommitHook}} and {{EditorProvider}} instances registered in the 
{{Whiteboard}}.

All the currently hardcoded components are already available in the whiteboard, 
so no functionality will be lost, but this change will automatically enable 
support for {{mix:atomicCounter}} via the {{AtomicCounterEditorProvider}} 
that's not used at the moment.

The old behavior should still be available via a new configuration, 
{{OakSlingRepositoryManagerConfiguration#dynamic_components}}.

  was:
Currently, {{OakSlingRepositoryManager}} uses a hard-coded list of 
{{CommitHook}}s and {{EditorProvider}}s to be used by the Oak repository. This 
means that other than building a patched version of 
{{OakSlingRepositoryManager}} there's no way to include a new commit observer. 
Ideally, a single pseudo-\{{CommitHook}} and pseudo-\{{EditorProvider}} should 
be handled to Oak, and these should just dynamically aggregate all the 
{{CommitHook}} and {{EditorProvider}} instances registered in the 
{{Whiteboard}}.

All the currently hardcoded components are already available in the whiteboard, 
so no functionality will be lost, but this change will automatically enable 
support for {{mix:atomicCounter}} via the {{AtomicCounterEditorProvider}} 
that's not used at the moment.

The old behavior should still be available via a new configuration, 
{{OakSlingRepositoryManagerConfiguration#dynamic_components}}.


> Allow adding CommitHooks and EditorProviders dynamically from bundles
> ---------------------------------------------------------------------
>
>                 Key: SLING-8309
>                 URL: https://issues.apache.org/jira/browse/SLING-8309
>             Project: Sling
>          Issue Type: Improvement
>          Components: Oak
>            Reporter: Sergiu Dumitriu
>            Priority: Major
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> Currently, {{OakSlingRepositoryManager}} uses a hard-coded list of 
> {{CommitHook}} and {{EditorProvider}} to be used by the Oak repository. This 
> means that other than building a patched version of 
> {{OakSlingRepositoryManager}} there's no way to include a new commit 
> observer. Ideally, a single pseudo-\{{CommitHook}} and 
> pseudo-\{{EditorProvider}} should be handled to Oak, and these should just 
> dynamically aggregate all the {{CommitHook}} and {{EditorProvider}} instances 
> registered in the {{Whiteboard}}.
> All the currently hardcoded components are already available in the 
> whiteboard, so no functionality will be lost, but this change will 
> automatically enable support for {{mix:atomicCounter}} via the 
> {{AtomicCounterEditorProvider}} that's not used at the moment.
> The old behavior should still be available via a new configuration, 
> {{OakSlingRepositoryManagerConfiguration#dynamic_components}}.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to