package io.scal.secureshareui.lib;
import timber.log.Timber;
/**
* Created by josh on 11/15/14.
*/
public class FlickrBaseEncoder {
protected static String alphabetString = "123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ";
protected static char[] alphabet = alphabetString.toCharArray();
protected static int base_count = alphabet.length;
public static String encode(long num){
String result = "";
long div;
int mod = 0;
while (num >= base_count) {
div = num/base_count;
mod = (int)(num-(base_count*(long)div));
result = alphabet[mod] + result;
num = (long)div;
}
if (num>0){
result = alphabet[(int)num] + result;
}
return result;
}
public static long decode(String link){
long result= 0;
long multi = 1;
while (link.length() > 0) {
String digit = link.substring(link.length()-1);
result = result + multi * alphabetString.lastIndexOf(digit);
multi = multi * base_count;
link = link.substring(0, link.length()-1);
}
return result;
}
}