long size = file.length() / 1024; // 获取所上传的文件的大小(kb)
memory.setMemoryused((int) (memory.getMemoryused() + size)); // 更新已使用的空间
filedao.updateMemory(memory); // 实际更新已使用的空间
HdfsFile newfile = new HdfsFile(); // 建立HdfsFile对象,用于写入数据库
dillResult resultReturn = new dillResult(); // 建立dillResult不知有何用
/*
* 获取上传到所在目录对应的url,也就是要上传文件到hdfs文件系统的目标目录
*/
HdfsFile dfsfile = filedao.findFile(currentId);
String dst = dfsfile.getFileUrl(); // 获得当前目录的url
upLoadAction upAction = new upLoadAction();
boolean result = upAction.copytoDFS(file, dst, true, filename,
safelevel);
if (result) {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
Date newDate;
try {
newDate = new Date(dateFormat.parse(deadline).getTime());
newfile.setDeadline(newDate);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
newfile.setSize(size);
newfile.setType(fileUtil.checkType(filename));
newfile.setFileName(filename);
newfile.setFileUrl(dfsfile.getFileUrl() + "/" + filename);
newfile.setParentid(dfsfile.getFileId());
newfile.setFileId(pathToId.ParsepathToId(newfile.getFileUrl()));
newfile.setUserId(dfsfile.getUserId());
newfile.setCreateTime(new Date());
newfile.setModifiedTime(new Date());
newfile.setSafeLevel(safelevel);
result = filedao.insertFile(newfile);
}
System.out.println("result------>" + result);
if (result) {
String listfile = listFile(newfile.getParentid(),
newfile.getUserId());
resultReturn.setWddescjson(listfile);
resultReturn.setUserId(newfile.getUserId());
resultReturn.setParentid(newfile.getParentid());
resultReturn.setFileId(newfile.getFileId());
}
return resultReturn;
}