mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-14 17:58:59 +00:00
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:
@@ -24,6 +24,8 @@ import java.util.Collections;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.StringTokenizer;
|
import java.util.StringTokenizer;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
|
||||||
import org.alfresco.model.ContentModel;
|
import org.alfresco.model.ContentModel;
|
||||||
import org.alfresco.repo.tenant.TenantService;
|
import org.alfresco.repo.tenant.TenantService;
|
||||||
import org.alfresco.service.ServiceRegistry;
|
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.search.SearchService;
|
||||||
import org.alfresco.service.cmr.security.AuthenticationService;
|
import org.alfresco.service.cmr.security.AuthenticationService;
|
||||||
import org.alfresco.service.cmr.security.PermissionService;
|
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.service.namespace.NamespaceService;
|
||||||
import org.alfresco.util.EqualsHelper;
|
import org.alfresco.util.EqualsHelper;
|
||||||
import org.apache.commons.logging.Log;
|
import org.apache.commons.logging.Log;
|
||||||
@@ -63,6 +67,7 @@ public class WebDAVHelper
|
|||||||
// Path seperator
|
// Path seperator
|
||||||
public static final String PathSeperator = "/";
|
public static final String PathSeperator = "/";
|
||||||
public static final char PathSeperatorChar = '/';
|
public static final char PathSeperatorChar = '/';
|
||||||
|
private static final String DEFAULT_SITE_ID = null;
|
||||||
|
|
||||||
// Logging
|
// Logging
|
||||||
private static Log logger = LogFactory.getLog("org.alfresco.webdav.protocol");
|
private static Log logger = LogFactory.getLog("org.alfresco.webdav.protocol");
|
||||||
@@ -645,4 +650,32 @@ public class WebDAVHelper
|
|||||||
return sb.toString();
|
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;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -1520,27 +1520,7 @@ public abstract class WebDAVMethod
|
|||||||
{
|
{
|
||||||
if (siteId == null)
|
if (siteId == null)
|
||||||
{
|
{
|
||||||
siteId = determineSiteId();
|
siteId = getDAVHelper().determineSiteId(this);
|
||||||
}
|
|
||||||
return siteId;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected String determineSiteId()
|
|
||||||
{
|
|
||||||
SiteService siteService = m_davHelper.getServiceRegistry().getSiteService();
|
|
||||||
String siteId;
|
|
||||||
try
|
|
||||||
{
|
|
||||||
FileInfo fileInfo = m_davHelper.getNodeForPath(
|
|
||||||
getRootNodeRef(),
|
|
||||||
getPath(),
|
|
||||||
m_request.getServletPath());
|
|
||||||
SiteInfo siteInfo = siteService.getSite(fileInfo.getNodeRef());
|
|
||||||
siteId = siteInfo.getShortName();
|
|
||||||
}
|
|
||||||
catch (FileNotFoundException error)
|
|
||||||
{
|
|
||||||
siteId = DEFAULT_SITE_ID;
|
|
||||||
}
|
}
|
||||||
return siteId;
|
return siteId;
|
||||||
}
|
}
|
||||||
@@ -1555,18 +1535,7 @@ public abstract class WebDAVMethod
|
|||||||
{
|
{
|
||||||
if (tenantDomain == null)
|
if (tenantDomain == null)
|
||||||
{
|
{
|
||||||
tenantDomain = determineTenantDomain();
|
tenantDomain = getDAVHelper().determineTenantDomain(this);
|
||||||
}
|
|
||||||
return tenantDomain;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected String determineTenantDomain()
|
|
||||||
{
|
|
||||||
TenantService tenantService = m_davHelper.getTenantService();
|
|
||||||
String tenantDomain = tenantService.getCurrentUserDomain();
|
|
||||||
if (tenantDomain == null)
|
|
||||||
{
|
|
||||||
return TenantService.DEFAULT_DOMAIN;
|
|
||||||
}
|
}
|
||||||
return tenantDomain;
|
return tenantDomain;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user