From ea92fc15ce2084ef701bf1af7069b6a7ec7013da Mon Sep 17 00:00:00 2001 From: Wido den Hollander Date: Fri, 30 Oct 2015 14:19:38 +0100 Subject: [PATCH] Use java.io.tmpdir instead of hardcoded /tmp This was submitted earlier in PR #884 but that did not merge properly. This is a new PR with the same change. --- .../com/cloud/storage/template/LocalTemplateDownloader.java | 2 +- .../cloud/storage/template/LocalTemplateDownloaderTest.java | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/core/src/com/cloud/storage/template/LocalTemplateDownloader.java b/core/src/com/cloud/storage/template/LocalTemplateDownloader.java index 3d33a214276..564eba3d5ee 100644 --- a/core/src/com/cloud/storage/template/LocalTemplateDownloader.java +++ b/core/src/com/cloud/storage/template/LocalTemplateDownloader.java @@ -38,7 +38,7 @@ public class LocalTemplateDownloader extends TemplateDownloaderBase implements T public LocalTemplateDownloader(StorageLayer storageLayer, String downloadUrl, String toDir, long maxTemplateSizeInBytes, DownloadCompleteCallback callback) { super(storageLayer, downloadUrl, toDir, maxTemplateSizeInBytes, callback); - String filename = downloadUrl.substring(downloadUrl.lastIndexOf(File.separator)); + String filename = new File(downloadUrl).getName(); _toFile = toDir.endsWith(File.separator) ? (toDir + filename) : (toDir + File.separator + filename); } diff --git a/core/test/com/cloud/storage/template/LocalTemplateDownloaderTest.java b/core/test/com/cloud/storage/template/LocalTemplateDownloaderTest.java index 74d1adc3c58..0a5d2f6657d 100644 --- a/core/test/com/cloud/storage/template/LocalTemplateDownloaderTest.java +++ b/core/test/com/cloud/storage/template/LocalTemplateDownloaderTest.java @@ -29,9 +29,9 @@ import org.junit.Test; public class LocalTemplateDownloaderTest { @Test - public void localTemplateDownloaderTest() { - String url = "file://" + new File("pom.xml").getAbsolutePath(); - TemplateDownloader td = new LocalTemplateDownloader(null, url, "/tmp", TemplateDownloader.DEFAULT_MAX_TEMPLATE_SIZE_IN_BYTES, null); + public void localTemplateDownloaderTest() throws Exception { + String url = new File("pom.xml").toURI().toURL().toString(); + TemplateDownloader td = new LocalTemplateDownloader(null, url, System.getProperty("java.io.tmpdir"), TemplateDownloader.DEFAULT_MAX_TEMPLATE_SIZE_IN_BYTES, null); long bytes = td.download(true, null); if (!(bytes > 0)) { fail("Failed download");