mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-10-06 06:21:16 +07:00
Fix reading of custom urls attributes from plugins element in ApplicationInfo.xml
This commit is contained in:
+24
-5
@@ -14,6 +14,7 @@ import com.intellij.openapi.util.SystemInfoRt;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import com.intellij.ui.JBColor;
|
||||
import com.intellij.util.ArrayUtil;
|
||||
import com.intellij.util.ObjectUtils;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import com.intellij.util.io.URLUtil;
|
||||
import com.intellij.util.ui.JBImageIcon;
|
||||
@@ -797,11 +798,27 @@ public class ApplicationInfoImpl extends ApplicationInfoEx {
|
||||
myWhatsNewUrl = whatsnewElement.getAttributeValue(ATTRIBUTE_URL);
|
||||
}
|
||||
|
||||
myPluginManagerUrl = DEFAULT_PLUGINS_HOST;
|
||||
Element pluginsElement = getChild(parentNode, ELEMENT_PLUGINS);
|
||||
if (pluginsElement != null) {
|
||||
String url = pluginsElement.getAttributeValue(ATTRIBUTE_URL);
|
||||
myPluginManagerUrl = url != null ? StringUtil.trimEnd(url, "/") : DEFAULT_PLUGINS_HOST;
|
||||
if (url != null) {
|
||||
myPluginManagerUrl = StringUtil.trimEnd(url, "/");
|
||||
}
|
||||
|
||||
String listUrl = pluginsElement.getAttributeValue(ATTRIBUTE_LIST_URL);
|
||||
if (listUrl != null) {
|
||||
myPluginsListUrl = listUrl;
|
||||
}
|
||||
|
||||
String channelListUrl = pluginsElement.getAttributeValue(ATTRIBUTE_CHANNEL_LIST_URL);
|
||||
if (channelListUrl != null) {
|
||||
myChannelsListUrl = channelListUrl;
|
||||
}
|
||||
|
||||
String downloadUrl = pluginsElement.getAttributeValue(ATTRIBUTE_DOWNLOAD_URL);
|
||||
if (downloadUrl != null) {
|
||||
myPluginsDownloadUrl = downloadUrl;
|
||||
}
|
||||
|
||||
if (!getBuild().isSnapshot()) {
|
||||
myBuiltinPluginsUrl = StringUtil.nullize(pluginsElement.getAttributeValue(ATTRIBUTE_BUILTIN_URL));
|
||||
@@ -811,11 +828,13 @@ public class ApplicationInfoImpl extends ApplicationInfoEx {
|
||||
final String pluginsHost = System.getProperty("idea.plugins.host");
|
||||
if (pluginsHost != null) {
|
||||
myPluginManagerUrl = StringUtil.trimEnd(pluginsHost, "/");
|
||||
myPluginsListUrl = myChannelsListUrl = myPluginsDownloadUrl = null;
|
||||
}
|
||||
|
||||
myPluginsListUrl = myPluginManagerUrl + "/plugins/list/";
|
||||
myChannelsListUrl = myPluginManagerUrl + "/channels/list/";
|
||||
myPluginsDownloadUrl = myPluginManagerUrl + "/pluginManager/";
|
||||
myPluginManagerUrl = ObjectUtils.coalesce(myPluginsListUrl, DEFAULT_PLUGINS_HOST);
|
||||
myPluginsListUrl = ObjectUtils.coalesce(myPluginsListUrl, myPluginManagerUrl + "/plugins/list/");
|
||||
myChannelsListUrl = ObjectUtils.coalesce(myChannelsListUrl, myPluginManagerUrl + "/channels/list/");
|
||||
myPluginsDownloadUrl = ObjectUtils.coalesce(myPluginsDownloadUrl, myPluginManagerUrl + "/pluginManager/");
|
||||
|
||||
Element keymapElement = getChild(parentNode, ELEMENT_KEYMAP);
|
||||
if (keymapElement != null) {
|
||||
|
||||
Reference in New Issue
Block a user