That almost works. There is one little problem though. It sets oauth_token=null, it needs to be oauth_token=
You need to change:
for (String key : args.keySet()) {
String arg = key+"="+encode(args.get(key));
argList.add(arg);
}
to:
for (String key : args.keySet()) ...