public Vector<Vector<Object>> getFolderContentsTable()
	{
		Vector<Vector<Object>> tableData = new Vector<>();

		// Get the contents of the folder
		List<FileInfo> files = getFolderContents();

		logger.debug("Found " + files.size() + " entries for " + path.toString());

		// Add folders
		for(FileInfo file : files)
		{
			Vector<Object> row = null;

			if(file.folder)
			{
				row = new Vector<>();

				if(FileOp.convertPath(path.resolve(file.fileName)).toFile().exists())
				{
					row.add(new ImageIcon("res/folder.png"));
				}
				else
				{
					row.add(new ImageIcon("res/folder_deleted.png"));
				}
				row.add(file.fileName);
				row.add(GuiUtility.humanReadableBytes(file.fileSize, false));
				row.add(GuiUtility.formatDate(file.createdDate));
				row.add(GuiUtility.formatDate(file.lastAccessedDate));
				row.add(GuiUtility.formatDate(file.lastModifiedDate));
				row.add(Integer.toString(file.numberOfRevisions));
				row.add(GuiUtility.humanReadableBytes(file.revisionSizes, false));

				tableData.add(row);
			}
		}

		// Add files
		for(FileInfo file : files)
		{
			Vector<Object> row = null;

			if(!file.folder)
			{
				row = new Vector<>();

				if(FileOp.convertPath(path.resolve(file.fileName)).toFile().exists())
				{
					row.add(new ImageIcon("res/file.png"));
				}
				else
				{
					row.add(new ImageIcon("res/file_deleted.png"));
				}
				row.add(file.fileName);
				row.add(GuiUtility.humanReadableBytes(file.fileSize, false));
				row.add(GuiUtility.formatDate(file.createdDate));
				row.add(GuiUtility.formatDate(file.lastAccessedDate));
				row.add(GuiUtility.formatDate(file.lastModifiedDate));
				row.add(Integer.toString(file.numberOfRevisions));
				row.add(GuiUtility.humanReadableBytes(file.revisionSizes, false));

				tableData.add(row);
			}
		}

		return tableData;
	}