diff --git a/source/java/org/alfresco/rest/api/impl/SitesImpl.java b/source/java/org/alfresco/rest/api/impl/SitesImpl.java index f29ecfdb5e..4b7fd1b154 100644 --- a/source/java/org/alfresco/rest/api/impl/SitesImpl.java +++ b/source/java/org/alfresco/rest/api/impl/SitesImpl.java @@ -276,14 +276,15 @@ public class SitesImpl implements Sites { SiteMember siteMember = null; - personId = people.validatePerson(personId); - SiteInfo siteInfo = validateSite(siteId); - if(siteInfo == null) - { - // site does not exist - throw new RelationshipResourceNotFoundException(personId, siteId); - } - siteId = siteInfo.getShortName(); + personId = people.validatePerson(personId); + SiteInfo siteInfo = validateSite(siteId); + if(siteInfo == null) + { + // site does not exist + logger.debug("Site does not exist: "+siteId); + throw new RelationshipResourceNotFoundException(personId, siteId); + } + siteId = siteInfo.getShortName(); logger.debug("Getting member role for "+siteId+ " person "+personId); String role = siteService.getMembersRole(siteId, personId); @@ -300,33 +301,37 @@ public class SitesImpl implements Sites return siteMember; } - public SiteMember addSiteMember(String siteId, SiteMember siteMember) - { - String personId = people.validatePerson(siteMember.getPersonId()); - SiteInfo siteInfo = validateSite(siteId); - if(siteInfo == null) - { - // site does not exist - throw new EntityNotFoundException(siteId); - } - // set the site id to the short name (to deal with case sensitivity issues with using the siteId from the url) - siteId = siteInfo.getShortName(); + public SiteMember addSiteMember(String siteId, SiteMember siteMember) + { + String personId = people.validatePerson(siteMember.getPersonId()); + SiteInfo siteInfo = validateSite(siteId); + if(siteInfo == null) + { + // site does not exist + logger.debug("addSiteMember: site does not exist "+siteId+ " person "+personId); + throw new EntityNotFoundException(siteId); + } + // set the site id to the short name (to deal with case sensitivity issues with using the siteId from the url) + siteId = siteInfo.getShortName(); + + String role = siteMember.getRole(); + if(role == null) + { + logger.debug("addSiteMember: Must provide a role "+siteMember); + throw new InvalidArgumentException("Must provide a role"); + } + + if(siteService.isMember(siteId, personId)) + { + logger.debug("addSiteMember: "+ personId + " is already a member of site " + siteId); + throw new ConstraintViolatedException(personId + " is already a member of site " + siteId); + } - String role = siteMember.getRole(); - if(role == null) - { - throw new InvalidArgumentException("Must provide a role"); - } - - if(siteService.isMember(siteId, personId)) - { - throw new ConstraintViolatedException(personId + " is already a member of site " + siteId); - } - - if(!siteService.canAddMember(siteId, personId, role)) - { - throw new PermissionDeniedException(); - } + if(!siteService.canAddMember(siteId, personId, role)) + { + logger.debug("addSiteMember: PermissionDeniedException "+siteId+ " person "+personId+ " role "+role); + throw new PermissionDeniedException(); + } try { @@ -334,6 +339,7 @@ public class SitesImpl implements Sites } catch (UnknownAuthorityException e) { + logger.debug("addSiteMember: UnknownAuthorityException "+siteId+ " person "+personId+ " role "+role); throw new InvalidArgumentException("Unknown role '" + role + "'"); } return siteMember;