docs: private static boolean addFolderContentToZip(File folder, ZipArchiveOutputStream zipOutput, String folderFromRoot){
  		FileInputStream fileInput;
  		try{
  			for(File currFile : folder.listFiles()){
  				ZipArchiveEntry entry = null;
  				if(currFile.isDirectory()){
  					//as defined by ZipArchiveEntry:
  					//Assumes the entry represents a directory if and only if the name ends with a forward slash "/".
  					entry = new ZipArchiveEntry(folderFromRoot+currFile.getName()+"/");
  					zipOutput.putArchiveEntry(entry);
  					zipOutput.closeArchiveEntry();
  					//now look for the content of this directory
  					if(!addFolderContentToZip(currFile,zipOutput,folderFromRoot+currFile.getName()+"/")){
  						return false;
  					}
  				}
  				else{
  					entry = new ZipArchiveEntry(folderFromRoot+currFile.getName());
  					entry.setSize(currFile.length());
  					zipOutput.putArchiveEntry(entry);
  					
  					fileInput = new FileInputStream(currFile);
  					IOUtils.copy(fileInput, zipOutput);
  					fileInput.close();
  					zipOutput.closeArchiveEntry();
  				}
  			}
  		}catch(FileNotFoundException fnfEx){
  			fnfEx.printStackTrace();
  			return false;
  		}catch (IOException ioEx) {
  			ioEx.printStackTrace();
  			return false;
  		}
  		return true;
  	}