From 60d8bbf44420a1e821bc625b0eeace1f1cc73d66 Mon Sep 17 00:00:00 2001 From: Sebastian Sdorra Date: Thu, 10 Feb 2011 16:18:45 +0100 Subject: [PATCH] append version to plugin url for later use --- .../scm/plugin/DefaultPluginManager.java | 34 ++++++++++++++++--- 1 file changed, 29 insertions(+), 5 deletions(-) diff --git a/scm-webapp/src/main/java/sonia/scm/plugin/DefaultPluginManager.java b/scm-webapp/src/main/java/sonia/scm/plugin/DefaultPluginManager.java index d69c75fde3..54025180a1 100644 --- a/scm-webapp/src/main/java/sonia/scm/plugin/DefaultPluginManager.java +++ b/scm-webapp/src/main/java/sonia/scm/plugin/DefaultPluginManager.java @@ -380,6 +380,28 @@ public class DefaultPluginManager implements PluginManager //~--- methods -------------------------------------------------------------- + /** + * Method description + * + * + * + * @param url + * @return + */ + private String buildPluginUrl(String url) + { + if (url.contains("?")) + { + url = url.concat("&scm.version="); + } + else + { + url = url.concat("?scm.version="); + } + + return url.concat(SCMContext.getContext().getVersion()); + } + /** * Method description * @@ -469,14 +491,16 @@ public class DefaultPluginManager implements PluginManager { synchronized (DefaultPluginManager.class) { + String pluginUrl = configuration.getPluginUrl(); + boolean gzip = pluginUrl.endsWith(".gz"); + + pluginUrl = buildPluginUrl(pluginUrl); + if (logger.isInfoEnabled()) { - logger.info("fetch plugin informations from {}", - configuration.getPluginUrl()); + logger.info("fetch plugin informations from {}", pluginUrl); } - String pluginUrl = configuration.getPluginUrl(); - if (Util.isNotEmpty(pluginUrl)) { InputStream input = null; @@ -485,7 +509,7 @@ public class DefaultPluginManager implements PluginManager { input = new URL(pluginUrl).openStream(); - if (pluginUrl.endsWith(".gz")) + if (gzip) { input = new GZIPInputStream(input); }