Index: /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/connector/Connector.java
===================================================================
--- /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/connector/Connector.java	(revision 2461)
+++ /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/connector/Connector.java	(revision 2462)
@@ -49,4 +49,13 @@
 	
 	/**
+	 * This key is to address a file's name in {@link #getFiles(ResourceType, String)} map.
+	 */
+	public final static String KEY_NAME  = "name";
+	/**
+	 * This key is to address a file's size in {@link #getFiles(ResourceType, String)} map.
+	 */
+	public final static String KEY_SIZE = "size";
+	
+	/**
 	 * Initializes the connector. This method will be called on the start of the webapp.
 	 * 
@@ -56,6 +65,7 @@
 
 	/**
-	 * Returns a list of folder names which are inside the abstract path
+	 * Returns a list of file attributes. which are inside the abstract path
 	 * <code>/[type-folder]/[currentFolder]</code>.
+	 * Filename, file size (in bytes).
 	 * 
 	 * @param type
@@ -66,7 +76,5 @@
 	 * @throws UnknownException
 	 */
-	// TODO is Map really suitable? I'd return List<Map<String, Object>>
-	// every map is a file with keys like: name, size, date. This would give us more freedom
-	public Map<String, Long> getFiles(final ResourceType type, final String currentFolder)
+	public List<Map<String, Object>> getFiles(final ResourceType type, final String currentFolder)
 		throws InvalidCurrentFolderException, SecurityIssueException, UnknownException;
 	
Index: /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/connector/ConnectorServlet.java
===================================================================
--- /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/connector/ConnectorServlet.java	(revision 2461)
+++ /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/connector/ConnectorServlet.java	(revision 2462)
@@ -77,7 +77,6 @@
 		} catch (Exception e) {
 			// if an exception wasn't catched by the Dispatcher, it is a fatal one and has to re-thrown.
-			// FIXME we can simply rethrow e instead of creating a new object
 			if (e instanceof IOException)
-				throw new IOException(e.getLocalizedMessage());
+				throw new IOException(e);
 			else
 				throw new ServletException(e);
Index: /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/connector/Dispatcher.java
===================================================================
--- /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/connector/Dispatcher.java	(revision 2461)
+++ /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/connector/Dispatcher.java	(revision 2462)
@@ -263,5 +263,4 @@
 			} catch (InvalidCurrentFolderException e) {
 				uploadResponse = UploadResponse.getErrorInvalidCurrentFolder();
-			// TODO could be one catch if response is the same
 			} catch (SecurityIssueException e) {
 				uploadResponse = UploadResponse.getErrorSecurity();
Index: /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/connector/impl/SimpleFileSystemConnector.java
===================================================================
--- /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/connector/impl/SimpleFileSystemConnector.java	(revision 2461)
+++ /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/connector/impl/SimpleFileSystemConnector.java	(revision 2462)
@@ -26,4 +26,5 @@
 import java.io.FileOutputStream;
 import java.io.InputStream;
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.HashMap;
@@ -132,5 +133,5 @@
 	 * @see net.fckeditor.connector.Connector#getFiles(net.fckeditor.handlers.ResourceType, java.lang.String)
 	 */
-	public Map<String, Long> getFiles(ResourceType type, String currentFolder)
+	public List<Map<String, Object>> getFiles(ResourceType type, String currentFolder)
 			throws InvalidCurrentFolderException, SecurityIssueException, UnknownException {
 		String baseDir = ConnectorHandler.getDefaultUserFilesPath();
@@ -141,10 +142,15 @@
 
 		// collect files
-		Map<String, Long> files;
+		List<Map<String, Object>> files;
+		Map<String, Object> fileMap;
 		try {
 			File[] fileList = currentDir.listFiles((FileFilter) FileFileFilter.FILE);
-			files = new HashMap<String, Long>(fileList.length);
-			for (File file : fileList)
-				files.put(file.getName(), new Long(file.length()));
+			files = new ArrayList<Map<String,Object>>(fileList.length);
+			for (File file : fileList) {
+				fileMap = new HashMap<String, Object>(2);
+				fileMap.put(Connector.KEY_NAME, file.getName());
+				fileMap.put(Connector.KEY_SIZE, file.length());
+				files.add(fileMap);
+			}
 			return files;
 		} catch (SecurityException e) {
Index: /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/handlers/ResourceType.java
===================================================================
--- /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/handlers/ResourceType.java	(revision 2461)
+++ /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/handlers/ResourceType.java	(revision 2462)
@@ -131,4 +131,11 @@
 	}
 	
-	// FIXME override #hashCode
+	/*
+	 * (non-Javadoc)
+	 * @see java.lang.Object#hashCode()
+	 */
+	@Override
+	public int hashCode() {
+		return name.hashCode();
+	}
 }
Index: /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/requestcycle/ThreadLocalData.java
===================================================================
--- /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/requestcycle/ThreadLocalData.java	(revision 2461)
+++ /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/requestcycle/ThreadLocalData.java	(revision 2462)
@@ -32,5 +32,4 @@
 	
 	public static void beginRequest(final HttpServletRequest servletRequest) {
-		// TODO NullPointer would be mor suitable, wouldn't it?
 		if (servletRequest == null)
 			throw new IllegalArgumentException();
@@ -40,5 +39,4 @@
 	}
 	
-	// TODO I'd rather raise an exception telling that #beginRequest has to be called before this method
 	public static HttpServletRequest getServletRequest() {
 		return (servletRequest == null) ? null : servletRequest.get();
Index: /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/response/GetResponse.java
===================================================================
--- /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/response/GetResponse.java	(revision 2461)
+++ /FCKeditor.Java/branches/2.5-test/java-core/src/main/java/net/fckeditor/response/GetResponse.java	(revision 2462)
@@ -34,4 +34,5 @@
 import javax.xml.transform.stream.StreamResult;
 
+import net.fckeditor.connector.Connector;
 import net.fckeditor.handlers.CommandHandler;
 import net.fckeditor.handlers.LocalizedPropertiesLoader;
@@ -195,5 +196,5 @@
 	 * @param Map, key is the file name and value is the size of the file in bytes
 	 */
-	public void setFiles(final Map<String, Long> files) {
+	public void setFiles(final List<Map<String, Object>> files) {
 		
 		if (filesElement != null) {
@@ -205,13 +206,12 @@
 		document.getDocumentElement().appendChild(filesElement);
 		
-		long length;
+		long length = 1L;
 		long tempLength;
-		for (String fileName : files.keySet()) { // TODO should we ordered the file names?
+		
+		for (Map<String, Object> file : files) {
 			Element fileElement = document.createElement("File");
-			fileElement.setAttribute("name", fileName);
-			tempLength = files.get(fileName).longValue();
-			if (tempLength < 1024)
-				length = 1L;
-			else 
+			fileElement.setAttribute("name", (String) file.get(Connector.KEY_NAME));
+			tempLength = (Long) file.get(Connector.KEY_SIZE);
+			if (tempLength > 1024)
 				length = tempLength/1024;
 			fileElement.setAttribute("size", String.valueOf(length));
