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 |
+ } |
+ } |
+ } |
+ } |
} |