1 17 package org.alfresco.repo.admin.patch.impl; 18 19 import org.alfresco.i18n.I18NUtil; 20 import org.alfresco.repo.admin.patch.AbstractPatch; 21 import org.alfresco.service.cmr.repository.NodeRef; 22 import org.alfresco.service.cmr.security.PermissionService; 23 import org.alfresco.service.cmr.security.PersonService; 24 25 30 public class GuestPersonPermissionPatch extends AbstractPatch 31 { 32 private static final String MSG_SUCCESS = "patch.guestPersonPermission.result"; 33 34 private PersonService personService; 35 36 private PermissionService permissionService; 37 38 private String guestId = "guest"; 39 40 public GuestPersonPermissionPatch() 41 { 42 super(); 43 } 44 45 public void setGuestId(String guestId) 46 { 47 this.guestId = guestId; 48 } 49 50 public void setPermissionService(PermissionService permissionService) 51 { 52 this.permissionService = permissionService; 53 } 54 55 public void setPersonService(PersonService personService) 56 { 57 this.personService = personService; 58 } 59 60 @Override 61 protected String applyInternal() throws Exception 62 { 63 if (personService.personExists(guestId)) 64 { 65 NodeRef personRef = personService.getPerson(guestId); 66 permissionService.setInheritParentPermissions(personRef, false); 67 permissionService.deletePermission(personRef, guestId, PermissionService.CONSUMER, true); 68 permissionService.setPermission(personRef, guestId, PermissionService.READ, true); 69 } 70 71 return I18NUtil.getMessage(MSG_SUCCESS); 72 } 73 74 } 75 | Popular Tags |