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);