[ https://issues.apache.org/jira/browse/SLING-6131?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15565811#comment-15565811 ]
Carsten Ziegeler edited comment on SLING-6131 at 10/11/16 3:51 PM: ------------------------------------------------------------------- It seems the "else" part is not sending an OSGi event if the mapping changed. Testing a fix now... was (Author: cziegeler): It seems the "else" part is not sending an OSGi event if the mapping changed. > MapEntries: Invalid logic around added/changed/removed property names > --------------------------------------------------------------------- > > Key: SLING-6131 > URL: https://issues.apache.org/jira/browse/SLING-6131 > Project: Sling > Issue Type: Bug > Components: ResourceResolver > Reporter: Bertrand Delacretaz > Assignee: Carsten Ziegeler > Priority: Critical > Fix For: Resource Resolver 1.4.20 > > > The SLING-6000 changes have introduced code that looks incorrect and breaks a > number of integration tests (MappingEventsProxyTest, > ResourceResolverProxyTest, VanityPathTest) as (for example) changing a single > property of a map entry does not cause MapEntries to send events anymore. > In the affected code below, from the MapEntries class, the changedAttributes > and removedAttributes section are not reached if addedAttributes is null, I > don't think that's intentional. > [~cziegeler] could you have a look? I have assigned this to you as IIUC you > wrote that SLING-6000 code. > This is blocking SLING-5135 but I'll commit that code and disable the > affected integration tests until this is fixed. > {code} > Set<String> addedAttributes = rc.getAddedPropertyNames(); > if (addedAttributes != null) { > ... > wasResolverRefreshed = doAddAttributes(path, addedAttributes, > wasResolverRefreshed); > ... > Set<String> changedAttributes = rc.getChangedPropertyNames(); > ... > Set<String> removedAttributes = rc.getRemovedPropertyNames(); > } else { > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)