package com.lechucksoftware.proxy.proxysettings.utils;
import android.content.Context;
import android.content.SharedPreferences;
import com.lechucksoftware.proxy.proxysettings.constants.Constants;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class UrlManager
{
public static String[] getUsedUrls(Context ctx)
{
SharedPreferences sharedPref = ctx.getSharedPreferences(Constants.PREFERENCES_FILENAME, Context.MODE_MULTI_PROCESS);
String cachedUrls = sharedPref.getString(Constants.PREFERENCES_CACHED_URLS, "");
if (cachedUrls == "")
{
// Populate cachedurls for the first time
List<String> defaultUrls = new ArrayList<String>();
defaultUrls.add("http://");
defaultUrls.add("http://www.");
defaultUrls.add("https://");
defaultUrls.add("https://www.");
defaultUrls.add("ftp://");
SharedPreferences.Editor keyValuesEditor = sharedPref.edit();
StringBuilder sb = new StringBuilder();
for (String s : defaultUrls)
{
sb.append(s);
sb.append(",");
}
sb.deleteCharAt(sb.length() - 1);
keyValuesEditor.putString(Constants.PREFERENCES_CACHED_URLS, sb.toString());
keyValuesEditor.commit();
String [] results = new String[defaultUrls.size()];
results = (String[]) defaultUrls.toArray(results);
return results;
}
else
{
return cachedUrls.split(",");
}
}
public static void addUsedUrl(Context ctx, String url)
{
SharedPreferences sharedPref = ctx.getSharedPreferences(Constants.PREFERENCES_FILENAME, Context.MODE_MULTI_PROCESS);
String cachedUrls = sharedPref.getString(Constants.PREFERENCES_CACHED_URLS, "");
SharedPreferences.Editor keyValuesEditor = sharedPref.edit();
if (cachedUrls == "")
{
keyValuesEditor.putString(Constants.PREFERENCES_CACHED_URLS, url);
keyValuesEditor.commit();
}
else
{
List<String> urlsList = new ArrayList<String>(Arrays.asList(cachedUrls.split(",")));
if (!urlsList.contains(url))
{
cachedUrls = cachedUrls.concat("," + url);
keyValuesEditor.putString(Constants.PREFERENCES_CACHED_URLS, cachedUrls);
keyValuesEditor.commit();
}
}
}
}