|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.springframework.extensions.surf.util.AbstractLifecycleBean
org.alfresco.repo.site.SiteServiceImpl
public class SiteServiceImpl
Site Service Implementation. Also bootstraps the site AVM and DM stores.
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface org.alfresco.repo.policy.Policy |
---|
Policy.Arg |
Field Summary | |
---|---|
static org.alfresco.service.cmr.repository.StoreRef |
SITE_STORE
The DM store where site's are kept |
Fields inherited from class org.springframework.extensions.surf.util.AbstractLifecycleBean |
---|
log |
Fields inherited from interface org.alfresco.service.cmr.site.SiteService |
---|
DOCUMENT_LIBRARY |
Fields inherited from interface org.alfresco.repo.site.SiteModel |
---|
ASPECT_SITE_CONTAINER, PROP_COMPONENT_ID, PROP_SITE_PRESET, PROP_SITE_VISIBILITY, SITE_COLLABORATOR, SITE_CONSUMER, SITE_CONTRIBUTOR, SITE_CUSTOM_PROPERTY_PREFIX, SITE_CUSTOM_PROPERTY_URL, SITE_MANAGER, SITE_MODEL_PREFIX, SITE_MODEL_URL, STANDARD_PERMISSIONS, TYPE_SITE, TYPE_SITES |
Fields inherited from interface org.alfresco.repo.node.NodeServicePolicies.OnRestoreNodePolicy |
---|
QNAME |
Fields inherited from interface org.alfresco.repo.policy.Policy |
---|
NAMESPACE |
Constructor Summary | |
---|---|
SiteServiceImpl()
|
Method Summary | |
---|---|
void |
cleanSitePermissions(org.alfresco.service.cmr.repository.NodeRef targetNode,
SiteInfo containingSite)
This method recursively cleans the site permissions on the specified NodeRef and all its primary descendants. |
org.alfresco.service.cmr.repository.NodeRef |
createContainer(java.lang.String shortName,
java.lang.String componentId,
org.alfresco.service.namespace.QName containerType,
java.util.Map containerProperties)
Creates a container for a component is a site of the given container type (must be a sub-type of st:siteContainer) |
SiteInfo |
createSite(java.lang.String sitePreset,
java.lang.String passedShortName,
java.lang.String title,
java.lang.String description,
boolean isPublic)
Create a new site. |
SiteInfo |
createSite(java.lang.String sitePreset,
java.lang.String passedShortName,
java.lang.String title,
java.lang.String description,
SiteVisibility visibility)
Create a new site. |
SiteInfo |
createSite(java.lang.String sitePreset,
java.lang.String passedShortName,
java.lang.String title,
java.lang.String description,
SiteVisibility visibility,
org.alfresco.service.namespace.QName siteType)
Create a new site. |
void |
deleteSite(java.lang.String shortName)
Delete the site. |
java.util.List |
findSites(java.lang.String filter,
java.lang.String sitePresetFilter,
int size)
This method will find all sites available to the currently authenticated user based on
the specified site filter, site preset filter and result set size. |
org.alfresco.service.cmr.repository.NodeRef |
getContainer(java.lang.String shortName,
java.lang.String componentId)
Gets the "container" folder for the specified component. |
java.lang.String |
getMembersRole(java.lang.String shortName,
java.lang.String authorityName)
Gets the role of the specified user. |
java.util.List |
getMembersRoles(java.lang.String shortName,
java.lang.String authorityName)
|
java.util.Comparator |
getRoleComparator()
|
SiteInfo |
getSite(org.alfresco.service.cmr.repository.NodeRef nodeRef)
This method gets the SiteInfo for the Share Site which contains the given NodeRef. |
SiteInfo |
getSite(java.lang.String shortName)
Gets site information based on the short name of a site. |
static org.alfresco.service.cmr.repository.NodeRef |
getSiteContainer(java.lang.String siteShortName,
java.lang.String componentName,
boolean create,
SiteService siteService,
TransactionService transactionService,
TaggingService taggingService)
Helper method to create a container if missing, and mark it as a tag scope if it isn't already one |
java.lang.String |
getSiteGroup(java.lang.String shortName)
Gets the sites group. |
java.lang.String |
getSiteGroup(java.lang.String shortName,
boolean withGroupPrefix)
Helper method to get the name of the site group |
java.lang.String |
getSiteRoleGroup(java.lang.String shortName,
java.lang.String role)
Gets the sites role group. |
java.lang.String |
getSiteRoleGroup(java.lang.String shortName,
java.lang.String permission,
boolean withGroupPrefix)
Helper method to get the name of the site permission group |
java.util.List |
getSiteRoles()
Gets a list of all the currently available roles that a user can perform on all sites |
java.util.List |
getSiteRoles(org.alfresco.service.namespace.QName type)
|
java.util.List |
getSiteRoles(java.lang.String shortName)
Gets a list of all the currently available roles that a user can perform on a specific site. |
org.alfresco.service.cmr.repository.NodeRef |
getSiteRoot()
Get the node reference that is the site root |
boolean |
hasContainer(java.lang.String shortName,
java.lang.String componentId)
Determines if a "container" folder for the specified component exists. |
boolean |
hasCreateSitePermissions()
This method checks if the currently authenticated user has permission to create sites. |
void |
init()
Checks that all necessary properties and services have been provided. |
boolean |
isMember(java.lang.String shortName,
java.lang.String authorityName)
Indicates whether an authority is a member of a site or not |
java.util.Map |
listMembers(java.lang.String shortName,
java.lang.String nameFilter,
java.lang.String roleFilter,
int size)
List the members of the site. |
java.util.Map |
listMembers(java.lang.String shortName,
java.lang.String nameFilter,
java.lang.String roleFilter,
int size,
boolean collapseGroups)
List the members of the site. |
org.alfresco.query.PagingResults |
listSites(java.util.List filterProps,
java.util.List sortProps,
org.alfresco.query.PagingRequest pagingRequest)
This method uses canned queries to retrieve st:site NodeRefs
with support for result paging . |
java.util.List |
listSites(java.lang.String userName)
List all the sites that the specified user has a explicit membership to. |
java.util.List |
listSites(java.lang.String userName,
int size)
List all the sites that the specified user has a explicit membership to. |
java.util.List |
listSites(java.lang.String nameFilter,
java.lang.String sitePresetFilter)
List the available sites. |
java.util.List |
listSites(java.lang.String filter,
java.lang.String sitePresetFilter,
int size)
List the available sites. |
protected void |
onBootstrap(org.springframework.context.ApplicationEvent event)
|
void |
onRestoreNode(org.alfresco.service.cmr.repository.ChildAssociationRef childAssocRef)
Called after an archived node is restored. |
protected void |
onShutdown(org.springframework.context.ApplicationEvent event)
|
void |
removeMembership(java.lang.String shortName,
java.lang.String authorityName)
Clears an authorities role within a site |
void |
setActivityService(ActivityService activityService)
Set activity service |
void |
setAuthenticationContext(AuthenticationContext authenticationContext)
Set authentication component |
void |
setAuthorityService(AuthorityService authorityService)
Set the authority service |
void |
setBehaviourFilter(BehaviourFilter behaviourFilter)
|
void |
setCannedQueryRegistry(org.alfresco.util.registry.NamedObjectRegistry cannedQueryRegistry)
Set the registry of canned queries |
void |
setDictionaryService(org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService)
Set the dictionary service |
void |
setDirectNodeService(org.alfresco.service.cmr.repository.NodeService directNodeService)
Set the unprotected node service |
void |
setFileFolderService(FileFolderService fileFolderService)
Set file folder service |
void |
setMembership(java.lang.String shortName,
java.lang.String authorityName,
java.lang.String role)
Sets the role of an authority within a site |
void |
setNamespaceService(org.alfresco.service.namespace.NamespaceService namespaceService)
Set Namespace service |
void |
setNodeService(org.alfresco.service.cmr.repository.NodeService nodeService)
Set node service |
void |
setPermissionService(org.alfresco.service.cmr.security.PermissionService permissionService)
Set permission service |
void |
setPersonService(PersonService personService)
Set person service |
void |
setPolicyComponent(PolicyComponent policyComponent)
|
void |
setRoleComparator(java.util.Comparator roleComparator)
|
void |
setSearchService(org.alfresco.service.cmr.search.SearchService searchService)
Set search service |
void |
setSitesPermissionsCleaner(SitesPermissionCleaner sitesPermissionsCleaner)
|
void |
setSitesXPath(java.lang.String sitesXPath)
Set the path to the location of the sites root folder. |
void |
setSysAdminParams(SysAdminParams sysAdminParams)
|
void |
setTaggingService(TaggingService taggingService)
Set the tagging service |
void |
setTenantAdminService(TenantAdminService tenantAdminService)
Sets the tenant admin service |
void |
setTenantService(org.alfresco.repo.tenant.TenantService tenantService)
Set the tenant service |
void |
setTransactionHelper(RetryingTransactionHelper retryingTransactionHelper)
Sets helper that provides transaction callbacks |
void |
updateSite(SiteInfo siteInfo)
Update the site information. |
Methods inherited from class org.springframework.extensions.surf.util.AbstractLifecycleBean |
---|
getApplicationContext, onApplicationEvent, setApplicationContext |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final org.alfresco.service.cmr.repository.StoreRef SITE_STORE
Constructor Detail |
---|
public SiteServiceImpl()
Method Detail |
---|
public void setSitesXPath(java.lang.String sitesXPath)
./app:company_home/st:sites
sitesXPath
- a valid XPathpublic void setNodeService(org.alfresco.service.cmr.repository.NodeService nodeService)
public void setDirectNodeService(org.alfresco.service.cmr.repository.NodeService directNodeService)
public void setFileFolderService(FileFolderService fileFolderService)
public void setSearchService(org.alfresco.service.cmr.search.SearchService searchService)
public void setNamespaceService(org.alfresco.service.namespace.NamespaceService namespaceService)
public void setPermissionService(org.alfresco.service.cmr.security.PermissionService permissionService)
public void setActivityService(ActivityService activityService)
public void setPersonService(PersonService personService)
public void setAuthenticationContext(AuthenticationContext authenticationContext)
public void setTaggingService(TaggingService taggingService)
public void setAuthorityService(AuthorityService authorityService)
public void setDictionaryService(org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService)
dictionaryService
- dictionary servicepublic void setTenantService(org.alfresco.repo.tenant.TenantService tenantService)
tenantService
- tenant servicepublic void setTenantAdminService(TenantAdminService tenantAdminService)
public void setTransactionHelper(RetryingTransactionHelper retryingTransactionHelper)
public void setPolicyComponent(PolicyComponent policyComponent)
public void setRoleComparator(java.util.Comparator roleComparator)
public void setSysAdminParams(SysAdminParams sysAdminParams)
public void setBehaviourFilter(BehaviourFilter behaviourFilter)
public void setSitesPermissionsCleaner(SitesPermissionCleaner sitesPermissionsCleaner)
public void setCannedQueryRegistry(org.alfresco.util.registry.NamedObjectRegistry cannedQueryRegistry)
canned queries
public java.util.Comparator getRoleComparator()
public void init()
protected void onBootstrap(org.springframework.context.ApplicationEvent event)
onBootstrap
in class org.springframework.extensions.surf.util.AbstractLifecycleBean
protected void onShutdown(org.springframework.context.ApplicationEvent event)
onShutdown
in class org.springframework.extensions.surf.util.AbstractLifecycleBean
public boolean hasCreateSitePermissions()
SiteService
hasCreateSitePermissions
in interface SiteService
true
if current user can create sites, else false
.public SiteInfo createSite(java.lang.String sitePreset, java.lang.String passedShortName, java.lang.String title, java.lang.String description, boolean isPublic)
SiteService
createSite
in interface SiteService
sitePreset
- site preset namepassedShortName
- site short name, must be uniquetitle
- site titledescription
- site descriptionisPublic
- whether the site is public or not (true = public, false = private)
SiteService.createSite(java.lang.String, java.lang.String, java.lang.String, java.lang.String, boolean)
public SiteInfo createSite(java.lang.String sitePreset, java.lang.String passedShortName, java.lang.String title, java.lang.String description, SiteVisibility visibility)
SiteService
createSite
in interface SiteService
sitePreset
- site preset namepassedShortName
- site short name, must be uniquetitle
- site titledescription
- site descriptionvisibility
- site visibility (public|moderated|private)
SiteService.createSite(java.lang.String, java.lang.String, java.lang.String, java.lang.String, boolean)
public SiteInfo createSite(java.lang.String sitePreset, java.lang.String passedShortName, java.lang.String title, java.lang.String description, SiteVisibility visibility, org.alfresco.service.namespace.QName siteType)
SiteService
createSite
in interface SiteService
sitePreset
- site preset namepassedShortName
- site short name, must be uniquetitle
- site titledescription
- site descriptionvisibility
- site visibility (public|moderated|private)siteType
- type of site to create, must be a sub-type of st:site
public java.lang.String getSiteGroup(java.lang.String shortName)
SiteService
getSiteGroup
in interface SiteService
shortName
- site short name
SiteService.getSiteGroup(java.lang.String)
public java.lang.String getSiteRoleGroup(java.lang.String shortName, java.lang.String role)
SiteService
getSiteRoleGroup
in interface SiteService
shortName
- site short namerole
- membership role
SiteService.getSiteRoleGroup(java.lang.String,
java.lang.String)
public java.lang.String getSiteGroup(java.lang.String shortName, boolean withGroupPrefix)
shortName
- site short name
public java.lang.String getSiteRoleGroup(java.lang.String shortName, java.lang.String permission, boolean withGroupPrefix)
shortName
- site short namepermission
- permission namewithGroupPrefix
- - should the name have the GROUP_ prefix?
public org.alfresco.service.cmr.repository.NodeRef getSiteRoot()
getSiteRoot
in interface SiteServiceInternal
getSiteRoot
in interface SiteService
public java.util.List findSites(java.lang.String filter, java.lang.String sitePresetFilter, int size)
SiteService
sites
available to the currently authenticated user based on
the specified site filter, site preset filter and result set size.
The filter parameter will match any sites whose cm:name
, cm:title
or cm:description
contain the specified string (ignoring case).
Note that this method uses Alfresco Full Text Search to retrieve results
and depending on server Lucene, SOLR configuration may only offer eventually consistent results.
findSites
in interface SiteService
filter
- Any supplied filter will be wrapped in asterisks (e.g. '*foo*') and used to match the sites' cm:name, cm:title or cm:description.sitePresetFilter
- a site preset filter name to match against.size
- this parameter specifies a maximum result set size.
public java.util.List listSites(java.lang.String nameFilter, java.lang.String sitePresetFilter)
SiteService
cm:name
or
cm:title
or cm:description
start with
the specified string (ignoring case). The listing of sites whose cm:names (or titles or descriptions) contain the
specified string is no longer supported. To retrieve sites whose cm:names etc contain a substring, SiteService.findSites(String, String, int)
should be used instead.
listSites
in interface SiteService
nameFilter
- filtersitePresetFilter
- site preset filter
SiteService.listSites(java.lang.String, java.lang.String)
public java.util.List listSites(java.lang.String filter, java.lang.String sitePresetFilter, int size)
SiteService
cm:name
or
cm:title
or cm:description
start with
the specified string (ignoring case). The listing of sites whose cm:names (or titles or descriptions) contain the
specified string is no longer supported. To retrieve sites whose cm:names etc contain a substring, SiteService.findSites(String, String, int)
should be used instead.
listSites
in interface SiteService
filter
- filter (sites whose cm:name, cm:title or cm:description START WITH filter)sitePresetFilter
- site preset filter (sites whose preset EQUALS sitePresetFilter)size
- list maximum size or zero for all
SiteService.listSites(java.lang.String, java.lang.String, int)
public java.util.List listSites(java.lang.String userName)
SiteService
listSites
in interface SiteService
userName
- user name
public java.util.List listSites(java.lang.String userName, int size)
SiteService
listSites
in interface SiteService
userName
- user namesize
- list maximum size or zero for all
SiteService.listSites(java.lang.String, int)
public org.alfresco.query.PagingResults listSites(java.util.List filterProps, java.util.List sortProps, org.alfresco.query.PagingRequest pagingRequest)
canned queries
to retrieve st:site
NodeRefs
with support for result paging
.
listSites
in interface SiteService
filterProps
- property filterssortProps
- sorting optionspagingRequest
- paging options
public SiteInfo getSite(java.lang.String shortName)
SiteService
Returns null if the site can not be found.
getSite
in interface SiteService
shortName
- the site short name
SiteService.getSite(java.lang.String)
public SiteInfo getSite(org.alfresco.service.cmr.repository.NodeRef nodeRef)
SiteService
SiteInfo
for the Share Site which contains the given NodeRef.
If the given NodeRef is not contained within a Share Site, then null
is returned.
getSite
in interface SiteService
nodeRef
- the node whose containing site's info is to be found.
null
if node is not in a site.SiteService.getSite(org.alfresco.service.cmr.repository.NodeRef)
public void updateSite(SiteInfo siteInfo)
SiteService
Note that the short name and site preset of a site can not be updated once the site has been created.
updateSite
in interface SiteService
siteInfo
- site informationSiteService.updateSite(org.alfresco.service.cmr.site.SiteInfo)
public void deleteSite(java.lang.String shortName)
SiteService
deleteSite
in interface SiteService
shortName
- site short nameSiteService.deleteSite(java.lang.String)
public void onRestoreNode(org.alfresco.service.cmr.repository.ChildAssociationRef childAssocRef)
NodeServicePolicies.OnRestoreNodePolicy
onRestoreNode
in interface NodeServicePolicies.OnRestoreNodePolicy
childAssocRef
- the newly created child association referenceNodeServicePolicies.OnRestoreNodePolicy.onRestoreNode(org.alfresco.service.cmr.repository.ChildAssociationRef)
public java.util.Map listMembers(java.lang.String shortName, java.lang.String nameFilter, java.lang.String roleFilter, int size)
SiteService
Name and role filters are optional and if not specified all the members of the site are returned.
listMembers
in interface SiteService
shortName
- site short namenameFilter
- name filterroleFilter
- role filtersize
- max results size crop if >0
SiteService.listMembers(java.lang.String, java.lang.String, java.lang.String, int)
public java.util.Map listMembers(java.lang.String shortName, java.lang.String nameFilter, java.lang.String roleFilter, int size, boolean collapseGroups)
SiteService
listMembers
in interface SiteService
shortName
- site short namenameFilter
- name filterroleFilter
- role filtersize
- max results size crop if >0collapseGroups
- true if collapse member groups into user list, false otherwise
SiteService.listMembers(String, String, String, int, boolean)
public java.lang.String getMembersRole(java.lang.String shortName, java.lang.String authorityName)
SiteService
getMembersRole
in interface SiteService
shortName
- site short nameauthorityName
- full authority name (so if it's a group then its prefixed with 'GROUP_')
SiteService.getMembersRole(java.lang.String,
java.lang.String)
public java.util.List getMembersRoles(java.lang.String shortName, java.lang.String authorityName)
public java.util.List getSiteRoles()
SiteService
getSiteRoles
in interface SiteService
SiteService.getSiteRoles()
public java.util.List getSiteRoles(java.lang.String shortName)
SiteService
SiteService.getSiteRoles()
if your site is of a custom type.
getSiteRoles
in interface SiteService
SiteService.getSiteRoles(String)
public java.util.List getSiteRoles(org.alfresco.service.namespace.QName type)
SiteService.getSiteRoles()
,
SiteService.getSiteRoles(String)
public boolean isMember(java.lang.String shortName, java.lang.String authorityName)
SiteService
isMember
in interface SiteService
shortName
- site short nameauthorityName
- authority name (so if it's a group then its prefixed with 'GROUP_')
SiteService.isMember(java.lang.String, java.lang.String)
public void removeMembership(java.lang.String shortName, java.lang.String authorityName)
SiteService
removeMembership
in interface SiteService
shortName
- site short nameauthorityName
- authority name (so if it's a group then its prefixed with 'GROUP_')SiteService.removeMembership(java.lang.String, java.lang.String)
public void setMembership(java.lang.String shortName, java.lang.String authorityName, java.lang.String role)
SiteService
setMembership
in interface SiteService
shortName
- site short nameauthorityName
- authority name (so if it's a group then its prefixed with 'GROUP_')role
- site roleSiteService.setMembership(java.lang.String,
java.lang.String, java.lang.String)
public org.alfresco.service.cmr.repository.NodeRef createContainer(java.lang.String shortName, java.lang.String componentId, org.alfresco.service.namespace.QName containerType, java.util.Map containerProperties)
SiteService
If no container type is specified then a node of type st:siteContainer is created.
The map of container properties are set on the created container node. Null can be provided when no properties need to be set.
createContainer
in interface SiteService
shortName
- site short namecomponentId
- component idcontainerType
- container type to create (can be null)containerProperties
- container property values (can be null)
SiteService.createContainer(java.lang.String,
java.lang.String, org.alfresco.service.namespace.QName,
java.util.Map)
public void cleanSitePermissions(org.alfresco.service.cmr.repository.NodeRef targetNode, SiteInfo containingSite)
null
then the targetNode's current containing site is used.
cleanSitePermissions
in interface SiteService
targetNode
- containingSite
- the site which the site is a member of. If null
, it will be calculated.public org.alfresco.service.cmr.repository.NodeRef getContainer(java.lang.String shortName, java.lang.String componentId)
SiteService
getContainer
in interface SiteService
shortName
- short name of sitecomponentId
- component id
org.alfresco.service.cmr.site.SiteService#getContainer(java.lang.String)
public boolean hasContainer(java.lang.String shortName, java.lang.String componentId)
SiteService
hasContainer
in interface SiteService
shortName
- short name of sitecomponentId
- component id
org.alfresco.service.cmr.site.SiteService#hasContainer(java.lang.String)
public static org.alfresco.service.cmr.repository.NodeRef getSiteContainer(java.lang.String siteShortName, java.lang.String componentName, boolean create, SiteService siteService, TransactionService transactionService, TaggingService taggingService)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |