URL.java

 1package eu.siacs.conversations.http;
 2
 3import java.net.URI;
 4import java.net.URISyntaxException;
 5import java.util.Arrays;
 6import java.util.List;
 7
 8import okhttp3.HttpUrl;
 9
10public class URL {
11
12    public static final List<String> WELL_KNOWN_SCHEMES = Arrays.asList("http", "https", AesGcmURL.PROTOCOL_NAME);
13
14
15    public static String tryParse(String url) {
16        final URI uri;
17        try {
18            uri = new URI(url);
19        } catch (URISyntaxException e) {
20            return null;
21        }
22        if (WELL_KNOWN_SCHEMES.contains(uri.getScheme())) {
23            return uri.toString();
24        } else {
25            return null;
26        }
27    }
28
29    public static HttpUrl stripFragment(final HttpUrl url) {
30        return url.newBuilder().fragment(null).build();
31    }
32
33}