You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cz...@apache.org on 2020/03/20 07:04:46 UTC
[sling-org-apache-sling-installer-core] branch master updated:
SLING-9172 - rename property to experimental
This is an automated email from the ASF dual-hosted git repository.
cziegeler pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-installer-core.git
The following commit(s) were added to refs/heads/master by this push:
new f3227c1 SLING-9172 - rename property to experimental
f3227c1 is described below
commit f3227c19b1b84bfdb241bea7ceb41c1b4ba841bc
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Fri Mar 20 08:04:32 2020 +0100
SLING-9172 - rename property to experimental
---
.../apache/sling/installer/core/impl/DefaultTransformer.java | 4 ++--
.../apache/sling/installer/core/impl/OsgiInstallerImpl.java | 11 +++++++++++
.../sling/installer/core/impl/tasks/BundleTaskCreator.java | 9 +++++----
3 files changed, 18 insertions(+), 6 deletions(-)
diff --git a/src/main/java/org/apache/sling/installer/core/impl/DefaultTransformer.java b/src/main/java/org/apache/sling/installer/core/impl/DefaultTransformer.java
index e10cdfe..2f32e55 100644
--- a/src/main/java/org/apache/sling/installer/core/impl/DefaultTransformer.java
+++ b/src/main/java/org/apache/sling/installer/core/impl/DefaultTransformer.java
@@ -42,7 +42,7 @@ public class DefaultTransformer
/** Logger */
private final Logger logger = LoggerFactory.getLogger(this.getClass());
-
+
private boolean isMultiVersion;
/**
@@ -50,7 +50,7 @@ public class DefaultTransformer
*/
@Override
public void init(final BundleContext bctx, final ResourceChangeListener rcl, RetryHandler retryHandler) {
- this.isMultiVersion = Boolean.TRUE.equals(Boolean.valueOf(bctx.getProperty("sling.installer.multiversion")));
+ this.isMultiVersion = OsgiInstallerImpl.isMultiVersionSupportEnabled(bctx);
}
/**
diff --git a/src/main/java/org/apache/sling/installer/core/impl/OsgiInstallerImpl.java b/src/main/java/org/apache/sling/installer/core/impl/OsgiInstallerImpl.java
index dde3da7..646f173 100644
--- a/src/main/java/org/apache/sling/installer/core/impl/OsgiInstallerImpl.java
+++ b/src/main/java/org/apache/sling/installer/core/impl/OsgiInstallerImpl.java
@@ -91,6 +91,11 @@ implements OsgiInstaller, ResourceChangeListener, RetryHandler, InfoProvider, Ru
private static final String PROP_START_LEVEL_HANDLING = "sling.installer.switchstartlevel";
/**
+ * Property to enable experimental multi version support
+ */
+ private static final String PROP_EXPERIMENTAL_MULTI_VERSION_SUPPORT = "sling.installer.experimental.multiversion";
+
+ /**
* The name of the framework property setting required services
*/
private static final String PROP_REQUIRED_SERVICES = "sling.installer.requiredservices";
@@ -1643,4 +1648,10 @@ implements OsgiInstaller, ResourceChangeListener, RetryHandler, InfoProvider, Ru
up.update(groups);
}
}
+
+ public static boolean isMultiVersionSupportEnabled(final BundleContext bundleContext) {
+ return Converters.standardConverter()
+ .convert(bundleContext.getProperty(OsgiInstallerImpl.PROP_EXPERIMENTAL_MULTI_VERSION_SUPPORT))
+ .defaultValue(false).to(Boolean.class);
+ }
}
\ No newline at end of file
diff --git a/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleTaskCreator.java b/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleTaskCreator.java
index 1cbf26c..a8a1453 100644
--- a/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleTaskCreator.java
+++ b/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleTaskCreator.java
@@ -33,6 +33,7 @@ import org.apache.sling.installer.api.tasks.TaskResourceGroup;
import org.apache.sling.installer.core.impl.BundleBlackList;
import org.apache.sling.installer.core.impl.EntityResourceList;
import org.apache.sling.installer.core.impl.InternalService;
+import org.apache.sling.installer.core.impl.OsgiInstallerImpl;
import org.apache.sling.installer.core.impl.PersistentResourceList;
import org.apache.sling.installer.core.impl.RegisteredResourceImpl;
import org.apache.sling.installer.core.impl.Util;
@@ -80,8 +81,8 @@ public class BundleTaskCreator
public void init(final BundleContext bc, final ResourceChangeListener listener, final RetryHandler retryHandler) {
this.bundleContext = bc;
this.retryHandler = retryHandler;
-
- this.isMultiVersion = Boolean.TRUE.equals(Boolean.valueOf(bc.getProperty("sling.installer.multiversion")));
+
+ this.isMultiVersion = OsgiInstallerImpl.isMultiVersionSupportEnabled(bc);
this.bundleContext.addBundleListener(this);
this.bundleContext.addFrameworkListener(this);
@@ -234,13 +235,13 @@ public class BundleTaskCreator
logger.info(message);
result = new ChangeStateTask(resourceList, ResourceState.IGNORED, message);
} else {
-
+
// if not isMultiVersion for install and update, we want the bundle with the
// highest version - otherwise only check for very same version (potential updates of snapshots)
String bundleVersion = null;
if (this.isMultiVersion) {
bundleVersion = newVersion.toString();
- }
+ }
final BundleInfo info = this.getBundleInfo(symbolicName, bundleVersion);