public void addNewCollaborators( Content content, List<User> userList, User apiCaller, String predicate, boolean addToShelf) { Set<ContentPermission> contentPermissions = content.getContentPermissions(); if (contentPermissions == null) { contentPermissions = new HashSet<ContentPermission>(); } if (userList != null && userList.size() > 0) { Date date = new Date(); for (User user : userList) { if (!user.getGooruUId().equals(content.getUser().getGooruUId())) { boolean newFlag = true; for (ContentPermission contentPermission : contentPermissions) { if (contentPermission.getParty().getPartyUid().equals(user.getPartyUid())) { newFlag = false; break; } } if (newFlag) { ContentPermission contentPerm = new ContentPermission(); contentPerm.setParty(user); contentPerm.setContent(content); contentPerm.setPermission(EDIT); contentPerm.setValidFrom(date); contentPermissions.add(contentPerm); } } } } if (contentPermissions != null && contentPermissions.size() > 0) { content.setContentPermissions(contentPermissions); } }