Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: libadblockplus-android/src/org/adblockplus/android/Utils.java

Issue 29351744: Issue 4399 - Add WebView inheritor with ad blocking (Closed)
Patch Set: stopping for fast redirection Created Sept. 27, 2016, 12:27 p.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « libadblockplus-android/src/org/adblockplus/android/AndroidWebRequest.java ('k') | settings.gradle » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: libadblockplus-android/src/org/adblockplus/android/Utils.java
diff --git a/libadblockplus-android/src/org/adblockplus/android/Utils.java b/libadblockplus-android/src/org/adblockplus/android/Utils.java
index 47b7c663c5adb7458de98766d84eacf463d4af0e..1554ae90c9948ec56a213b207f77ae9ad8b3da6f 100644
--- a/libadblockplus-android/src/org/adblockplus/android/Utils.java
+++ b/libadblockplus-android/src/org/adblockplus/android/Utils.java
@@ -18,11 +18,17 @@
package org.adblockplus.android;
import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
import java.io.InputStreamReader;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.util.List;
import org.adblockplus.libadblockplus.JsValue;
import org.adblockplus.libadblockplus.Subscription;
import org.apache.commons.lang.StringUtils;
+import org.json.JSONArray;
import android.app.Notification;
import android.app.NotificationManager;
@@ -80,4 +86,66 @@ public final class Utils
// Ignored for now
}
}
+
+ public static String stringListToJsonArray(List<String> list)
+ {
+ JSONArray array = new JSONArray();
+
+ if (list != null)
+ {
+ for (String eachString : list)
+ {
+ if (eachString != null)
+ {
+ array.put(eachString);
+ }
+ }
+ }
+
+ return array.toString();
+ }
+
+ /**
+ * Extract domain from URL
+ * @param url valid URL (with scheme)
+ * @return domain
+ * @throws URISyntaxException
+ */
+ public static String getDomain(String url) throws URISyntaxException
+ {
+ URI uri = new URI(url);
+ String domain = uri.getHost();
+ if (domain == null)
+ throw new URISyntaxException(url, "Invalid url");
+ return domain.startsWith("www.") ? domain.substring(4) : domain;
+ }
+
+ public static String readAssetAsString(Context context, String filename) throws IOException
+ {
+ BufferedReader in = null;
+ try {
+ StringBuilder buf = new StringBuilder();
+ InputStream is = context.getAssets().open(filename);
+ in = new BufferedReader(new InputStreamReader(is));
+
+ String str;
+ boolean isFirst = true;
+ while ( (str = in.readLine()) != null ) {
+ if (isFirst)
+ isFirst = false;
+ else
+ buf.append('\n');
+ buf.append(str);
+ }
+ return buf.toString();
+ } finally {
+ if (in != null) {
+ try {
+ in.close();
+ } catch (IOException e) {
+ // ignored
+ }
+ }
+ }
+ }
}
« no previous file with comments | « libadblockplus-android/src/org/adblockplus/android/AndroidWebRequest.java ('k') | settings.gradle » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld