/**
* galaxy inc.
* meetup client for android
*/
package com.galaxy.meetup.client.util;
import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.Set;
import java.util.regex.Pattern;
import android.graphics.Point;
import android.net.Uri;
import android.text.TextUtils;
/**
*
* @author sihai
*
*/
public class ImageProxyUtil {
private static final Pattern PROXY_HOSTED_IMAGE_URL_RE = Pattern.compile("^(((http(s)?):)?\\/\\/images(\\d)?-.+-opensocial\\.googleusercontent\\.com\\/gadgets\\/proxy\\?)");
static int sProxyIndex;
public static String setImageUrlSize(int i, String s) {
String s2;
if (s == null) {
s2 = s;
} else {
String s1;
if (!isProxyHostedUrl(s)) {
s1 = createProxyUrl();
} else {
s1 = s;
s = null;
}
s2 = setImageUrlSizeOptions(i, i, Uri.parse(s1), s).toString();
}
return s2;
}
public static boolean isProxyHostedUrl(String s) {
boolean flag;
if (s == null)
flag = false;
else
flag = PROXY_HOSTED_IMAGE_URL_RE.matcher(s).find();
return flag;
}
public static String setImageUrlSize(int i, int j, String s) {
String s2;
if (s == null) {
s2 = s;
} else {
String s1;
if (!isProxyHostedUrl(s)) {
s1 = createProxyUrl();
} else {
s1 = s;
s = null;
}
s2 = setImageUrlSizeOptions(i, j, Uri.parse(s1), s).toString();
}
return s2;
}
private static String createProxyUrl() {
StringBuffer stringbuffer = new StringBuffer();
stringbuffer.append("https://images").append(getNextProxyIndex())
.append("-esmobile")
.append("-opensocial.googleusercontent.com/gadgets/proxy");
return stringbuffer.toString();
}
private static synchronized int getNextProxyIndex() {
int i;
i = sProxyIndex += 1;
sProxyIndex %= 3;
return i;
}
private static Uri setImageUrlSizeOptions(int i, int j, Uri uri, String s)
{
// TODO
return null;
}
public static Point getImageUrlSize(String s)
{
Point point = new Point();
if(s != null && isProxyHostedUrl(s)) {
int l = 0;
Uri uri = Uri.parse(s);
String s2 = uri.getQueryParameter("resize_w");
if(!TextUtils.isEmpty(s2)) {
int k = Integer.parseInt(s2);
l = k;
}
point.x = l;
String s1;
boolean flag;
int i;
s1 = uri.getQueryParameter("resize_h");
flag = TextUtils.isEmpty(s1);
i = 0;
if(!flag) {
int j = Integer.parseInt(s1);
i = j;
}
point.y = i;
}
return point;
}
}