mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-06-30 18:15:39 +00:00
12003: ETHREEOH-535: User with Editor role can't edit content 12016: ETHREEOH-864 12018: Fixed NullPointerException during NFS mount. JLAN-51. 12019: Fixed problems in mounting the Alfresco filesystems with NFS. ETHREEOH-913. 12020: Use a default RPC authenticator if not specified in the xml configuration. JLAN-51. 12021: Fixed typo in Portmapper server class name that is loader dynamically. JLAN-52. 12025: MT - fix export/import tenant (ensure tenant admin ops run in tx) 12026: Site service now returns information about the site managers. First part of fix for ETHREEOH-547 12027: Fix for ETHREEOH-664 and ETHREEOH-789. RSS feed issues and authentication errors when trying to retrieve user details via feed service endpoint. 12029: Fix for some wiki page links being highlighted as "missing page" when they're not 12030: ETHREEOH-916 - Unable to "Publish Internally" a newly created blog post 12031: Added logging to thumbnail service to help diagnose ETHREEOH-910 should it occur again 12032: Removed out of date comment on mysql driver 12034: Suppress freemarker.runtime ERROR log messages. These may correspond to exceptions that get handled by Alfresco's retrying transaction handler (e.g. optimistic locking failures) and are only passed on and logged if the retry threshold is exceeded. 12037: Fix for ETHREEOH-901: Radio buttons using a enumeration can not be selected in internet explorer and selecting an option in a drop down menu causes a script error in Internet Explorer 12038: Merged 2.2 to 3.0 12017: Integrated ETWOTWO-926: Inline callouts should be able to reference a web script maintained in the Data Dictionary 12042: Build fix 12043: Fix for ETHREEOH-472 & ETHREEOH-473: File picker restrictions (folder and search) do not work. 12065: New class Alfresco.service.Preferences that makes it easy to add and remove user preferences. 12069: Fix for ETHREEOH-926. Fixed bug webscript matching code when url element containing a dot is followed by further url elements. 12071: Added support to Alfresco.service.Preferences so it can handle hirerchial properties, ie "org.alfresco.share.sites.favourites" 12074: Fix for ETHREEOH-896: XML Form layout is incorrect on Firefox 3 12075: Fix for ETHREEOH-917 - help text for Create Site changed as requested. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@12497 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
183 lines
6.0 KiB
Java
183 lines
6.0 KiB
Java
package org.alfresco.repo.site;
|
|
|
|
import java.io.Serializable;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
|
|
import org.alfresco.service.cmr.repository.NodeRef;
|
|
import org.alfresco.service.namespace.QName;
|
|
|
|
/**
|
|
* Site service fundamental API.
|
|
* <p>
|
|
* This service API is designed to support the public facing Site APIs
|
|
*
|
|
* @author Roy Wetherall
|
|
*/
|
|
public interface SiteService
|
|
{
|
|
/**
|
|
* Create a new site.
|
|
*
|
|
* @param sitePreset site preset name
|
|
* @param shortName site short name, must be unique
|
|
* @param title site title
|
|
* @param description site description
|
|
* @param isPublic whether the site is public or not
|
|
* @return SiteInfo information about the created site
|
|
*/
|
|
SiteInfo createSite(String sitePreset, String shortName, String title, String description, boolean isPublic);
|
|
|
|
/**
|
|
* List the available sites. This list can optionally be filtered by site name and/or site preset.
|
|
*
|
|
* @param nameFilter name filter
|
|
* @param sitePresetFilter site preset filter
|
|
* @return List<SiteInfo> list of site information
|
|
*/
|
|
List<SiteInfo> listSites(String nameFilter, String sitePresetFilter);
|
|
|
|
/**
|
|
* List all the sites that the specified user has a explicit membership to.
|
|
*
|
|
* @param userName user name
|
|
* @return List<SiteInfo> list of site information
|
|
*/
|
|
List<SiteInfo> listSites(String userName);
|
|
|
|
/**
|
|
* Gets site information based on the short name of a site.
|
|
* <p>
|
|
* Returns null if the site can not be found.
|
|
*
|
|
* @param shortName the site short name
|
|
* @return SiteInfo the site information
|
|
*/
|
|
SiteInfo getSite(String shortName);
|
|
|
|
/**
|
|
* Update the site information.
|
|
* <P>
|
|
* Note that the shortname and sitepreset of a site can not be updated once the site has been created.
|
|
*
|
|
* @param siteInfo site information
|
|
*/
|
|
void updateSite(SiteInfo siteInfo);
|
|
|
|
/**
|
|
* Delete the site.
|
|
*
|
|
* @param shortName site short name
|
|
*/
|
|
void deleteSite(String shortName);
|
|
|
|
/**
|
|
* List the memebers of the site.
|
|
* <p>
|
|
* Name and role filters are optional and if not specified all the members of the site are returned.
|
|
*
|
|
* @param shortName site short name
|
|
* @param nameFilter name filter
|
|
* @param roleFilter role filter
|
|
* @return Map<String, String> the username and their role
|
|
*/
|
|
Map<String, String> listMembers(String shortName, String nameFilter, String roleFilter);
|
|
|
|
/**
|
|
* Gets the role of the specified user
|
|
*
|
|
* @param shortName site short name
|
|
* @param userName user name
|
|
* @return String site role, null if none
|
|
*/
|
|
String getMembersRole(String shortName, String userName);
|
|
|
|
/**
|
|
* Inidiactes whether a user is a member of a site or not
|
|
*
|
|
* @param shortName site short name
|
|
* @param userName user name
|
|
* @return boolean true if the user is a member of the site, false otherwise
|
|
*/
|
|
boolean isMember(String shortName, String userName);
|
|
|
|
/**
|
|
* Sets the role of a user withint a site
|
|
*
|
|
* @param shortName site short name
|
|
* @param userName user name
|
|
* @param role site role
|
|
*/
|
|
void setMembership(String shortName, String userName, String role);
|
|
|
|
/**
|
|
* Clears a users role within a site
|
|
*
|
|
* @param shortName site short name
|
|
* @param userName user name
|
|
*/
|
|
void removeMembership(String shortName, String userName);
|
|
|
|
/**
|
|
* Creates a container for a component is a site of the given container type (must be a sub-type of st:siteContainer)
|
|
* <p>
|
|
* If no container type is specified then a node of type st:siteContainer is created.
|
|
* <p>
|
|
* The map of container properties are set on the created container node. Null can be provided when no properties
|
|
* need to be set.
|
|
*
|
|
* @param shortName site short name
|
|
* @param componentId component id
|
|
* @param containerType container type to create (can be null)
|
|
* @param containerProperties container property values (can be null)
|
|
* @return
|
|
*/
|
|
NodeRef createContainer(String shortName, String componentId, QName containerType, Map<QName, Serializable> containerProperties);
|
|
|
|
/**
|
|
* Gets the "container" folder for the specified
|
|
* component.
|
|
*
|
|
* @param shortName short name of site
|
|
* @param componentId component id
|
|
* @param folderType type of folder to create (if null, creates standard folder)
|
|
* @return noderef of container
|
|
*/
|
|
NodeRef getContainer(String shortName, String componentId);
|
|
|
|
/**
|
|
* Determines if a "container" folder for the specified component exists.
|
|
*
|
|
* @param shortName short name of site
|
|
* @param componentId component id
|
|
* @return true => "container" folder exists for component
|
|
*/
|
|
boolean hasContainer(String shortName, String componentId);
|
|
|
|
/**
|
|
* Gets a list of all the currently available roles that a user can perform on a site
|
|
*
|
|
* @return List<String> list of availble roles
|
|
*/
|
|
List<String> getSiteRoles();
|
|
|
|
/**
|
|
* Gets the sites group. All members of the site are contained within this group.
|
|
*
|
|
* @param shortName site short name
|
|
* @return String group name
|
|
*/
|
|
String getSiteGroup(String shortName);
|
|
|
|
/**
|
|
* Gets the sites role group. All members assigned the given role will be memebers of
|
|
* the returned group.
|
|
*
|
|
* @param shortName site short name
|
|
* @param role membership role
|
|
* @return String group name
|
|
*/
|
|
String getSiteRoleGroup(String shortName, String role);
|
|
|
|
}
|