This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to branch master
in repository 
https://gitbox.apache.org/repos/asf/sling-org-apache-sling-feature-cpconverter.git


The following commit(s) were added to refs/heads/master by this push:
     new bab2d1a  SLING-11821  - CP Converter doesn't handle Container packages 
correctly for calculating dependencies
bab2d1a is described below

commit bab2d1a4999cadaa02cf1bb261e9576254a567b9
Author: Dominik Süß <[email protected]>
AuthorDate: Tue Apr 11 15:22:51 2023 +0200

    SLING-11821  - CP Converter doesn't handle Container packages correctly for 
calculating dependencies
    
    * SLING-11821 - fixing packageType lookup & adding testcase to ensure no 
creation of implicit dependencies on container packages.
    * SLING-11821 - fixing handling of packages without type definitions
---
 .../feature/cpconverter/ContentPackage2FeatureModelConverter.java     | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git 
a/src/main/java/org/apache/sling/feature/cpconverter/ContentPackage2FeatureModelConverter.java
 
b/src/main/java/org/apache/sling/feature/cpconverter/ContentPackage2FeatureModelConverter.java
index 1380880..7bf91f7 100644
--- 
a/src/main/java/org/apache/sling/feature/cpconverter/ContentPackage2FeatureModelConverter.java
+++ 
b/src/main/java/org/apache/sling/feature/cpconverter/ContentPackage2FeatureModelConverter.java
@@ -40,6 +40,7 @@ import java.util.concurrent.ConcurrentHashMap;
 import java.util.regex.Pattern;
 
 import org.apache.commons.io.FileUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.jackrabbit.vault.fs.io.Archive;
 import org.apache.jackrabbit.vault.fs.io.Archive.Entry;
 import org.apache.jackrabbit.vault.packaging.Dependency;
@@ -398,7 +399,8 @@ public class ContentPackage2FeatureModelConverter extends 
BaseVaultPackageScanne
         VaultPackageAssembler handler = getMainPackageAssembler();
         
         Properties parentProps = handler.getPackageProperties();
-        boolean isContainerPackage = 
PackageType.CONTAINER.equals(PackageType.valueOf(((String)parentProps.get(PackageProperties.NAME_PACKAGE_TYPE)).toUpperCase(Locale.ENGLISH)));
+        String parentTypeStr = 
(String)parentProps.get(PackageProperties.NAME_PACKAGE_TYPE);
+        boolean isContainerPackage = StringUtils.isNotBlank(parentTypeStr) ? 
PackageType.CONTAINER.equals(PackageType.valueOf(parentTypeStr.toUpperCase(Locale.ENGLISH)))
 : false;
         setMainPackageAssembler(clonedPackage);
         assemblers.add(clonedPackage);
 

Reply via email to