org.alfresco.wcm.webproject
Interface WebProjectService

All Known Implementing Classes:
WebProjectServiceImpl

@PublicService
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(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, 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, 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(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(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(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
 NodeRef getWebProjectNodeFromPath(java.lang.String absoluteAVMPath)
          Returns the Web Project for the given AVM path
 NodeRef getWebProjectNodeFromStore(java.lang.String storeName)
          Returns the Web Project for the given AVM store name (sandbox store id)
 NodeRef getWebProjectsRoot()
          Returns the Web Projects container
 int getWebUserCount(NodeRef wpNodeRef)
          Get the number of web users invited to this web project
 java.lang.String getWebUserRole(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
 void inviteWebUser(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(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(NodeRef wpNodeRef)
          Returns true if the current user is a manager of this web project
 boolean isContentManager(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(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(NodeRef wpNodeRef)
          Indicates whether current user is a web user of the web project or not
 boolean isWebUser(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(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(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(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

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

WebProjectInfo createWebProject(java.lang.String dnsName,
                                java.lang.String name,
                                java.lang.String title,
                                java.lang.String description,
                                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

WebProjectInfo createWebProject(java.lang.String dnsName,
                                java.lang.String name,
                                java.lang.String title,
                                java.lang.String description,
                                java.lang.String defaultWebApp,
                                boolean useAsTemplate,
                                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

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

getWebProjectsRoot

NodeRef getWebProjectsRoot()
Returns the Web Projects container

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

getWebProjectNodeFromPath

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

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

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

Returns:
List list of web project info

listWebProjects

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

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

boolean isWebProject(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

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

WebProjectInfo getWebProject(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

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

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

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

void deleteWebProject(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

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

void createWebApp(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

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

java.util.List listWebApps(NodeRef wpNodeRef)
List webapps for the web project

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

deleteWebApp

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

void deleteWebApp(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

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

boolean isContentManager(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

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

boolean isContentManager(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

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

java.util.Map listWebUsers(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

int getWebUserCount(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

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

java.lang.String getWebUserRole(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

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

boolean isWebUser(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

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

boolean isWebUser(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

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

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

void inviteWebUsersGroups(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

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

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

void inviteWebUser(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

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

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

void uninviteWebUser(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.