I think the writeback is a bug as it stands right now. AFAICS, the
webconsole always converts arrays to primitive arrays and the
writeback just serialises what is there as is. Given that the
documentation only mentions a capital "I", the writeback should be
converting primitive arrays before writing back.

I don't mind changing the documentation to allow lower case "i" as
well - assuming that really already works in all places - however, it
will cause some inconsistencies because if you then put a config in
the repository with a capital "I" it will first create a config with a
none primitive array. Next, if you modify it using the webconsole it
will turn into a primitive array which will be written back as lower
case "i". Not sure that is a real problem but it is somewhat confusing
as the config in the repository now has a lower case "i".

In other words, I think we are really talking about two things - a bug
in the writeback and a potential broadening of the supported types.

regards,

Karl

On Mon, Mar 4, 2019 at 7:06 PM Carsten Ziegeler <cziege...@apache.org> wrote:
>
> +1 its always good to document reality...unless its a bug of course :)
>
> Carsten
>
>
> Georg Henzler wrote
> > If it works I'm +1 to document it...
> >
> > On 2019-02-27 14:15, Konrad Windszus wrote:
> >> Despite the documentation at
> >> https://sling.apache.org/documentation/bundles/configuration-installer-factory.html#configuration-files-config
> >>
> >> <https://github.com/apache/felix/blob/trunk/configadmin/src/main/java/org/apache/felix/cm/file/ConfigurationHandler.java>
> >>
> >> also primitive types are supported (with lower-case type information
> >> characters, compare with
> >> https://github.com/apache/felix/blob/ad2aabb04c754f86c6417c437256500dd61a4ffb/configadmin/src/main/java/org/apache/felix/cm/file/ConfigurationHandler.java#L92).
> >>
> >> Is there a reason why this is not documented?
> >> AFAIK the lowercase is also used for the JCR Installer write back,
> >> e.g. in case the metatype defines something like "<AD id="levels"
> >> type="Integer" cardinality="2147483647" name="Absolute Levels"
> >> description="List of absolute parent levels. Example: Absolute parent
> >> level 1 of '/foo/bar/test' is '/foo/bar'."/>"
> >>
> >> In case the cardinality is a large positive integer it is always
> >> supposed to be an array of primitives (compare with
> >> https://osgi.org/specification/osgi.cmpn/7.0.0/service.metatype.html#org.osgi.service.metatype.annotations.AttributeType).
> >>
> >> Does anything speak against extending that documentation in that regard?
> >>
> >> Thanks,
> >> Konrad
> --
> Carsten Ziegeler
> Adobe Research Switzerland
> cziege...@apache.org



-- 
Karl Pauls
karlpa...@gmail.com

Reply via email to