diff --git a/xml/impl/src/com/intellij/ide/browsers/UrlImpl.java b/xml/impl/src/com/intellij/ide/browsers/UrlImpl.java index 0e4621cd87d9..ee64ea7a1e00 100644 --- a/xml/impl/src/com/intellij/ide/browsers/UrlImpl.java +++ b/xml/impl/src/com/intellij/ide/browsers/UrlImpl.java @@ -23,6 +23,10 @@ public final class UrlImpl implements Url { private String externalFormWithoutParameters; + public UrlImpl(@NotNull String scheme, @Nullable String authority, @Nullable String path) { + this(null, scheme, authority, path, null); + } + public UrlImpl(@Nullable String raw, @NotNull String scheme, @Nullable String authority, @Nullable String path, @Nullable String parameters) { this.raw = raw; this.scheme = scheme; diff --git a/xml/impl/src/com/intellij/ide/browsers/Urls.java b/xml/impl/src/com/intellij/ide/browsers/Urls.java index b9626dac7c6c..140627fb6980 100644 --- a/xml/impl/src/com/intellij/ide/browsers/Urls.java +++ b/xml/impl/src/com/intellij/ide/browsers/Urls.java @@ -32,6 +32,11 @@ public final class Urls { return result; } + @NotNull + public static Url newHttpUrl(@Nullable String authority, @Nullable String path) { + return new UrlImpl("http", authority, path); + } + @Nullable public static Url parse(@NotNull String url, boolean asLocalIfNoScheme) { if (asLocalIfNoScheme && !URLUtil.containsScheme(url)) { @@ -101,7 +106,7 @@ public final class Urls { public static Url newFromVirtualFile(@NotNull VirtualFile file) { String path = file.getPath(); if (file.isInLocalFileSystem()) { - return new UrlImpl(null, file.getFileSystem().getProtocol(), null, path, null); + return new UrlImpl(file.getFileSystem().getProtocol(), null, path); } else { return parseUrl(file.getUrl(), false);