Bertrand Delacretaz created SLING-6131:
------------------------------------------

             Summary: 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: Minor


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)

Reply via email to