use of nl.uva.vlet.vfs.VDir in project lobcder by skoulouzis.
the class Assimilator method add.
public void add(VComposite dir, String base, Connection connection, long ssid, boolean addFiles) throws MalformedURLException, VlException, SQLException, NoSuchAlgorithmException {
VNode[] nodes = dir.getNodes();
for (VNode f : nodes) {
VRL currentPath = new VRL(f.getPath().replaceFirst(base, ""));
LogicalData register = getLogicalDataByPath(Path.path(currentPath.getPath()), connection);
LogicalData parent = getLogicalDataByPath(Path.path(currentPath.getPath()).getParent(), connection);
Long parentRef = new Long(1);
if (parent == null) {
parentRef = new Long(1);
} else {
parentRef = parent.getUid();
}
if (f.isComposite()) {
if (register == null) {
LogicalData entry = new LogicalData();
if (f instanceof VDir) {
VDir d = (VDir) f;
entry.setCreateDate(d.getModificationTime());
entry.setModifiedDate(d.getModificationTime());
} else {
entry.setCreateDate(System.currentTimeMillis());
entry.setModifiedDate(System.currentTimeMillis());
}
entry.setName(f.getName());
entry.setOwner(importingOwner);
entry.setParentRef(parentRef);
register = registerDirLogicalData(entry, connection);
}
add((VComposite) f, base, connection, ssid, addFiles);
} else if (addFiles) {
if (register == null) {
System.err.println(f.getVRL());
addFile(connection, (VFile) f, parentRef, ssid);
}
}
}
}
Aggregations