<%@ page contentType="text/html; charset=utf-8" language="java" import="java.io.*" %>
<?xml version="1.0"?>
<response>
	<% 
	//	Get Path from Query Srtring
	String strPage = request.getParameter("page");
	//	If null, default to uploads dir
	if (strPage == null){
		strPage = ".";
	}
	//	Get the Server Path to the Directory
	String selDir = pageContext.getServletContext().getRealPath(strPage);
	//	Create file object of Uploads Directory
	File dir = new File(selDir);
	//	Check if directory exists, else set to Default
	if(!dir.exists()) {
		strPage = ".";
		selDir = pageContext.getServletContext().getRealPath(strPage);
	}
	
	File[] files = dir.listFiles();
	if(files != null){
		File file;
		int c = 0;
		out.println("\t<files>");
		for(int q=0; q<files.length; q++){
			if(files[q].isFile()){
				//	Start file XML with ID
				out.println("\t\t<file id=\"" + c + "\">");
				//	Output name
				out.println("\t\t\t<name>" + files[q].getName() + "</name>");
				//	Output file size
				out.println("<size>" + files[q].length() + "</size>");
				//	Close file
				out.println("</file>");
				c++;
			}
		}
		out.println("</name>");
		c = 0;
		out.println("<directories>");
		for(int i=0; i<files.length; i++){
			if(files[i].isDirectory()){
				//	Start file XML with ID
				out.println("\t<directory id=\"" + c + "\">");
				//	Output name
				out.println("\t\t<name>" + files[i].getName() + "</name>");
				//	Close file
				out.println("\t</directory>");
				c++;
			}
		}
		out.println("\t</directories>");
	}
	%>
</response>