org.alfresco.wcm.webproject
Interface WebProjectService

All Known Implementing Classes:
WebProjectServiceImpl

public interface WebProjectService

Web Project Service fundamental API.

This service API is designed to support the public facing Web Project APIs.


Method Summary
 void createWebApp(org.alfresco.service.cmr.repository.NodeRef wpNodeRef, java.lang.String name, java.lang.String description)
          Create webapp for the given web project.
 void createWebApp(java.lang.String wpStoreId, java.lang.String name, java.lang.String description)
          Create webapp for the given web project.
 WebProjectInfo createWebProject(java.lang.String dnsName, java.lang.String name, java.lang.String title, java.lang.String description)
          Create a new web project (with a default ROOT webapp)
 WebProjectInfo createWebProject(java.lang.String dnsName, java.lang.String name, java.lang.String title, java.lang.String description, org.alfresco.service.cmr.repository.NodeRef sourceNodeRef)
          Deprecated. see createWebProject(String dnsName, WebProjectInfo wpInfo)
 WebProjectInfo createWebProject(java.lang.String dnsName, java.lang.String name, java.lang.String title, java.lang.String description, java.lang.String defaultWebApp, boolean useAsTemplate, org.alfresco.service.cmr.repository.NodeRef sourceNodeRef)
          Create a new web project (with given default web app)
 WebProjectInfo createWebProject(WebProjectInfo wpInfo)
          Create a new web project (with given web project info)
 void deleteWebApp(org.alfresco.service.cmr.repository.NodeRef wpNodeRef, java.lang.String name)
          Delete webapp from the given web project
 void deleteWebApp(java.lang.String wpStoreId, java.lang.String name)
          Delete webapp from the given web project
 void deleteWebProject(org.alfresco.service.cmr.repository.NodeRef wpNodeRef)
          Delete the web project
 void deleteWebProject(java.lang.String wpStoreId)
          Delete the web project
 java.lang.String getPreviewProvider(java.lang.String wpStoreId)
          Get preview provider name configured for given web project (if not configured then return default preview provider)
 WebProjectInfo getWebProject(org.alfresco.service.cmr.repository.NodeRef wpNodeRef)
          Gets web project info based on the DM nodeRef of a web project
 WebProjectInfo getWebProject(java.lang.String wpStoreId)
          Gets web project info based on the store id of a web project
 org.alfresco.service.cmr.repository.NodeRef getWebProjectNodeFromPath(java.lang.String absoluteAVMPath)
          Returns the Web Project for the given AVM path
 org.alfresco.service.cmr.repository.NodeRef getWebProjectNodeFromStore(java.lang.String storeName)
          Returns the Web Project for the given AVM store name (sandbox store id)
 org.alfresco.service.cmr.repository.NodeRef getWebProjectsRoot()
          Returns the Web Projects container
 int getWebUserCount(org.alfresco.service.cmr.repository.NodeRef wpNodeRef)
          Get the number of web users invited to this web project
 java.lang.String getWebUserRole(org.alfresco.service.cmr.repository.NodeRef wpNodeRef, java.lang.String userName)
          Gets the role of the specified user
 java.lang.String getWebUserRole(java.lang.String wpStoreId, java.lang.String userName)
          Gets the role of the specified user
 boolean hasWebProjectsRoot()
          Determines whether the "Web Projects" container node is present.
 void inviteWebUser(org.alfresco.service.cmr.repository.NodeRef wpNodeRef, java.lang.String userName, java.lang.String userRole, boolean autoCreateAuthorSandbox)
          Invite user to web project
 void inviteWebUser(java.lang.String wpStoreId, java.lang.String userName, java.lang.String userRole)
          Invite user to web project
 void inviteWebUser(java.lang.String wpStoreId, java.lang.String userName, java.lang.String userRole, boolean autoCreateAuthorSandbox)
          Invite user to web project
 void inviteWebUsersGroups(org.alfresco.service.cmr.repository.NodeRef wpNodeRef, java.util.Map userGroupRoles, boolean autoCreateAuthorSandbox)
          Invite users/groups to web project
 void inviteWebUsersGroups(java.lang.String wpStoreId, java.util.Map userGroupRoles)
          Invite users/groups to web project
 void inviteWebUsersGroups(java.lang.String wpStoreId, java.util.Map userGroupRoles, boolean autoCreateAuthorSandbox)
          Invite users/groups to web project
 boolean isContentManager(org.alfresco.service.cmr.repository.NodeRef wpNodeRef)
          Returns true if the current user is a manager of this web project
 boolean isContentManager(org.alfresco.service.cmr.repository.NodeRef wpNodeRef, java.lang.String userName)
          Returns true if the user is a manager of this web project
 boolean isContentManager(java.lang.String wpStoreId)
          Returns true if the current user is a manager of this web project
 boolean isContentManager(java.lang.String wpStoreId, java.lang.String username)
          Returns true if the user is a manager of this web project
 boolean isWebProject(org.alfresco.service.cmr.repository.NodeRef wpNodeRef)
          Return true if web project node ref is a web project
 boolean isWebProject(java.lang.String wpStoreId)
          Return true if web project node ref is a web project
 boolean isWebUser(org.alfresco.service.cmr.repository.NodeRef wpNodeRef)
          Indicates whether current user is a web user of the web project or not
 boolean isWebUser(org.alfresco.service.cmr.repository.NodeRef wpNodeRef, java.lang.String userName)
          Indicates whether given user is a web user of the web project or not
 boolean isWebUser(java.lang.String wpStoreId)
          Indicates whether current user is a web user of the web project or not
 boolean isWebUser(java.lang.String wpStoreId, java.lang.String userName)
          Indicates whether given user is a web user of the web project or not
 java.util.List listWebApps(org.alfresco.service.cmr.repository.NodeRef wpNodeRef)
          List webapps for the web project
 java.util.List listWebApps(java.lang.String wpStoreId)
          List webapps for the web project
 java.util.List listWebProjects()
          List the available web projects for the current user
 java.util.List listWebProjects(java.lang.String userName)
          List the web projects for the given user (based on the available web projects for the current user)
 java.util.Map listWebUsers(org.alfresco.service.cmr.repository.NodeRef wpNodeRef)
          List the web users of the web project
 java.util.Map listWebUsers(java.lang.String wpStoreId)
          List the web users of the web project
 void uninviteWebUser(org.alfresco.service.cmr.repository.NodeRef wpNodeRef, java.lang.String userName, boolean autoDeleteAuthorSandbox)
          Uninvite user from a web project
 void uninviteWebUser(java.lang.String wpStoreId, java.lang.String userName)
          Uninvite user from a web project
 void uninviteWebUser(java.lang.String wpStoreId, java.lang.String userName, boolean autoDeleteAuthorSandbox)
          Uninvite user from a web project
 void updateWebProject(WebProjectInfo wpInfo)
          Update the web project info
 

Method Detail

createWebProject

@NotAuditable
WebProjectInfo createWebProject(java.lang.String dnsName,
                                             java.lang.String name,
                                             java.lang.String title,
                                             java.lang.String description)
Create a new web project (with a default ROOT webapp)

Note: the DNS name will be used to generate the web project store id, which can be subsequently retrieved via WebProjectInfo.getStoreId()

Parameters:
dnsName - DNS name (required, must be unique)
name - name (required, must be unique)
title - title
description - description
Returns:
WebProjectInfo the created web project info

createWebProject

@NotAuditable
WebProjectInfo createWebProject(java.lang.String dnsName,
                                             java.lang.String name,
                                             java.lang.String title,
                                             java.lang.String description,
                                             org.alfresco.service.cmr.repository.NodeRef sourceNodeRef)
Deprecated. see createWebProject(String dnsName, WebProjectInfo wpInfo)

Create a new web project (with a default ROOT webapp)

Note: the DNS name will be used to generate the web project store id, which can be subsequently retrieved via WebProjectInfo.getStoreId()

Parameters:
dnsName - DNS name (required, must be unique)
name - name (required, must be unique)
title - title
description - description
sourceNodeRef - web project node ref to branch from (can be null)
Returns:
WebProjectInfo the created web project info

createWebProject

@NotAuditable
WebProjectInfo createWebProject(java.lang.String dnsName,
                                             java.lang.String name,
                                             java.lang.String title,
                                             java.lang.String description,
                                             java.lang.String defaultWebApp,
                                             boolean useAsTemplate,
                                             org.alfresco.service.cmr.repository.NodeRef sourceNodeRef)
Create a new web project (with given default web app)

Note: the DNS name will be used to generate the web project store id, which can be subsequently retrieved via WebProjectInfo.getStoreId()

Parameters:
dnsName - DNS name (required, must be unique)
name - name (required, must be unique)
title - title
description - description
defaultWebApp - default webapp (if null, will default to ROOT webapp)
useAsTemplate - true if this web project can be used as a template to branch from
sourceNodeRef - web project node ref to branch from (can be null)
Returns:
WebProjectInfo the created web project info

createWebProject

@NotAuditable
WebProjectInfo createWebProject(WebProjectInfo wpInfo)
Create a new web project (with given web project info)

Note: the DNS name will be used to generate the web project store id, which can be subsequently retrieved via WebProjectInfo.getStoreId()

Parameters:
wpInfo - web project info Note:
dnsName - DNS name (required, must be unique)
name - name (required, must be unique)
title - title
description - description
defaultWebApp - default webapp (if null, will default to ROOT webapp)
useAsTemplate - true if this web project can be used as a template to branch from
sourceNodeRef - web project node ref to branch from (can be null)
previewProvider - preview URI service provider name (must correspond to registered name, if null will be set to default provider)
Returns:
WebProjectInfo the created web project info

hasWebProjectsRoot

@NotAuditable
boolean hasWebProjectsRoot()
Determines whether the "Web Projects" container node is present.

Returns:
true if the "Web Projects" container node is present

getWebProjectsRoot

@NotAuditable
org.alfresco.service.cmr.repository.NodeRef getWebProjectsRoot()
Returns the Web Projects container

Returns:
NodeRef the node ref of the "Web Projects" container node

getWebProjectNodeFromPath

@NotAuditable
org.alfresco.service.cmr.repository.NodeRef getWebProjectNodeFromPath(java.lang.String absoluteAVMPath)
Returns the Web Project for the given AVM path

Parameters:
absoluteAVMPath - the AVM path from which to determine the Web Project
Returns:
NodeRef the web project node ref for the path or null if it could not be determined

getWebProjectNodeFromStore

@NotAuditable
org.alfresco.service.cmr.repository.NodeRef getWebProjectNodeFromStore(java.lang.String storeName)
Returns the Web Project for the given AVM store name (sandbox store id)

Parameters:
storeName - the AVM store name (sandbox store id) from which to determine the Web Project
Returns:
NodeRef the web project node ref for the path or null if it could not be determined

listWebProjects

@NotAuditable
java.util.List listWebProjects()
List the available web projects for the current user

Returns:
List list of web project info

listWebProjects

@NotAuditable
java.util.List listWebProjects(java.lang.String userName)
List the web projects for the given user (based on the available web projects for the current user)

Parameters:
userName - user name
Returns:
List list of web project info

isWebProject

@NotAuditable
boolean isWebProject(java.lang.String wpStoreId)
Return true if web project node ref is a web project

Parameters:
wpNodeRef - web project store id
Returns:
boolean true, if web project

isWebProject

@NotAuditable
boolean isWebProject(org.alfresco.service.cmr.repository.NodeRef wpNodeRef)
Return true if web project node ref is a web project

Parameters:
wpNodeRef - web project node ref
Returns:
boolean true, if web project

getWebProject

@NotAuditable
WebProjectInfo getWebProject(java.lang.String wpStoreId)
Gets web project info based on the store id of a web project

Returns null if the web project can not be found

Parameters:
wpStoreId - web project store id
Returns:
WebProjectInfo web project info

getWebProject

@NotAuditable
WebProjectInfo getWebProject(org.alfresco.service.cmr.repository.NodeRef wpNodeRef)
Gets web project info based on the DM nodeRef of a web project

Returns null if the web project can not be found

Parameters:
wpNodeRef - web project node ref
Returns:
WebProjectInfo web project info

getPreviewProvider

@NotAuditable
java.lang.String getPreviewProvider(java.lang.String wpStoreId)
Get preview provider name configured for given web project (if not configured then return default preview provider)

Parameters:
wpStoreId - web project store id
Returns:
previewProviderName preview URI service provide name

updateWebProject

@NotAuditable
void updateWebProject(WebProjectInfo wpInfo)
Update the web project info

Note: the nodeRef and storeId (dnsName) of a web project cannot be updated once the web project has been created

Parameters:
wpInfo - web project info

deleteWebProject

@NotAuditable
void deleteWebProject(java.lang.String wpStoreId)
Delete the web project

If the web project does not exist, will log a warning and succeed

Current user must be a content manager for the web project

Parameters:
name - web project store id

deleteWebProject

@NotAuditable
void deleteWebProject(org.alfresco.service.cmr.repository.NodeRef wpNodeRef)
Delete the web project

If the web project does not exist, will log a warning and succeed

Current user must be a content manager for the web project

Note: this will cascade delete all sandboxes associated with a web project

Parameters:
name - web project node ref

createWebApp

@NotAuditable
void createWebApp(java.lang.String wpStoreId,
                               java.lang.String name,
                               java.lang.String description)
Create webapp for the given web project.

Current user must be a content manager for the web project

Parameters:
wpStoreId - web project store id
name - webapp name (must be unique within a web project)
description - webapp description

createWebApp

@NotAuditable
void createWebApp(org.alfresco.service.cmr.repository.NodeRef wpNodeRef,
                               java.lang.String name,
                               java.lang.String description)
Create webapp for the given web project.

Current user must be a content manager for the web project

Parameters:
wpNodeRef - web project node ref
name - webapp name (must be unique within a web project)
description - webapp description

listWebApps

@NotAuditable
java.util.List listWebApps(java.lang.String wpStoreId)
List webapps for the web project

Parameters:
wpStoreId - web project store id
Returns:
List list of webapp names

listWebApps

@NotAuditable
java.util.List listWebApps(org.alfresco.service.cmr.repository.NodeRef wpNodeRef)
List webapps for the web project

Parameters:
wpNodeRef - web project node ref
Returns:
List list of webapp names

deleteWebApp

@NotAuditable
void deleteWebApp(java.lang.String wpStoreId,
                               java.lang.String name)
Delete webapp from the given web project

Current user must be a content manager for the web project

Note: this will cascade delete all assets within a webapp

Parameters:
wpStoreId - web project store id
name - webapp name

deleteWebApp

@NotAuditable
void deleteWebApp(org.alfresco.service.cmr.repository.NodeRef wpNodeRef,
                               java.lang.String name)
Delete webapp from the given web project

Current user must be a content manager for the web project

Note: this will cascade delete all assets within a webapp

Parameters:
wpNodeRef - web project node ref
name - webapp name

isContentManager

@NotAuditable
boolean isContentManager(java.lang.String wpStoreId)
Returns true if the current user is a manager of this web project

Note: This includes admin users but does not include the System user

Parameters:
wpStoreId - web project store id
Returns:
boolean true if the user is a manager (role = WCMUtil.ROLE_CONTENT_MANAGER), false otherwise

isContentManager

@NotAuditable
boolean isContentManager(org.alfresco.service.cmr.repository.NodeRef wpNodeRef)
Returns true if the current user is a manager of this web project

Parameters:
wpNodeRef - web project node ref
Returns:
boolean true if the user is a manager (role = WCMUtil.ROLE_CONTENT_MANAGER), false otherwise

isContentManager

@NotAuditable
boolean isContentManager(java.lang.String wpStoreId,
                                      java.lang.String username)
Returns true if the user is a manager of this web project

Note: This includes admin users but does not include the System user

Parameters:
storeName - web project store id
username - user name
Returns:
boolean true if the user is a manager, false otherwise

isContentManager

@NotAuditable
boolean isContentManager(org.alfresco.service.cmr.repository.NodeRef wpNodeRef,
                                      java.lang.String userName)
Returns true if the user is a manager of this web project

Note: This includes admin users but does not include the System user

Parameters:
wpNodeRef - web project node ref
userName - user name
Returns:
boolean true if the user is a manager (role = WCMUtil.ROLE_CONTENT_MANAGER), false otherwise

listWebUsers

@NotAuditable
java.util.Map listWebUsers(java.lang.String wpStoreId)
List the web users of the web project

Current user must be a content manager for the web project

Parameters:
wpStoreId - web project store id
Returns:
Map map of pairs

listWebUsers

@NotAuditable
java.util.Map listWebUsers(org.alfresco.service.cmr.repository.NodeRef wpNodeRef)
List the web users of the web project

Current user must be a content manager for the web project

Parameters:
wpNodeRef - web project node ref
Returns:
Map map of pairs

getWebUserCount

@NotAuditable
int getWebUserCount(org.alfresco.service.cmr.repository.NodeRef wpNodeRef)
Get the number of web users invited to this web project

Parameters:
wpNodeRef - web project node ref
Returns:
int number of invited web users

getWebUserRole

@NotAuditable
java.lang.String getWebUserRole(java.lang.String wpStoreId,
                                             java.lang.String userName)
Gets the role of the specified user

Parameters:
wpStoreId - web project store id
userName - user name
Returns:
String web project role for this user, null if no assigned role

getWebUserRole

@NotAuditable
java.lang.String getWebUserRole(org.alfresco.service.cmr.repository.NodeRef wpNodeRef,
                                             java.lang.String userName)
Gets the role of the specified user

Parameters:
wpNodeRef - web project node ref
userName - user name
Returns:
String web project role for this user, null if no assigned role

isWebUser

@NotAuditable
boolean isWebUser(java.lang.String wpStoreId)
Indicates whether current user is a web user of the web project or not

Parameters:
store - id web project store id
Returns:
boolean true if the current user is a web user of the web project, false otherwise

isWebUser

@NotAuditable
boolean isWebUser(org.alfresco.service.cmr.repository.NodeRef wpNodeRef)
Indicates whether current user is a web user of the web project or not

Parameters:
wpNodeRef - web project node ref
Returns:
boolean true if the current user is a web user of the web project, false otherwise

isWebUser

@NotAuditable
boolean isWebUser(java.lang.String wpStoreId,
                               java.lang.String userName)
Indicates whether given user is a web user of the web project or not

Parameters:
store - id web project store id
userName - user name
Returns:
boolean true if the user is a web user of the web project, false otherwise

isWebUser

@NotAuditable
boolean isWebUser(org.alfresco.service.cmr.repository.NodeRef wpNodeRef,
                               java.lang.String userName)
Indicates whether given user is a web user of the web project or not

Parameters:
wpNodeRef - web project node ref
userName - user name
Returns:
boolean true if the user is a web user of the web project, false otherwise

inviteWebUsersGroups

@NotAuditable
void inviteWebUsersGroups(java.lang.String wpStoreId,
                                       java.util.Map userGroupRoles)
Invite users/groups to web project

Note: authority name can be user or group, although a group is flattened into a set of users

Note: author sandbox will NOT be auto created for each invited user

Parameters:
wpStoreId - web project store id
userGroupRoles - map of pairs

inviteWebUsersGroups

@NotAuditable
void inviteWebUsersGroups(java.lang.String wpStoreId,
                                       java.util.Map userGroupRoles,
                                       boolean autoCreateAuthorSandbox)
Invite users/groups to web project

Note: authority name can be user or group, although a group is flattened into a set of users

Parameters:
wpStoreId - web project store id
userGroupRoles - map of pairs
autoCreateAuthorSandbox - if true then auto create an author sandbox for each invited user

inviteWebUsersGroups

@NotAuditable
void inviteWebUsersGroups(org.alfresco.service.cmr.repository.NodeRef wpNodeRef,
                                       java.util.Map userGroupRoles,
                                       boolean autoCreateAuthorSandbox)
Invite users/groups to web project

Note: authority name can be user or group, although a group is flattened into a set of users

Parameters:
wpNodeRef - web project node ref
userGroupRoles - map of pairs
autoCreateAuthorSandbox - if true then auto create the author sandbox for each invited user

inviteWebUser

@NotAuditable
void inviteWebUser(java.lang.String wpStoreId,
                                java.lang.String userName,
                                java.lang.String userRole)
Invite user to web project

Note: author sandbox will NOT be auto created for each invited user

Parameters:
wpStoreId - web project store id
userName - user name (not a group)
userRole - web project role

inviteWebUser

@NotAuditable
void inviteWebUser(java.lang.String wpStoreId,
                                java.lang.String userName,
                                java.lang.String userRole,
                                boolean autoCreateAuthorSandbox)
Invite user to web project

Parameters:
wpStoreId - web project store id
userName - user name (not a group)
userRole - web project role
autoCreateAuthorSandbox - if true then auto create the author sandbox for each invited user

inviteWebUser

@NotAuditable
void inviteWebUser(org.alfresco.service.cmr.repository.NodeRef wpNodeRef,
                                java.lang.String userName,
                                java.lang.String userRole,
                                boolean autoCreateAuthorSandbox)
Invite user to web project

Parameters:
wpNodeRef - web project node ref
userName - user name (not a group)
userRole - web project role
autoCreateAuthorSandbox - if true then auto create the author sandbox for each invited user

uninviteWebUser

@NotAuditable
void uninviteWebUser(java.lang.String wpStoreId,
                                  java.lang.String userName)
Uninvite user from a web project

Note: author sandbox will NOT be auto deleted

Parameters:
wpStoreId - web project store id
userName - user name

uninviteWebUser

@NotAuditable
void uninviteWebUser(java.lang.String wpStoreId,
                                  java.lang.String userName,
                                  boolean autoDeleteAuthorSandbox)
Uninvite user from a web project

Note: if author sandbox is auto deleted then this will cascade delete without warning (even if there are changed items)

Parameters:
wpStoreId - web project store id
userName - user name
autoDeleteAuthorSandbox - if true then auto delete the author sandbox

uninviteWebUser

@NotAuditable
void uninviteWebUser(org.alfresco.service.cmr.repository.NodeRef wpNodeRef,
                                  java.lang.String userName,
                                  boolean autoDeleteAuthorSandbox)
Uninvite user from a web project

Note: if author sandbox is auto deleted then this will cascade delete without warning (even if there are changed items)

Parameters:
wpNodeRef - web project node ref
userName - user name
autoDeleteAuthorSandbox - if true then auto delete the author sandbox


Copyright © 2005 - 2010 Alfresco Software, Inc. All Rights Reserved.