Fix for ETHREEOH-221 - Undefined Root Scoped Objects in JavaScript API.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@11119 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Kevin Roast
2008-10-01 11:23:59 +00:00
parent c1cb0add66
commit cf7a9f6742
2 changed files with 15 additions and 20 deletions

View File

@@ -133,7 +133,6 @@
</bean>
</property>
<property name="transactionHelper" ref="retryingTransactionHelper" />
<property name="permissionService" ref="permissionService" />
<property name="authorityService" ref="authorityService" />
<property name="repository" ref="repositoryHelper" />
<property name="repositoryImageResolver" ref="webscripts.repo.imageresolver" />

View File

@@ -41,9 +41,7 @@ import org.alfresco.repo.transaction.RetryingTransactionHelper;
import org.alfresco.repo.transaction.RetryingTransactionHelper.RetryingTransactionCallback;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.cmr.repository.TemplateService;
import org.alfresco.service.cmr.security.AccessStatus;
import org.alfresco.service.cmr.security.AuthorityService;
import org.alfresco.service.cmr.security.PermissionService;
import org.alfresco.service.descriptor.DescriptorService;
import org.alfresco.web.scripts.AbstractRuntimeContainer;
import org.alfresco.web.scripts.Authenticator;
@@ -76,7 +74,6 @@ public class RepositoryContainer extends AbstractRuntimeContainer implements Ten
private RepositoryImageResolver imageResolver;
private RetryingTransactionHelper retryingTransactionHelper;
private AuthorityService authorityService;
private PermissionService permissionService;
private DescriptorService descriptorService;
private TenantAdminService tenantAdminService;
private ObjectFactory registryFactory;
@@ -113,14 +110,6 @@ public class RepositoryContainer extends AbstractRuntimeContainer implements Ten
this.imageResolver = imageResolver;
}
/**
* @param permissionService
*/
public void setPermissionService(PermissionService permissionService)
{
this.permissionService = permissionService;
}
/**
* @param retryingTransactionHelper
*/
@@ -145,6 +134,9 @@ public class RepositoryContainer extends AbstractRuntimeContainer implements Ten
this.authorityService = authorityService;
}
/**
* @param tenantAdminService
*/
public void setTenantAdminService(TenantAdminService tenantAdminService)
{
this.tenantAdminService = tenantAdminService;
@@ -188,23 +180,28 @@ public class RepositoryContainer extends AbstractRuntimeContainer implements Ten
*/
private void addRepoParameters(Map<String, Object> params)
{
if (AlfrescoTransactionSupport.getTransactionId() != null && AuthenticationUtil.getCurrentAuthentication() != null)
if (AlfrescoTransactionSupport.getTransactionId() != null &&
AuthenticationUtil.getCurrentAuthentication() != null)
{
NodeRef rootHome = repository.getRootHome();
if (rootHome != null && permissionService.hasPermission(rootHome, PermissionService.READ).equals(AccessStatus.ALLOWED))
if (rootHome != null)
{
params.put("roothome", rootHome);
}
NodeRef companyHome = repository.getCompanyHome();
if (companyHome != null && permissionService.hasPermission(companyHome, PermissionService.READ).equals(AccessStatus.ALLOWED))
if (companyHome != null)
{
params.put("companyhome", companyHome);
}
NodeRef person = repository.getPerson();
if (person != null && permissionService.hasPermission(companyHome, PermissionService.READ).equals(AccessStatus.ALLOWED))
if (person != null)
{
params.put("person", person);
params.put("userhome", repository.getUserHome(person));
NodeRef userHome = repository.getUserHome(person);
if (userHome != null)
{
params.put("userhome", userHome);
}
}
}
}
@@ -248,7 +245,7 @@ public class RepositoryContainer extends AbstractRuntimeContainer implements Ten
{
logger.debug("Current authentication: " + (currentUser == null ? "unauthenticated" : "authenticated as " + currentUser));
logger.debug("Authentication required: " + required);
logger.debug("Guest login: " + isGuest);
logger.debug("Guest login requested: " + isGuest);
}
//
@@ -346,7 +343,6 @@ public class RepositoryContainer extends AbstractRuntimeContainer implements Ten
{
RunAsWork<Object> work = new RunAsWork<Object>()
{
public Object doWork() throws Exception
{
transactionedExecute(script, scriptReq, scriptRes);