[ https://issues.apache.org/jira/browse/SLING-10844?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17574084#comment-17574084 ]
Carsten Ziegeler commented on SLING-10844: ------------------------------------------ I think we should try to sort this one out in one way or the other, it is open for a very long time. Trying to get to the bottom of it, it seems that there was an incompatible change in ResourceMapper.getAllMappings which now in some cases returns an empty collection; and that is not allowed according to the javadocs. So I think that needs to be fixed, then all code using this method can rely on the contract and don't need an isEmpty() check > ResourceMapper.getMapping() returns null for empty path > ------------------------------------------------------- > > Key: SLING-10844 > URL: https://issues.apache.org/jira/browse/SLING-10844 > Project: Sling > Issue Type: Bug > Components: ResourceResolver > Affects Versions: Resource Resolver 1.7.0 > Reporter: Mohit Arora > Assignee: Robert Munteanu > Priority: Major > Time Spent: 3h > Remaining Estimate: 0h > > After the bug fix for SLING-9620, the behavior for > ResourceMapper.getAllMappings() was changed such that the mappings list > remains empty if the resourcePath provided is an empty string. Prior to this > bug fix, the mappings list contained a single entry for empty path. > Since mappings list is empty, [ResourceMapper.getMapping() returns > null|https://github.com/apache/sling-org-apache-sling-resourceresolver/blob/master/src/main/java/org/apache/sling/resourceresolver/impl/mapping/ResourceMapperImpl.java#L74-L75]. > The [javadoc of > ResourceMapper.getMapping()|https://github.com/apache/sling-org-apache-sling-api/blob/master/src/main/java/org/apache/sling/api/resource/mapping/ResourceMapper.java#L67] > API mentions that it will return a non null value if the resourcepath is not > null. > We need to decide on the expected behavior here. If mappings list should not > be updated in case of empty resourcePath then the API annotation will have to > be changed and it can potentially be a backwards incompatible issue in theory > as the consumers of the API may not have added a null check to the return > value. -- This message was sent by Atlassian Jira (v8.20.10#820010)