Skrivit lite i filhanteringen

git-svn-id: svn://svn.dsv.su.se/scipro/scipro/trunk@239 73ecded7-942e-4092-bab0-0e58ef0ee984
This commit is contained in:
mpeters 2011-02-23 13:02:10 +00:00
parent cbad691289
commit 68ae454ce6
5 changed files with 21 additions and 18 deletions

@ -83,10 +83,10 @@ public interface FileRepository {
/**
* Check if file exists in repository
*
* @param name
* @param path
* @return
*/
boolean existsFileByName(String name);
boolean existsFileByPath(String path);
/**
* Check if the file exists in the repository

@ -196,7 +196,7 @@ public class FileRepositoryImpl implements FileRepository {
}
private boolean isFolder(Node node) {
try {
return "nt:folder".equals(node.getPrimaryNodeType().getName());
return "nt:folder".equals(node.getPrimaryNodeType().getName()) || "nt:unstructured".equals(node.getPrimaryNodeType().getName());
} catch (RepositoryException e) {
throw new FileStorageException ("Error while checking nodetype", e);
}
@ -218,7 +218,7 @@ public class FileRepositoryImpl implements FileRepository {
}
}
public boolean existsFileByName(String name) {
public boolean existsFileByPath(String name) {
try {
Node root = repositoryManager.getDefaultSession().getRootNode();
return root.hasNode(name) && "nt:file".equalsIgnoreCase(root.getNode(name).getPrimaryNodeType().getName()) ;
@ -251,11 +251,10 @@ public class FileRepositoryImpl implements FileRepository {
while (ni.hasNext()) {
Node item = ni.nextNode();
if(isFolder(item)){
//System.out.println(item.getProperty("jcr:created").getDate());
FolderDescription tmp = new FolderDescription();
tmp.setName(item.getName());
tmp.setIdentifier(item.getIdentifier());
tmp.setCreated(item.getProperty("jcr:created").getDate().getTime());
tmp.setCreated(item.getProperty("mix:created").getDate().getTime());
result.add(tmp);
}
}

@ -12,23 +12,22 @@
<div><span wicket:id="feedbackPanel">[Feedback goes here]</span></div>
<form wicket:id="ajax-simpleUpload">
<p><label>Standard file upload</label> <input wicket:id="fileInput"
id="fileInput" type="file" /></p>
<p>
<label>Choose file to upload:</label> <input wicket:id="fileInput"
id="fileInput" type="file" />
<input type="submit" value="Upload!" name="upload" />
</p>
<div wicket:id="progress">[[ajax upload progressbar]]</div>
<p><input type="submit" value="Upload!" name="upload" /></p>
</form>
<!--<span wicket:id="multiUpload"></span>-->
<form wicket:id="folderCreatonForm">
<p><label>Create folder:</label> <input wicket:id="folderName"
type="text" /></p>
<p><input type="submit" value="Create folder" name="CreateFolder" /></p>
<p>
<label>Create folder:</label> <input wicket:id="folderName"
type="text" />
<input type="submit" value="Create folder" name="CreateFolder" />
</p>
</form>
<table>

@ -235,6 +235,7 @@ public abstract class AbstractFilePanel extends Panel {
}
}));
System.out.println(desc.getPath());
inner.add(new Label("modified", df.format(desc.getLastModified())));
inner.add(new Label("size", fileRepository.formatBytes(desc.getSize())));
inner.add(new Label("mimeType", desc.getMimeType()));

@ -16,6 +16,7 @@
*/
package se.su.dsv.scipro.repository.util;
import java.util.Calendar;
import java.util.Date;
import java.util.StringTokenizer;
@ -27,6 +28,7 @@ import javax.jcr.Session;
* http://www.xaloon.org
*
* @author vytautas racelis
* @author Martin Peters - mpeters@dsv.su.se
*/
public class RepositoryHelper {
private static final String SEPARATOR = "/";
@ -39,7 +41,9 @@ public class RepositoryHelper {
if (result.hasNode(nodeStr)) {
result = result.getNode(nodeStr);
} else {
result = result.addNode(nodeStr, "nt:folder");
result = result.addNode(nodeStr, "nt:unstructured");
result.addMixin("mix:created");
result.setProperty("mix:created", Calendar.getInstance());
}
}
session.save();