/*
* Copyright (C) 2005-2011 Alfresco Software Limited.
*
* This file is part of Alfresco
*
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see .
*/
package org.alfresco.repo.security.person;
import java.util.ArrayList;
import java.util.List;
import org.alfresco.model.ContentModel;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.util.FileNameValidator;
/**
* Creates home folders directly under the root path, based on the username of the user.
*
* @deprecated
* Depreciated since 4.0. {@link UsernameHomeFolderProvider} should now be used.
*
* @author Andy Hind
*/
public class UIDBasedHomeFolderProvider extends ExistingPathBasedHomeFolderProvider
{
private String templatePath;
private NodeRef templateNodeRef;
public void setTemplatePath(String templatePath)
{
this.templatePath = templatePath;
}
protected synchronized NodeRef getTemplateNodeRef()
{
if (templateNodeRef == null && templatePath != null)
{
templateNodeRef = resolvePath(templatePath);
}
return templateNodeRef;
}
public List getHomeFolderPath(NodeRef person)
{
List path = new ArrayList(1);
path.add(FileNameValidator.getValidFileName(
getHomeFolderManager().getPersonProperty(person, ContentModel.PROP_USERNAME)));
return path;
}
protected HomeSpaceNodeRef getHomeFolder(NodeRef person)
{
return getHomeFolderManager().getHomeFolder(getV2Adaptor(), person, false);
}
}