mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
Merge IMAP in
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14947 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
73
source/java/org/alfresco/repo/jscript/Imap.java
Executable file
73
source/java/org/alfresco/repo/jscript/Imap.java
Executable file
@@ -0,0 +1,73 @@
|
||||
package org.alfresco.repo.jscript;
|
||||
|
||||
import org.alfresco.repo.model.Repository;
|
||||
import org.alfresco.service.ServiceRegistry;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.cmr.repository.StoreRef;
|
||||
import org.alfresco.util.ParameterCheck;
|
||||
|
||||
public final class Imap extends BaseScopableProcessorExtension
|
||||
{
|
||||
/** Service registry */
|
||||
private ServiceRegistry services;
|
||||
|
||||
/** Default store reference */
|
||||
private StoreRef storeRef;
|
||||
|
||||
/** Repository helper */
|
||||
private Repository repository;
|
||||
|
||||
|
||||
/**
|
||||
* Set the default store reference
|
||||
*
|
||||
* @param storeRef the default store reference
|
||||
*/
|
||||
public void setStoreUrl(String storeRef)
|
||||
{
|
||||
// ensure this is not set again by a script instance!
|
||||
if (this.storeRef != null)
|
||||
{
|
||||
throw new IllegalStateException("Default store URL can only be set once.");
|
||||
}
|
||||
this.storeRef = new StoreRef(storeRef);
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the service registry
|
||||
*
|
||||
* @param services the service registry
|
||||
*/
|
||||
public void setServiceRegistry(ServiceRegistry services)
|
||||
{
|
||||
this.services = services;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the repository helper
|
||||
*
|
||||
* @param repository the repository helper
|
||||
*/
|
||||
public void setRepositoryHelper(Repository repository)
|
||||
{
|
||||
this.repository = repository;
|
||||
}
|
||||
|
||||
/**
|
||||
* Searches NodeRef to the IMAP home for specified user
|
||||
*
|
||||
* @param mailboxName the name of the mailbox
|
||||
* @param userName the name of the user
|
||||
*/
|
||||
public ScriptNode getImapHomeRef(String mailboxName, String userName)
|
||||
{
|
||||
ScriptNode result = null;
|
||||
NodeRef nodeRef = services.getImapService().getMailboxRootRef(mailboxName, userName);
|
||||
if (nodeRef != null)
|
||||
{
|
||||
result = new ScriptNode(nodeRef, this.services, getScope());
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user