conn.setRequestProperty("Authorization", "Basic "+Base64.encodeToString(
(user+':'+password).getBytes(), Base64.NO_WRAP));
conn.connect();
- final byte[] buf=new byte[4096*1024];
Log.d(getClass().getName(), "Server poll got response code "+conn.getResponseCode()+" and message "+conn.getResponseMessage());
if(conn.getResponseCode()!=200)
return commands;
- conn.getInputStream().read(buf);
- final JSONArray array=new JSONArray(new String(buf));
- final List<String> list=new ArrayList<String>();
+
+ final JSONArray array;
+ {
+ final byte[] buf=new byte[4096*1024];
+ conn.getInputStream().read(buf);
+ array=new JSONArray(new String(buf));
+ }
+
for(int i=0;i<array.length();i++){
final JSONObject object=array.getJSONObject(i);
- for(int j=0;object.has("arg"+j);j++)
- list.add(object.getString("arg"+j));
+ final JSONArray jsonargs=object.getJSONArray("args");
+ final String[] args=new String[jsonargs.length()];
+ for(int j=0;j<args.length;j++)
+ args[j]=jsonargs.getString(j);
commands.add(new Command(//NOPMD command changes for each JSON object
toNonNull(object.getString("command")),
- toNonNull(list.toArray(new String[list.size()])),
+ args,
toNonNull(object.getString("replyto"))));
- list.clear();
}
} catch (MalformedURLException e) {
e.printStackTrace();