ALF-13441: WebDAV: activities should be raised/published

Moved siteId and tenantDomain discover to peer object to allow overriding of behaviour where needed (e.g. Cloud)



git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@34760 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Matt Ward
2012-03-26 15:44:39 +00:00
parent 603877a9ad
commit 8021e13f29
2 changed files with 35 additions and 33 deletions

View File

@@ -24,6 +24,8 @@ import java.util.Collections;
import java.util.List;
import java.util.StringTokenizer;
import javax.servlet.http.HttpServletRequest;
import org.alfresco.model.ContentModel;
import org.alfresco.repo.tenant.TenantService;
import org.alfresco.service.ServiceRegistry;
@@ -41,6 +43,8 @@ import org.alfresco.service.cmr.repository.datatype.DefaultTypeConverter;
import org.alfresco.service.cmr.search.SearchService;
import org.alfresco.service.cmr.security.AuthenticationService;
import org.alfresco.service.cmr.security.PermissionService;
import org.alfresco.service.cmr.site.SiteInfo;
import org.alfresco.service.cmr.site.SiteService;
import org.alfresco.service.namespace.NamespaceService;
import org.alfresco.util.EqualsHelper;
import org.apache.commons.logging.Log;
@@ -63,6 +67,7 @@ public class WebDAVHelper
// Path seperator
public static final String PathSeperator = "/";
public static final char PathSeperatorChar = '/';
private static final String DEFAULT_SITE_ID = null;
// Logging
private static Log logger = LogFactory.getLog("org.alfresco.webdav.protocol");
@@ -645,4 +650,32 @@ public class WebDAVHelper
return sb.toString();
}
}
public String determineSiteId(WebDAVMethod method)
{
SiteService siteService = getServiceRegistry().getSiteService();
String siteId;
try
{
FileInfo fileInfo = getNodeForPath(method.getRootNodeRef(), method.getPath(), method.getServletPath());
SiteInfo siteInfo = siteService.getSite(fileInfo.getNodeRef());
siteId = siteInfo.getShortName();
}
catch (FileNotFoundException error)
{
siteId = DEFAULT_SITE_ID;
}
return siteId;
}
public String determineTenantDomain(WebDAVMethod method)
{
TenantService tenantService = getTenantService();
String tenantDomain = tenantService.getCurrentUserDomain();
if (tenantDomain == null)
{
return TenantService.DEFAULT_DOMAIN;
}
return tenantDomain;
}
}