/* * Zirco Browser for Android * * Copyright (C) 2010 J. Devauchelle and contributors. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * version 3 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ package org.gaeproxy.zirco.utils; import java.util.Iterator; import org.gaeproxy.zirco.controllers.Controller; import android.content.Context; import android.preference.PreferenceManager; /** * Url management utils. */ public class UrlUtils { /** * Check if there is an item in the mobile view url list that match a given * url. * * @param context * The current context. * @param url * The url to check. * @return True if an item in the list match the given url. */ public static boolean checkInMobileViewUrlList(Context context, String url) { if (url != null) { boolean inList = false; Iterator<String> iter = Controller.getInstance() .getMobileViewUrlList(context).iterator(); while ((iter.hasNext()) && (!inList)) { if (url.contains(iter.next())) { inList = true; } } return inList; } else { return false; } } /** * Check en url. Add http:// before if missing. * * @param url * The url to check. * @return The modified url if necessary. */ public static String checkUrl(String url) { if ((url != null) && (url.length() > 0)) { if ((!url.startsWith("http://")) && (!url.startsWith("https://")) && (!url.startsWith(Constants.URL_ABOUT_BLANK)) && (!url.startsWith(Constants.URL_ABOUT_START))) { url = "http://" + url; } } return url; } /** * Get the current search url. * * @param context * The current context. * @param searchTerms * The terms to search for. * @return The search url. */ public static String getSearchUrl(Context context, String searchTerms) { String currentSearchUrl = PreferenceManager .getDefaultSharedPreferences(context).getString( Constants.PREFERENCES_GENERAL_SEARCH_URL, Constants.URL_SEARCH_GOOGLE); return String.format(currentSearchUrl, searchTerms); } /** * Check if a string is an url. For now, just consider that if a string * contains a dot, it is an url. * * @param url * The url to check. * @return True if the string is an url. */ public static boolean isUrl(String url) { return url.equals(Constants.URL_ABOUT_BLANK) || url.equals(Constants.URL_ABOUT_START) || url.contains("."); } }