Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Use CaseOSGiConfMgrCSCwcm.io ConfSling Confwcm.io Conf V2

A) Configuration Hierarchy

      

A1) Global Configuration

(tick)(tick)(error)(tick)

Status
colourGreen
titlePrio 1

 
A2) Default values for global configurations(tick)(tick)(error)(tick)

Status
colourGreen
titlePrio 1

 
A3) Configuration levels based on content hierarchy(error)(tick)(tick)(tick)

Status
colourGreen
titlePrio 1

 

A4) Nesting of configuration levels with parameter inheritance (object/resource-level)

(error)(tick)(error)(tick)

Status
colourGreen
titlePrio 1

 
A5) Nesting of configuration levels with parameter inheritance (property-level)(error)(error)(error)(tick)

Status
colourGreen
titlePrio 1

 
A6) Explicit linking of content with config hierarchy via property in content nodes(error)(tick)(error)(error)

Status
colourGreen
titlePrio 1

 
A6A7) Declarative linking of content with config hierarchy via configuration(error)(error)(error)(tick)

Status
colourGreen
titlePrio 1

 
A7A8) Declarative linking of content with config hierarchy via pluggable strategies(error)(error)(error)(tick)

Status
colourGreen
titlePrio 1

 

B) Describing configurations

      
B1) Bundles provide metadata which configuration parameters are available(tick)(error)(tick)(tick)

Status
colourGreen
titlePrio 1

 
B2) Parameter definitions with Parameter Group, Name, Data Type and Default Value(tick)(error)(tick)(tick)

Status
colourGreen
titlePrio 1

 
B3) Multi-valued parameter type (Array)(tick)(error)(tick)(tick)

Status
colourGreen
titlePrio 1

 
B4) Map parameter type (Key/Value pairs)(error)(error)(error)(tick)

(question)

 
B5) Parameter metadata for Edit GUIs like labels, descriptions, list options(tick)(error)(tick)(tick)

Status
colourGreen
titlePrio 1

 
B6) i18n Support for parameter metadata for Edit GUIs(tick)(error)(tick)(tick)

Status
colourGreen
titlePrio 1

 
B7) Define lists of parameter groups (like OSGi factory configs)(tick)(error)(tick)(error)

Status
colourGreen
titlePrio 1

 
B8) Define parameters via typed annotation classes(tick)(error)(error)(error)

Status
colourGreen
titlePrio 1

 
B9) Distinction between technical/infrastructure and business/application parameters(error)(error)(error)(error)

Status
colourYellow
titlePrio 2

 

C) Reading configurations (API)

      
C1) Access configurations via dedicated service interface(tick)(tick)(tick)(error)

Status
colourGreen
titlePrio 1

 
C2) Access configurations via adaptTo()(error)(tick)(error)(tick)

Status
colourGreen
titlePrio 1

 
C3) Parameters are divided in groups/sections accessible individually(tick)(tick)(error)(error)

Status
colourGreen
titlePrio 1

 
C4) Support of nested parameter groups/deep hierarchies(error)(tick)(error)(error)

Status
colourYellow
titlePrio 2

 
C5) Support list of parameter groups (like OSGi factory configs)(tick)(tick)(error)(error)

Status
colourGreen
titlePrio 1

 
C6) Support merging of lists of parameter groups along with inheritance(error)(tick)(error)(error)

Status
colourYellow
titlePrio 2

 
C7) Access parameters as key/value maps (Map)(tick)(tick)(tick)(tick)

Status
colourGreen
titlePrio 1

 
C8) Access parameters as ValueMap with easy type conversion(error)(tick)(tick)(tick)

Status
colourGreen
titlePrio 1

 
C9) Access parameters via Resource wrapper(error)(tick)(tick)(error)(question) 
C10) Access parameters via typed annotation classes(tick)(error)(error)(error)

Status
colourGreen
titlePrio 1

 
C11) Direct access to configuration parameters in Sightly bindings(error)(error)(error)(tick)

Status
colourYellow
titlePrio 2

 
C12) Easy access to configuration parameters in Sling Models(error)(tick)(error)(tick)

Status
colourGreen
titlePrio 1

 
C13) Easy access to configuration parameters in OSGi services(tick)(tick)(tick)(tick)

Status
colourGreen
titlePrio 1

 
C14) Support lowlevel access to other configuration-like resource structures beyond configuration parameter lists (e.g. workflow configurations)(error)(tick)(tick)(error)

Status
colourGreen
titlePrio 1

 

D) Storing configurations

      
D1) Store configuration in repository(tick)(tick)(tick)(tick)

Status
colourGreen
titlePrio 1

 
D2) Store configuration in hierarchies linked to content(error)(tick)(error)(tick)

Status
colourGreen
titlePrio 1

 
D3) Store configuration in folder separate from content like /conf(error)(tick)(tick)(tick)

Status
colourGreen
titlePrio 1

 
D4) Store configuration together with content in /content(error)(error)(error)(tick)

Status
colourGreen
titlePrio 1

 
D5) Pluggable storage strategies(error)(error)(error)(tick)

Status
colourGreen
titlePrio 1

 
D6) Store technical/infrastructure parameter on different location than business/application parameters(error)(error)(error)(error)

Status
colourYellow
titlePrio 2

 

E) Managing Configurations

      
E1) Provide configuration management API for reading and writing configuration(tick)(error)(error)(tick)

Status
colourGreen
titlePrio 1

 
E2) Provide GUI editor to edit configurations(tick)(error)(tick)(tick)

 

Status
colourGreen
titlePrio 1

E3) Provide web console plugin for inspecting configurations(tick)(tick)(error)(error)

Status
colourYellow
titlePrio 2

 
E4) Allow to lock parameter values on a certain configuration hierarchy level to disallow overriding it on deeper levels(error)(error)(error)(tick)

Status
colourGreen
titlePrio 1

 
E5) Configuration change listener - notification when configuration changes(tick)(error)(error)(error)

Status
colourYellow
titlePrio 2

 

F) Parameter overriding

      

F1) Allow overriding content-specific parameters via OSGi configuration

(error)(error)(error)(tick)

Status
colourGreen
titlePrio 1

 
F2) Allow overriding content-specific parameters via JVM system environment parameters(error)(error)(error)(tick)

Status
colourGreen
titlePrio 1

 
F3) Allow overriding content-specific parameters via request header (activate only on test instances)(error)(error)(error)(tick)

Status
colourYellow
titlePrio 2

 

G) AEM-specific features

      
G1) Support storing configurations in cq:Page nodes due to support around this (versioning, replication etc.)(error)(tick)(tick)(tick)

 

Status
colourGreen
titlePrio 1

G2) Configuration editor integrated in AEM Touch UI(error)(error)(error)(tick)

 

Status
colourGreen
titlePrio 1

H) Advanced Features

      
H1) Switch configurations depending on Sling Run Modes(tick)(error)(error)(error)(question) 
H2) Support different configuration hierarchy/persistence strategies for different applications deployed in the same instance(error)(error)(error)(tick)(question) 
H3) Placeholders within configuration values to reference other parameters(error)(error)(error)(error)(question) 
H4) Multi tenancy-support(error)(tick)(tick)(tick)

Status
colourGreen
titlePrio 1

 
H5) Multi tenancy-support with full isolation(error)(error)(error)(error)

Status
colourYellow
titlePrio 2

 
H6) Security: Easy protection of configuration via ACLs(tick)(tick)(tick)(tick)(error)

Status
colourGreen
titlePrio 1

 
H7) Detect "AEM Site root" via configuration (most times the most-inner configuration scope)(error)(error)(error)(tick) (question)