SLING-5642 : Remove use of deprecated methods and update code to R6
git-svn-id: https://svn.apache.org/repos/asf/sling/trunk@1738092 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/pom.xml b/pom.xml
index 106b5ba..e10f221 100644
--- a/pom.xml
+++ b/pom.xml
@@ -47,6 +47,10 @@
<url>http://svn.apache.org/viewvc/sling/trunk/launchpad/base</url>
</scm>
+ <properties>
+ <sling.java.version>7</sling.java.version>
+ </properties>
+
<build>
<plugins>
<plugin>
diff --git a/src/main/java/org/apache/sling/launchpad/app/ControlListener.java b/src/main/java/org/apache/sling/launchpad/app/ControlListener.java
index 25ff7ec..6e6284b 100644
--- a/src/main/java/org/apache/sling/launchpad/app/ControlListener.java
+++ b/src/main/java/org/apache/sling/launchpad/app/ControlListener.java
@@ -172,6 +172,7 @@
* Implements the server thread receiving commands from clients and acting
* upon them.
*/
+ @Override
public void run() {
this.configure(false);
@@ -242,6 +243,7 @@
writeLine(s, RESPONSE_STOPPING);
} else {
this.shutdownThread = new Thread("Apache Sling Control Listener: Shutdown") {
+ @Override
public void run() {
slingMain.doStop();
try {
@@ -538,22 +540,12 @@
if (fromConfigFile) {
final File configFile = this.getConfigFile();
if (configFile.canRead()) {
- FileReader fr = null;
- try {
- fr = new FileReader(configFile);
- final LineNumberReader lnr = new LineNumberReader(fr);
+ try ( final LineNumberReader lnr = new LineNumberReader(new FileReader(configFile))) {
this.socketAddress = getSocketAddress(lnr.readLine());
this.secretKey = lnr.readLine();
result = true;
} catch (final IOException ignore) {
// ignore
- } finally {
- if (fr != null) {
- try {
- fr.close();
- } catch (final IOException ignore) {
- }
- }
}
}
} else {
diff --git a/src/main/java/org/apache/sling/launchpad/app/Main.java b/src/main/java/org/apache/sling/launchpad/app/Main.java
index 1866fa3..312ba8f 100644
--- a/src/main/java/org/apache/sling/launchpad/app/Main.java
+++ b/src/main/java/org/apache/sling/launchpad/app/Main.java
@@ -869,6 +869,7 @@
* scheduler bundle</a></li>
* </ul>
*/
+ @SuppressWarnings("deprecation")
static void cleanupThreads() {
// the current thread is the SlingNotifier thread part of
@@ -904,6 +905,7 @@
}
private class ShutdownHook implements Runnable {
+ @Override
public void run() {
Main.info("Java VM is shutting down", null);
Main.this.doStop();
@@ -917,6 +919,7 @@
* <code>Bundle.stop()</code> on the system bundle. This actually
* terminates the Sling Standalone application.
*/
+ @Override
public void stopped() {
/**
* This method is called if the framework is stopped from within by
@@ -946,6 +949,7 @@
* jar file. If <code>null</code> the existing launcher jar
* will be used again.
*/
+ @Override
public void updated(File updateFile) {
Main.this.sling = null;
diff --git a/src/main/java/org/apache/sling/launchpad/base/app/MainDelegate.java b/src/main/java/org/apache/sling/launchpad/base/app/MainDelegate.java
index d287f8c..6d17038 100644
--- a/src/main/java/org/apache/sling/launchpad/base/app/MainDelegate.java
+++ b/src/main/java/org/apache/sling/launchpad/base/app/MainDelegate.java
@@ -95,9 +95,6 @@
*/
private static final String PROP_PORT = "org.osgi.service.http.port";
- /** The default port on which the HTTP service listens. */
- private static final String DEFAULT_PORT = "8080";
-
private Notifiable notifiable;
/** The parsed command line mapping (Sling) option name to option value */
@@ -387,7 +384,7 @@
private static class SlingLogger extends Logger {
@Override
- protected void doLog(Bundle bundle, ServiceReference sr, int level, String msg, Throwable throwable) {
+ protected void doLog(Bundle bundle, @SuppressWarnings("rawtypes") ServiceReference sr, int level, String msg, Throwable throwable) {
// unwind throwable if it is a BundleException
if ((throwable instanceof BundleException) && (((BundleException) throwable).getNestedException() != null)) {
diff --git a/src/main/java/org/apache/sling/launchpad/base/impl/BootstrapInstaller.java b/src/main/java/org/apache/sling/launchpad/base/impl/BootstrapInstaller.java
index de04fd9..31454fc 100644
--- a/src/main/java/org/apache/sling/launchpad/base/impl/BootstrapInstaller.java
+++ b/src/main/java/org/apache/sling/launchpad/base/impl/BootstrapInstaller.java
@@ -43,9 +43,8 @@
import org.osgi.framework.BundleContext;
import org.osgi.framework.BundleException;
import org.osgi.framework.Constants;
-import org.osgi.framework.ServiceReference;
import org.osgi.framework.Version;
-import org.osgi.service.startlevel.StartLevel;
+import org.osgi.framework.startlevel.BundleStartLevel;
/**
* The <code>BootstrapInstaller</code> class is installed into the OSGi
@@ -387,37 +386,23 @@
final Map<String, Bundle> currentBundles,
final List<Bundle> installed) {
- // get the start level service (if possible) so we can set the initial start level
- ServiceReference ref = bundleContext.getServiceReference(StartLevel.class.getName());
- StartLevel startLevelService = (ref != null)
- ? (StartLevel) bundleContext.getService(ref)
- : null;
-
boolean requireRestart = false;
- try {
- File[] directories = slingStartupDir.listFiles(DirectoryUtil.DIRECTORY_FILTER);
- for (File levelDir : directories) {
- // get startlevel from dir name
- String dirName = levelDir.getName();
- int startLevel;
- try {
- startLevel = Integer.decode(dirName);
- } catch (NumberFormatException e) {
- startLevel = 0;
- }
-
- // iterate through all files in the startlevel dir
- File[] bundleFiles = levelDir.listFiles(DirectoryUtil.BUNDLE_FILE_FILTER);
- for (File bundleFile : bundleFiles) {
- requireRestart |= installBundle(bundleFile, startLevel,
- currentBundles, installed, startLevelService);
- }
+ File[] directories = slingStartupDir.listFiles(DirectoryUtil.DIRECTORY_FILTER);
+ for (File levelDir : directories) {
+ // get startlevel from dir name
+ String dirName = levelDir.getName();
+ int startLevel;
+ try {
+ startLevel = Integer.decode(dirName);
+ } catch (NumberFormatException e) {
+ startLevel = 0;
}
- } finally {
- // release the start level service
- if (ref != null) {
- bundleContext.ungetService(ref);
+ // iterate through all files in the startlevel dir
+ File[] bundleFiles = levelDir.listFiles(DirectoryUtil.BUNDLE_FILE_FILTER);
+ for (File bundleFile : bundleFiles) {
+ requireRestart |= installBundle(bundleFile, startLevel,
+ currentBundles, installed);
}
}
@@ -440,8 +425,7 @@
private boolean installBundle(final File bundleJar,
final int startLevel,
final Map<String, Bundle> currentBundles,
- final List<Bundle> installed,
- final StartLevel startLevelService) {
+ final List<Bundle> installed) {
// get the manifest for the bundle information
Manifest manifest = getManifest(bundleJar);
if (manifest == null) {
@@ -491,8 +475,7 @@
// optionally set the start level
if (startLevel > 0) {
- startLevelService.setBundleStartLevel(installedBundle,
- startLevel);
+ installedBundle.adapt(BundleStartLevel.class).setStartLevel(startLevel);
}
} catch (BundleException be) {
logger.log(Logger.LOG_ERROR, "Bundle update from "
@@ -520,8 +503,7 @@
// optionally set the start level
if (startLevel > 0) {
- startLevelService.setBundleStartLevel(theBundle,
- startLevel);
+ theBundle.adapt(BundleStartLevel.class).setStartLevel(startLevel);
}
} catch (BundleException be) {
diff --git a/src/main/java/org/apache/sling/launchpad/base/impl/ClassLoaderResourceProvider.java b/src/main/java/org/apache/sling/launchpad/base/impl/ClassLoaderResourceProvider.java
index 3b4128e..607862a 100644
--- a/src/main/java/org/apache/sling/launchpad/base/impl/ClassLoaderResourceProvider.java
+++ b/src/main/java/org/apache/sling/launchpad/base/impl/ClassLoaderResourceProvider.java
@@ -33,7 +33,7 @@
import org.apache.sling.launchpad.api.LaunchpadContentProvider;
/**
- * The <code>ClassLoaderResourceProvider</code> TODO
+ * The <code>ClassLoaderResourceProvider</code>
*/
public class ClassLoaderResourceProvider implements LaunchpadContentProvider {
@@ -45,6 +45,7 @@
: this.getClass().getClassLoader();
}
+ @Override
public Iterator<String> getChildren(String path) {
List<String> children;
@@ -52,7 +53,7 @@
if(path.endsWith("/") && path.length() > 1) {
path = path.substring(0, path.length()-1);
}
-
+
URL url = this.classLoader.getResource(path);
if (url != null) {
Pattern pathPattern = Pattern.compile("^" + path + "/[^/]+/?$");
@@ -80,6 +81,7 @@
return children.iterator();
}
+ @Override
public URL getResource(String path) {
// ensure path
if (path == null || path.length() == 0) {
@@ -94,6 +96,7 @@
return (this.classLoader != null) ? this.classLoader.getResource(path) : null;
}
+ @Override
public InputStream getResourceAsStream(String path) {
URL res = this.getResource(path);
if (res != null) {
diff --git a/src/main/java/org/apache/sling/launchpad/base/impl/DefaultStartupHandler.java b/src/main/java/org/apache/sling/launchpad/base/impl/DefaultStartupHandler.java
index 2dd82c6..5d5498e 100644
--- a/src/main/java/org/apache/sling/launchpad/base/impl/DefaultStartupHandler.java
+++ b/src/main/java/org/apache/sling/launchpad/base/impl/DefaultStartupHandler.java
@@ -42,7 +42,6 @@
import org.osgi.framework.FrameworkEvent;
import org.osgi.framework.FrameworkListener;
import org.osgi.framework.ServiceReference;
-import org.osgi.framework.ServiceRegistration;
import org.osgi.service.startlevel.StartLevel;
import org.osgi.util.tracker.ServiceTracker;
import org.osgi.util.tracker.ServiceTrackerCustomizer;
@@ -107,9 +106,6 @@
private volatile Object[] logService;
- /** Registration of the startup service. */
- private volatile ServiceRegistration<StartupService> startupServiceReg;
-
/**
* Constructor.
* @param context Bundle context
@@ -389,7 +385,7 @@
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");
- this.startupServiceReg = this.bundleContext.registerService(StartupService.class, new StartupService() {
+ this.bundleContext.registerService(StartupService.class, new StartupService() {
@Override
public StartupMode getStartupMode() {
diff --git a/src/main/java/org/apache/sling/launchpad/base/impl/SlingFelix.java b/src/main/java/org/apache/sling/launchpad/base/impl/SlingFelix.java
index c1cbf25..f77f86c 100644
--- a/src/main/java/org/apache/sling/launchpad/base/impl/SlingFelix.java
+++ b/src/main/java/org/apache/sling/launchpad/base/impl/SlingFelix.java
@@ -194,7 +194,7 @@
try {
SlingFelix.this.waitForStop(0);
} catch (InterruptedException ie) {
- // TODO: log
+ Thread.currentThread().interrupt();
}
if (restart) {
diff --git a/src/main/java/org/apache/sling/launchpad/base/impl/StartupManager.java b/src/main/java/org/apache/sling/launchpad/base/impl/StartupManager.java
index 1e68e04..39c6dd0 100644
--- a/src/main/java/org/apache/sling/launchpad/base/impl/StartupManager.java
+++ b/src/main/java/org/apache/sling/launchpad/base/impl/StartupManager.java
@@ -176,6 +176,7 @@
long timeStamp = selfStamp;
final ClassLoader loader = clazz.getClassLoader();
if (loader instanceof URLClassLoader) {
+ @SuppressWarnings("resource")
final URLClassLoader urlLoader = (URLClassLoader) loader;
final URL[] urls = urlLoader.getURLs();
if (urls.length > 0) {
diff --git a/src/main/java/org/apache/sling/launchpad/base/impl/bootstrapcommands/UninstallBundleCommand.java b/src/main/java/org/apache/sling/launchpad/base/impl/bootstrapcommands/UninstallBundleCommand.java
index 865cebb..74bf38d 100644
--- a/src/main/java/org/apache/sling/launchpad/base/impl/bootstrapcommands/UninstallBundleCommand.java
+++ b/src/main/java/org/apache/sling/launchpad/base/impl/bootstrapcommands/UninstallBundleCommand.java
@@ -28,8 +28,7 @@
import org.osgi.framework.Bundle;
import org.osgi.framework.BundleContext;
import org.osgi.framework.Constants;
-import org.osgi.framework.ServiceReference;
-import org.osgi.service.packageadmin.PackageAdmin;
+import org.osgi.framework.wiring.FrameworkWiring;
/**
* A Command that uninstalls a bundle, see
@@ -128,17 +127,8 @@
}
}
if ( bundles.size() > 0 ) {
- final ServiceReference<PackageAdmin> paRef = ctx.getServiceReference(PackageAdmin.class);
- if ( paRef != null ) {
- try {
- final PackageAdmin pa = ctx.getService(paRef);
- if ( pa != null ) {
- pa.refreshPackages(bundles.toArray(new Bundle[bundles.size()]));
- }
- } finally {
- ctx.ungetService(paRef);
- }
- }
+ final FrameworkWiring fw = ctx.getBundle().adapt(FrameworkWiring.class);
+ fw.refreshBundles(bundles);
}
}
return refreshSystemBundle;
diff --git a/src/main/java/org/apache/sling/launchpad/base/shared/Loader.java b/src/main/java/org/apache/sling/launchpad/base/shared/Loader.java
index 8cea1f1..605b23c 100644
--- a/src/main/java/org/apache/sling/launchpad/base/shared/Loader.java
+++ b/src/main/java/org/apache/sling/launchpad/base/shared/Loader.java
@@ -96,6 +96,7 @@
* instantiated. The cause of the failure is contained as the
* cause of the exception.
*/
+ @SuppressWarnings("resource")
public Object loadLauncher(String launcherClassName) {
final File launcherJarFile = getLauncherJarFile();
@@ -332,6 +333,7 @@
private File[] getLauncherJarFiles() {
// Get list of files with names starting with our prefix
final File[] rawList = launchpadHome.listFiles(new FileFilter() {
+ @Override
public boolean accept(File pathname) {
return pathname.isFile()
&& pathname.getName().startsWith(
@@ -431,6 +433,7 @@
return new File[]{};
}
File[] libs = extLibHome.listFiles(new FilenameFilter() {
+ @Override
public boolean accept(File dir, String name) {
return (name.endsWith(".jar"));
}
diff --git a/src/main/java/org/apache/sling/launchpad/base/webapp/SlingServletDelegate.java b/src/main/java/org/apache/sling/launchpad/base/webapp/SlingServletDelegate.java
index e977b5d..818c514 100644
--- a/src/main/java/org/apache/sling/launchpad/base/webapp/SlingServletDelegate.java
+++ b/src/main/java/org/apache/sling/launchpad/base/webapp/SlingServletDelegate.java
@@ -366,7 +366,6 @@
props.putAll(this.properties);
} else {
// copy context init parameters
- @SuppressWarnings("unchecked")
Enumeration<String> cpe = getServletContext().getInitParameterNames();
while (cpe.hasMoreElements()) {
String name = cpe.nextElement();
@@ -374,7 +373,6 @@
}
// copy servlet init parameters
- @SuppressWarnings("unchecked")
Enumeration<String> pe = getInitParameterNames();
while (pe.hasMoreElements()) {
String name = pe.nextElement();
@@ -447,7 +445,7 @@
@Override
protected void doLog(
- Bundle bundle, ServiceReference sr, int level,
+ Bundle bundle, @SuppressWarnings("rawtypes") ServiceReference sr, int level,
String msg, Throwable throwable) {
// unwind throwable if it is a BundleException
diff --git a/src/test/java/org/apache/sling/launchpad/app/ControlListenerTest.java b/src/test/java/org/apache/sling/launchpad/app/ControlListenerTest.java
index a8a91ce..fecb2a4 100644
--- a/src/test/java/org/apache/sling/launchpad/app/ControlListenerTest.java
+++ b/src/test/java/org/apache/sling/launchpad/app/ControlListenerTest.java
@@ -23,7 +23,7 @@
import java.io.IOException;
import java.io.PrintWriter;
import java.net.ServerSocket;
-import java.util.HashMap;
+import java.util.Collections;
import java.util.concurrent.locks.ReentrantLock;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@@ -388,11 +388,7 @@
volatile boolean stopCalled;
MyMain(final String slingHome) {
- super(new HashMap<String, String>() {
- {
- put(SharedConstants.SLING_HOME, slingHome);
- }
- });
+ super(Collections.singletonMap(SharedConstants.SLING_HOME, slingHome));
}
@Override
diff --git a/src/test/java/org/apache/sling/launchpad/app/MainTest.java b/src/test/java/org/apache/sling/launchpad/app/MainTest.java
index 6754955..440ee89 100644
--- a/src/test/java/org/apache/sling/launchpad/app/MainTest.java
+++ b/src/test/java/org/apache/sling/launchpad/app/MainTest.java
@@ -20,12 +20,14 @@
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
+import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
-import junit.framework.TestCase;
import org.apache.sling.launchpad.base.shared.SharedConstants;
+import junit.framework.TestCase;
+
public class MainTest extends TestCase {
@Override
@@ -149,211 +151,114 @@
}
public void test_converCommandLineArgs_unknown() {
- assertNull(Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("u", "short");
- }
- }));
- assertNull(Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("longer", "long");
- }
- }));
+ assertNull(Main.convertCommandLineArgs(Collections.singletonMap("u", "short")));
+ assertNull(Main.convertCommandLineArgs(Collections.singletonMap("longer", "long")));
}
public void test_converCommandLineArgs_j_start_stop_status() {
- Map<String, String> props = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("j", "j");
- }
- });
+ Map<String, String> props = Main.convertCommandLineArgs(Collections.singletonMap("j", "j"));
assertNull(props);
- Map<String, String> props1 = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("j", "host:port");
- }
- });
+ Map<String, String> props1 = Main.convertCommandLineArgs(Collections.singletonMap("j", "host:port"));
assertNotNull(props1);
assertEquals(1, props1.size());
assertEquals("host:port", props1.get("sling.control.socket"));
- Map<String, String> propsStart = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("start", "start");
- }
- });
+ Map<String, String> propsStart = Main.convertCommandLineArgs(Collections.singletonMap("start", "start"));
assertNotNull(propsStart);
assertEquals(1, propsStart.size());
assertEquals("start", propsStart.get("sling.control.action"));
- Map<String, String> propsStatus = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("status", "status");
- }
- });
+ Map<String, String> propsStatus = Main.convertCommandLineArgs(Collections.singletonMap("status", "status"));
assertNotNull(propsStatus);
assertEquals(1, propsStatus.size());
assertEquals("status", propsStatus.get("sling.control.action"));
- Map<String, String> propsStop = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("stop", "stop");
- }
- });
+ Map<String, String> propsStop = Main.convertCommandLineArgs(Collections.singletonMap("stop", "stop"));
assertNotNull(propsStop);
assertEquals(1, propsStop.size());
assertEquals("stop", propsStop.get("sling.control.action"));
}
public void test_converCommandLineArgs_l() {
- Map<String, String> props = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("l", "INFO");
- }
- });
+ Map<String, String> props = Main.convertCommandLineArgs(Collections.singletonMap("l", "INFO"));
assertNotNull(props);
assertEquals(1, props.size());
assertEquals("INFO", props.get("org.apache.sling.commons.log.level"));
- Map<String, String> props2 = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- final String l = "l";
- put(l, l);
- }
- });
+ Map<String, String> props2 = Main.convertCommandLineArgs(Collections.singletonMap("l", "l"));
assertNull(props2);
}
public void test_converCommandLineArgs_f() {
- Map<String, String> props = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("f", "sling.changed");
- }
- });
+ Map<String, String> props = Main.convertCommandLineArgs(Collections.singletonMap("f", "sling.changed"));
assertNotNull(props);
assertEquals(1, props.size());
assertEquals("sling.changed", props.get("org.apache.sling.commons.log.file"));
- Map<String, String> props1 = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("f", "-");
- }
- });
+ Map<String, String> props1 = Main.convertCommandLineArgs(Collections.singletonMap("f", "-"));
assertNotNull(props1);
assertEquals(1, props1.size());
assertEquals("", props1.get("org.apache.sling.commons.log.file"));
- Map<String, String> props2 = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- final String f = "f";
- put(f, f);
- }
- });
+ Map<String, String> props2 = Main.convertCommandLineArgs(Collections.singletonMap("f", "f"));
assertNull(props2);
}
public void test_converCommandLineArgs_c() {
- Map<String, String> props = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("c", "sling.changed");
- }
- });
+ Map<String, String> props = Main.convertCommandLineArgs(Collections.singletonMap("c", "sling.changed"));
assertNotNull(props);
assertEquals(1, props.size());
assertEquals("sling.changed", props.get(SharedConstants.SLING_HOME));
- Map<String, String> props2 = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- final String c = "c";
- put(c, c);
- }
- });
+ Map<String, String> props2 = Main.convertCommandLineArgs(Collections.singletonMap("c", "c"));
assertNull(props2);
}
public void test_converCommandLineArgs_i() {
- Map<String, String> props = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("i", "launchpad");
- }
- });
+ Map<String, String> props = Main.convertCommandLineArgs(Collections.singletonMap("i", "launchpad"));
assertNotNull(props);
assertEquals(1, props.size());
assertEquals("launchpad", props.get(SharedConstants.SLING_LAUNCHPAD));
- Map<String, String> props2 = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- final String i = "i";
- put(i, i);
- }
- });
+ Map<String, String> props2 = Main.convertCommandLineArgs(Collections.singletonMap("i", "i"));
assertNull(props2);
}
public void test_converCommandLineArgs_a() {
- Map<String, String> props = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("a", "0.0.0.0");
- }
- });
+ Map<String, String> props = Main.convertCommandLineArgs(Collections.singletonMap("a", "0.0.0.0"));
assertNotNull(props);
assertEquals(1, props.size());
assertEquals("0.0.0.0", props.get("org.apache.felix.http.host"));
}
public void test_converCommandLineArgs_r() {
- Map<String, String> props = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("r", "/mycontext");
- }
- });
+ Map<String, String> props = Main.convertCommandLineArgs(Collections.singletonMap("r", "/mycontext"));
assertNotNull(props);
assertEquals(1, props.size());
assertEquals("/mycontext", props.get("org.apache.felix.http.context_path"));
}
public void test_converCommandLineArgs_p() {
- Map<String, String> props = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("p", "1234");
- }
- });
+ Map<String, String> props = Main.convertCommandLineArgs(Collections.singletonMap("p", "1234"));
assertNotNull(props);
assertEquals(1, props.size());
assertEquals("1234", props.get("org.osgi.service.http.port"));
- Map<String, String> props1 = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("p", "abc");
- }
- });
+ Map<String, String> props1 = Main.convertCommandLineArgs(Collections.singletonMap("p", "abc"));
assertNull(props1);
- Map<String, String> props2 = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- final String p = "p";
- put(p, p);
- }
- });
+ Map<String, String> props2 = Main.convertCommandLineArgs(Collections.singletonMap("p", "p"));
assertNull(props2);
}
public void test_converCommandLineArgs_n() {
- Map<String, String> props = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("n", "n");
- }
- });
+ Map<String, String> props = Main.convertCommandLineArgs(Collections.singletonMap("n", "n"));
assertNotNull(props);
assertEquals(1, props.size());
assertEquals(Boolean.FALSE.toString(), props.get("sling.shutdown.hook"));
- Map<String, String> props1 = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("D", "sling.shutdown.hook=" + Boolean.TRUE.toString());
- }
- });
+ Map<String, String> props1 = Main.convertCommandLineArgs(Collections.singletonMap("D", "sling.shutdown.hook=" + Boolean.TRUE.toString()));
assertNotNull(props1);
assertEquals(1, props1.size());
assertEquals(Boolean.TRUE.toString(), props1.get("sling.shutdown.hook"));
@@ -378,30 +283,17 @@
}
public void test_converCommandLineArgs_D() {
- Map<String, String> props = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("D", "name=value");
- }
- });
+ Map<String, String> props = Main.convertCommandLineArgs(Collections.singletonMap("D", "name=value"));
assertNotNull(props);
assertEquals(1, props.size());
assertEquals("value", props.get("name"));
- Map<String, String> props2 = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- put("D", "flag");
- }
- });
+ Map<String, String> props2 = Main.convertCommandLineArgs(Collections.singletonMap("D", "flag"));
assertNotNull(props2);
assertEquals(1, props2.size());
assertEquals("flag", props2.get("flag"));
- Map<String, String> props1 = Main.convertCommandLineArgs(new HashMap<String, String>() {
- {
- final String d = "D";
- put(d, d);
- }
- });
+ Map<String, String> props1 = Main.convertCommandLineArgs(Collections.singletonMap("D", "D"));
assertNull(props1);
}
@@ -414,26 +306,10 @@
System.getProperties().remove(key);
TestCase.assertEquals(Boolean.TRUE, m.invoke(null, new HashMap<String, String>()));
- TestCase.assertEquals(Boolean.TRUE, m.invoke(null, new HashMap<String, String>() {
- {
- put(key, "true");
- }
- }));
- TestCase.assertEquals(Boolean.TRUE, m.invoke(null, new HashMap<String, String>() {
- {
- put(key, "TRUE");
- }
- }));
- TestCase.assertEquals(Boolean.FALSE, m.invoke(null, new HashMap<String, String>() {
- {
- put(key, "false");
- }
- }));
- TestCase.assertEquals(Boolean.FALSE, m.invoke(null, new HashMap<String, String>() {
- {
- put(key, "not true");
- }
- }));
+ TestCase.assertEquals(Boolean.TRUE, m.invoke(null, new HashMap<String, String>(Collections.singletonMap(key, "true"))));
+ TestCase.assertEquals(Boolean.TRUE, m.invoke(null, new HashMap<String, String>(Collections.singletonMap(key, "TRUE"))));
+ TestCase.assertEquals(Boolean.FALSE, m.invoke(null, new HashMap<String, String>(Collections.singletonMap(key, "false"))));
+ TestCase.assertEquals(Boolean.FALSE, m.invoke(null, new HashMap<String, String>(Collections.singletonMap(key, "not true"))));
System.setProperty(key, "true");
TestCase.assertEquals(Boolean.TRUE, m.invoke(null, new HashMap<String, String>()));
@@ -445,47 +321,15 @@
TestCase.assertEquals(Boolean.FALSE, m.invoke(null, new HashMap<String, String>()));
System.setProperty(key, "true");
- TestCase.assertEquals(Boolean.TRUE, m.invoke(null, new HashMap<String, String>() {
- {
- put(key, "true");
- }
- }));
- TestCase.assertEquals(Boolean.TRUE, m.invoke(null, new HashMap<String, String>() {
- {
- put(key, "TRUE");
- }
- }));
- TestCase.assertEquals(Boolean.FALSE, m.invoke(null, new HashMap<String, String>() {
- {
- put(key, "false");
- }
- }));
- TestCase.assertEquals(Boolean.FALSE, m.invoke(null, new HashMap<String, String>() {
- {
- put(key, "not true");
- }
- }));
+ TestCase.assertEquals(Boolean.TRUE, m.invoke(null, new HashMap<String, String>(Collections.singletonMap(key, "true"))));
+ TestCase.assertEquals(Boolean.TRUE, m.invoke(null, new HashMap<String, String>(Collections.singletonMap(key, "TRUE"))));
+ TestCase.assertEquals(Boolean.FALSE, m.invoke(null, new HashMap<String, String>(Collections.singletonMap(key, "false"))));
+ TestCase.assertEquals(Boolean.FALSE, m.invoke(null, new HashMap<String, String>(Collections.singletonMap(key, "not true"))));
System.setProperty(key, "false");
- TestCase.assertEquals(Boolean.TRUE, m.invoke(null, new HashMap<String, String>() {
- {
- put(key, "true");
- }
- }));
- TestCase.assertEquals(Boolean.TRUE, m.invoke(null, new HashMap<String, String>() {
- {
- put(key, "TRUE");
- }
- }));
- TestCase.assertEquals(Boolean.FALSE, m.invoke(null, new HashMap<String, String>() {
- {
- put(key, "false");
- }
- }));
- TestCase.assertEquals(Boolean.FALSE, m.invoke(null, new HashMap<String, String>() {
- {
- put(key, "not true");
- }
- }));
+ TestCase.assertEquals(Boolean.TRUE, m.invoke(null, new HashMap<String, String>(Collections.singletonMap(key, "true"))));
+ TestCase.assertEquals(Boolean.TRUE, m.invoke(null, new HashMap<String, String>(Collections.singletonMap(key, "TRUE"))));
+ TestCase.assertEquals(Boolean.FALSE, m.invoke(null, new HashMap<String, String>(Collections.singletonMap(key, "false"))));
+ TestCase.assertEquals(Boolean.FALSE, m.invoke(null, new HashMap<String, String>(Collections.singletonMap(key, "not true"))));
}
}
diff --git a/src/test/java/org/apache/sling/launchpad/base/impl/SlingFelixTest.java b/src/test/java/org/apache/sling/launchpad/base/impl/SlingFelixTest.java
index 67af3c3..66b4117 100644
--- a/src/test/java/org/apache/sling/launchpad/base/impl/SlingFelixTest.java
+++ b/src/test/java/org/apache/sling/launchpad/base/impl/SlingFelixTest.java
@@ -29,8 +29,6 @@
import java.io.InputStream;
import java.util.HashMap;
-import junit.framework.AssertionFailedError;
-
import org.apache.sling.launchpad.base.shared.Notifiable;
import org.junit.After;
import org.junit.Before;
@@ -43,6 +41,8 @@
import org.osgi.framework.launch.Framework;
import org.osgi.service.packageadmin.PackageAdmin;
+import junit.framework.AssertionFailedError;
+
public class SlingFelixTest {
public static final int N_START_STOP = 100;
@@ -56,12 +56,12 @@
public void setup() {
startSling();
}
-
+
@After
public void tearDown() {
stopSling();
}
-
+
@Test
public void testMultipleStop() {
startSling();
@@ -85,7 +85,7 @@
assertEquals(Bundle.ACTIVE, framework.getState());
stopSling();
-
+
// as the notifiable is notified async we wait
final long start = System.currentTimeMillis();
while ( !this.notifiable.stoppedCalled ) {
@@ -176,7 +176,7 @@
return null; // to keep the compiler cool
}
}
-
+
private void stopSling() {
stopFramework(framework);
}
@@ -211,10 +211,12 @@
volatile File updatedCalledFile = null;
+ @Override
public void stopped() {
this.stoppedCalled = true;
}
+ @Override
public void updated(File tmpFile) {
this.updatedCalled = true;
this.updatedCalledFile = tmpFile;