Package lumis.portal.project
Class ProjectManager
- java.lang.Object
-
- lumis.portal.project.ProjectManager
-
- All Implemented Interfaces:
IProjectManagerSPI
public class ProjectManager extends Object implements IProjectManagerSPI
IProjectManagerSPI
implementation.- Since:
- 12.4.0
- Version:
- $Revision: 23904 $ $Date: 2020-06-16 12:23:44 -0300 (Tue, 16 Jun 2020) $
-
-
Constructor Summary
Constructors Constructor Description ProjectManager()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addProject(IProject project)
Adds the given project.void
clearCache()
Clears cache using current transaction..void
deleteProjects(Collection<String> ids)
Deletes the projects with the given identifiers.void
disconnectProjectFromChannel(String channelId)
Disconnects the project (if any) of the given channel.Collection<IProject>
getAllProjects()
Returns all projects.Optional<IProject>
getLocalProjectByChannelId(String channelId)
Returns an optional project based on the given channel identifier.Optional<IProject>
getProjectByChannelId(String channelId)
Returns an optional project based on the given channel identifier.Optional<IProject>
getProjectByWebsiteId(String websiteId)
Returns an optional project based on the given website identifier.void
updateProject(IProject project)
Updates the given project.
-
-
-
Method Detail
-
getAllProjects
public Collection<IProject> getAllProjects() throws PortalException
Description copied from interface:IProjectManagerSPI
Returns all projects.- Specified by:
getAllProjects
in interfaceIProjectManagerSPI
- Returns:
- all projects.
- Throws:
PortalException
- if some error occur.
-
getProjectByWebsiteId
public Optional<IProject> getProjectByWebsiteId(String websiteId) throws PortalException
Description copied from interface:IProjectManagerSPI
Returns an optional project based on the given website identifier. The optional will not be present if no such project could be found. This operation tries to find the project recursively among the given website's channel and all its parents.- Specified by:
getProjectByWebsiteId
in interfaceIProjectManagerSPI
- Parameters:
websiteId
- the website identifier.- Returns:
- an optional project based on the given website identifier.
- Throws:
PortalException
- if some error occur.
-
getProjectByChannelId
public Optional<IProject> getProjectByChannelId(String channelId) throws PortalException
Description copied from interface:IProjectManagerSPI
Returns an optional project based on the given channel identifier. The optional will not be present if no such project could be found. This operation tries to find the project recursively among the given channel and all its parents.- Specified by:
getProjectByChannelId
in interfaceIProjectManagerSPI
- Parameters:
channelId
- the channel identifier.- Returns:
- an optional project based on the given channel identifier.
- Throws:
PortalException
- if some error occur.
-
getLocalProjectByChannelId
public Optional<IProject> getLocalProjectByChannelId(String channelId) throws PortalException
Description copied from interface:IProjectManagerSPI
Returns an optional project based on the given channel identifier. The optional will not be present if no such project could be found. Does not consider channel structure inheritance.- Specified by:
getLocalProjectByChannelId
in interfaceIProjectManagerSPI
- Parameters:
channelId
- the channel identifier.- Returns:
- an optional project based on the given channel identifier.
- Throws:
PortalException
- if some error occur.
-
addProject
public void addProject(IProject project) throws AccessDeniedException, TransactionRequiredException, PortalException
Description copied from interface:IProjectManagerSPI
Adds the given project.- Specified by:
addProject
in interfaceIProjectManagerSPI
- Parameters:
project
- the project.- Throws:
AccessDeniedException
- if the current user does not have manage portal permission.TransactionRequiredException
- if there's no current transaction.PortalException
- if there's already a project with the same channel identifier.
-
updateProject
public void updateProject(IProject project) throws AccessDeniedException, TransactionRequiredException, PortalException
Description copied from interface:IProjectManagerSPI
Updates the given project.- Specified by:
updateProject
in interfaceIProjectManagerSPI
- Parameters:
project
- the project.- Throws:
AccessDeniedException
- if the current user does not have manage portal permission.TransactionRequiredException
- if there's no current transaction.PortalException
- if there's already a project with the same channel identifier.ImmutableResourceException
- if the project trying to be updated cannot be updated.
-
deleteProjects
public void deleteProjects(Collection<String> ids) throws AccessDeniedException, TransactionRequiredException, PortalException
Description copied from interface:IProjectManagerSPI
Deletes the projects with the given identifiers. Those identifiers that does not refer to an existent project will be ignored.- Specified by:
deleteProjects
in interfaceIProjectManagerSPI
- Parameters:
ids
- the identifiers of the projects to be deleted.- Throws:
AccessDeniedException
- if the current user does not have manage portal permission.TransactionRequiredException
- if there's no current transaction.ImmutableResourceException
- if some of the projects trying to be deleted cannot be deleted.PortalException
- if other error occur.
-
disconnectProjectFromChannel
public void disconnectProjectFromChannel(String channelId) throws PortalException
Description copied from interface:IProjectManagerSPI
Disconnects the project (if any) of the given channel.- Specified by:
disconnectProjectFromChannel
in interfaceIProjectManagerSPI
- Parameters:
channelId
- the channel identifier.- Throws:
PortalException
-
clearCache
public void clearCache() throws PortalException
Description copied from interface:IProjectManagerSPI
Clears cache using current transaction..- Specified by:
clearCache
in interfaceIProjectManagerSPI
- Throws:
PortalException
-
-