Mercurial > hg > release > icedtea-web-1.6
changeset 1233:9d92f5640f83
Improved caching of files obtained via query
author | Jiri Vanek <jvanek@redhat.com> |
---|---|
date | Wed, 27 May 2015 16:56:55 +0200 |
parents | 6e7d203b9374 |
children | 4e3281c63564 |
files | ChangeLog netx/net/sourceforge/jnlp/cache/CacheUtil.java tests/netx/unit/net/sourceforge/jnlp/cache/CacheUtilTest.java tests/netx/unit/net/sourceforge/jnlp/cache/ResourceDownloaderTest.java |
diffstat | 4 files changed, 31 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Fri May 22 19:34:22 2015 +0200 +++ b/ChangeLog Wed May 27 16:56:55 2015 +0200 @@ -1,3 +1,13 @@ +2015-05-27 Jiri Vanek <jvanek@redhat.com> + + Improved caching of files obtained via query + * netx/net/sourceforge/jnlp/cache/CacheUtil.java: now consider also query(if any) + when creating file-name for item to be cached + * tests/netx/unit/net/sourceforge/jnlp/cache/CacheUtilTest.java: fixed old + tests due to change and added two new tests to test change. + * tests/netx/unit/net/sourceforge/jnlp/cache/ResourceDownloaderTest.java: + removed unused import. + 2015-05-22 Jiri Vanek <jvanek@redhat.com> Comments in deployment.properties now persists saving via itweb-settings
--- a/netx/net/sourceforge/jnlp/cache/CacheUtil.java Fri May 22 19:34:22 2015 +0200 +++ b/netx/net/sourceforge/jnlp/cache/CacheUtil.java Wed May 27 16:56:55 2015 +0200 @@ -481,6 +481,9 @@ path.append(location.getHost()); path.append(File.separatorChar); path.append(location.getPath().replace('/', File.separatorChar)); + if (location.getQuery() != null && !location.getQuery().trim().isEmpty()) { + path.append(".").append(location.getQuery()); + } return new File(FileUtils.sanitizePath(path.toString())); }
--- a/tests/netx/unit/net/sourceforge/jnlp/cache/CacheUtilTest.java Fri May 22 19:34:22 2015 +0200 +++ b/tests/netx/unit/net/sourceforge/jnlp/cache/CacheUtilTest.java Wed May 27 16:56:55 2015 +0200 @@ -58,7 +58,24 @@ @Test public void testUrlToPath() throws Exception { final URL u = new URL("https://example.com/applet/some:weird*applet?.jar"); - final File expected = new File("/tmp/https/example.com/applet/some_weird_applet"); + //stuf behind querry is kept + final File expected = new File("/tmp/https/example.com/applet/some_weird_applet..jar"); + Assert.assertEquals(expected, CacheUtil.urlToPath(u, "/tmp")); + } + + + @Test + public void testUrlToPathWithQuery() throws Exception { + final URL u = new URL("https://example.com/applet/applet.php?id=applet5"); + //querry is kept and sanitized + final File expected = new File("/tmp/https/example.com/applet/applet.php.id_applet5"); + Assert.assertEquals(expected, CacheUtil.urlToPath(u, "/tmp")); + } + @Test + public void testUrlToPathWithoutQuery() throws Exception { + final URL u = new URL("https://example.com/applet/applet.php"); + //no doubledot is caused by patch adding query to file + final File expected = new File("/tmp/https/example.com/applet/applet.php"); Assert.assertEquals(expected, CacheUtil.urlToPath(u, "/tmp")); } }
--- a/tests/netx/unit/net/sourceforge/jnlp/cache/ResourceDownloaderTest.java Fri May 22 19:34:22 2015 +0200 +++ b/tests/netx/unit/net/sourceforge/jnlp/cache/ResourceDownloaderTest.java Wed May 27 16:56:55 2015 +0200 @@ -29,7 +29,6 @@ import net.sourceforge.jnlp.ServerAccess; import net.sourceforge.jnlp.ServerLauncher; import net.sourceforge.jnlp.Version; -import net.sourceforge.jnlp.config.DeploymentConfiguration; import net.sourceforge.jnlp.config.PathsAndFiles; import net.sourceforge.jnlp.runtime.JNLPRuntime; import net.sourceforge.jnlp.util.JarFile;