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 2017/08/17 06:56:58 UTC
svn commit: r1805260 -
/sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/impl/DefaultStartupHandler.java
Author: cziegeler
Date: Thu Aug 17 06:56:58 2017
New Revision: 1805260
URL: http://svn.apache.org/viewvc?rev=1805260&view=rev
Log:
SLING-7051 : Upgrade detection might fail due to file system inaccuracy
Modified:
sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/impl/DefaultStartupHandler.java
Modified: sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/impl/DefaultStartupHandler.java
URL: http://svn.apache.org/viewvc/sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/impl/DefaultStartupHandler.java?rev=1805260&r1=1805259&r2=1805260&view=diff
==============================================================================
--- sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/impl/DefaultStartupHandler.java (original)
+++ sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/impl/DefaultStartupHandler.java Thu Aug 17 06:56:58 2017
@@ -72,7 +72,7 @@ public class DefaultStartupHandler
private final AtomicInteger startupShouldWait = new AtomicInteger(0);
/** The queue for increasing the start level. */
- private final BlockingQueue<Boolean> queue = new LinkedBlockingQueue<Boolean>();
+ private final BlockingQueue<Boolean> queue = new LinkedBlockingQueue<>();
/** The start level service. */
private final StartLevel startLevelService;
@@ -90,7 +90,7 @@ public class DefaultStartupHandler
private final int expectedBundlesCount;
/** Active bundle set. */
- private final Set<String> activeBundles = new HashSet<String>();
+ private final Set<String> activeBundles = new HashSet<>();
/** Bundle Context. */
private final BundleContext bundleContext;
@@ -104,6 +104,9 @@ public class DefaultStartupHandler
/** The started time. */
private final long startedAt;
+ /** The startup manager. */
+ private final StartupManager startupManager;
+
private volatile Object[] logService;
/**
@@ -121,6 +124,7 @@ public class DefaultStartupHandler
this.startedAt = startedAt;
this.startupMode = manager.getMode();
this.targetStartLevel = manager.getTargetStartLevel();
+ this.startupManager = manager;
StartupListener listener = null;
try {
@@ -129,7 +133,7 @@ public class DefaultStartupHandler
// ignore
}
this.mbeanStartupListener = listener;
- this.listenerTracker = new ServiceTracker<StartupListener, StartupListener>(context, StartupListener.class,
+ this.listenerTracker = new ServiceTracker<>(context, StartupListener.class,
new ServiceTrackerCustomizer<StartupListener, StartupListener>() {
@Override
@@ -381,7 +385,7 @@ public class DefaultStartupHandler
this.bundleContext.removeFrameworkListener(this);
// register startup service
- final Dictionary<String, Object> serviceProps = new Hashtable<String, Object>();
+ final Dictionary<String, Object> serviceProps = new Hashtable<>();
serviceProps.put(StartupMode.class.getName(), this.startupMode.name());
serviceProps.put(Constants.SERVICE_DESCRIPTION, "Apache Sling Startup Service");
serviceProps.put(Constants.SERVICE_VENDOR, "The Apache Software Foundation");
@@ -393,6 +397,9 @@ public class DefaultStartupHandler
}
}, serviceProps);
+
+ // update timestamp
+ this.startupManager.markInstalled();
}
/**