public static ToodleDoFolder editFolder(ToodleDoUser a_oUser, ToodleDoFolder a_oFolder)
     {
    	 System.out.println("Editing folder...");
    	 
    	 String sURL = "http://api.toodledo.com/2/folders/edit.php?";
         
    	 ToodleDoFolder editedFolder = new ToodleDoFolder();
    	 
         Gson gson = new Gson();
         
         Hashtable<String, String> htParameters = new Hashtable<String, String>();     
         
         htParameters.put("key", a_oUser.getKey());
         htParameters.put("id", "" + a_oFolder.getId());
         
         if(a_oFolder.isNameDirty())
         {
        	 htParameters.put("name", a_oFolder.getName());
         }
         
         if(a_oFolder.isPrivateFolderDirty())
         {
        	 htParameters.put("private", "" + a_oFolder.getPrivateFolder());
         }
         
         if(a_oFolder.isArchiveDirty())
         {
        	 htParameters.put("archived", "" + a_oFolder.getArchive());
         }
         
         StringBuffer sbResp = makeRequest(sURL, htParameters);
         //System.out.println(sbResp.toString());
         
         gson = new GsonBuilder()
              .registerTypeAdapter(ToodleDoTask.class, new ToodleDoTaskDeserializer())
              .create();
              
         try
         {
        	 Type collectionType = new TypeToken<List<ToodleDoFolder>>(){}.getType();
        	 List<ToodleDoFolder> lstFolders = (List<ToodleDoFolder>)gson.fromJson(sbResp.toString(), collectionType);
        	 editedFolder = lstFolders.get(0);
         }
         catch(JsonSyntaxException e)
         {
        	 // Probably caused by an error so only one object is returned instead of an array.
        	 editedFolder = gson.fromJson(sbResp.toString(), org.zechariahs.toodledoapi.pojo.ToodleDoFolder.class);
         }
         
         return editedFolder;
     }