Revision 99d0d40c src/gr/ebs/gss/server/ejb/ExternalAPIBean.java
b/src/gr/ebs/gss/server/ejb/ExternalAPIBean.java | ||
---|---|---|
701 | 701 |
removeOldVersions(userId, fileId); |
702 | 702 |
file.setVersioned(versioned); |
703 | 703 |
} |
704 |
if (readForAll != null && user.equals(file.getOwner())) |
|
704 |
if (readForAll == null) |
|
705 |
throw new ObjectNotFoundException("The 'public' value for the specific file hasn't been specified"); |
|
706 |
if (user.equals(file.getOwner())) |
|
705 | 707 |
file.setReadForAll(readForAll); |
706 | 708 |
if (permissions != null && !permissions.isEmpty()) |
707 | 709 |
setFilePermissions(file, permissions); |
... | ... | |
2289 | 2291 |
parent.addFile(file); |
2290 | 2292 |
// set file owner to folder owner |
2291 | 2293 |
file.setOwner(parent.getOwner()); |
2294 |
//set file's readForAll value according to parent folder readForAll value |
|
2295 |
file.setReadForAll(parent.isReadForAll()); |
|
2292 | 2296 |
|
2293 | 2297 |
final Date now = new Date(); |
2294 | 2298 |
final AuditInfo auditInfo = new AuditInfo(); |
... | ... | |
2714 | 2718 |
for (FileHeader file : folder.getFiles()) |
2715 | 2719 |
file.setReadForAll(readForAll); |
2716 | 2720 |
if(readForAll) |
2721 |
//only update subfolders when readforall is true. otherwise all sub-folders stay untouched |
|
2717 | 2722 |
for (Folder sub : folder.getSubfolders()) |
2718 | 2723 |
setFolderReadForAll(user, sub, readForAll); |
2719 | 2724 |
|
Also available in: Unified diff