package org.openxdm.xcap.common.key;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import org.openxdm.xcap.common.uri.ElementSelector;
public class KeyUtils {
protected static String getPercentEncodedDocumentParent(String user) {
try {
user = URLEncoder.encode(user,"UTF-8");
}
catch(UnsupportedEncodingException e) {
// must not happen
}
return new StringBuilder("users/").append(user).toString();
}
protected static String getPercentEncodedString(String s) {
try {
return URLEncoder.encode(s,"UTF-8");
}
catch(UnsupportedEncodingException e) {
// must not happen
return null;
}
}
protected static String getPercentEncondedElementSelector(ElementSelector elementSelector) {
StringBuilder percentEncodedElementSelector = new StringBuilder("/");
try {
boolean first = true;
for(int i=0;i<elementSelector.getStepsSize();i++) {
if(!first) {
percentEncodedElementSelector.append('/');
}
else {
first = false;
}
percentEncodedElementSelector.append(URLEncoder.encode(elementSelector.getStep(i).toString(),"UTF-8"));
}
} catch (UnsupportedEncodingException e) {
// MUST NOT COME HERE
}
return percentEncodedElementSelector.toString();
}
}