Description
as far as i saw we use PropertyStates#createProperty to create and
set an OAK property from a given JCR value or a list of JCR values.
this works well for all types of values except for NAME, PATH which
may contain values with remapped namespaces which will not be converted
back to oak-values during the state creation:
List<String> vals = Lists.newArrayList(); for (Value value : values) { vals.add(value.getString()); } return new MultiGenericPropertyState(name, vals, Type.fromTag(type, true));
if am not mistaken
value.getString()
will return the JCR
representation of the value instead of the oak representation as it
would be needed here.
possible solutions include:
- passing namepathmapper to the create method
- only accept oak Value implementation that allows to retrieve the
internal representation, which is present in the ValueImpl afaik.