siteInfos = this.siteService.listSites(nameFilter, sitePresetFilter);
+ return listSites(nameFilter, sitePresetFilter, 0);
+ }
+
+ /**
+ * List the sites available in the repository. The returned list can optionally be filtered by name and site
+ * preset.
+ *
+ * If no filters are specified then all the available sites are returned.
+ *
+ * @param nameFilter name filter
+ * @param sitePresetFilter site preset filter
+ * @param size max results size crop if >0
+ *
+ * @return Site[] a list of the site filtered as appropriate
+ */
+ public Site[] listSites(String nameFilter, String sitePresetFilter, int size)
+ {
+ List siteInfos = this.siteService.listSites(nameFilter, sitePresetFilter, size);
List sites = new ArrayList(siteInfos.size());
for (SiteInfo siteInfo : siteInfos)
{
sites.add(new Site(siteInfo, this.serviceRegistry, this.siteService, getScope()));
}
return (Site[])sites.toArray(new Site[sites.size()]);
- }
+ }
/**
* List all the sites that the specified user has an explicit membership to.
diff --git a/source/java/org/alfresco/service/cmr/site/SiteService.java b/source/java/org/alfresco/service/cmr/site/SiteService.java
index a5e812c70b..b925e1712a 100644
--- a/source/java/org/alfresco/service/cmr/site/SiteService.java
+++ b/source/java/org/alfresco/service/cmr/site/SiteService.java
@@ -41,6 +41,16 @@ public interface SiteService
*/
SiteInfo createSite(String sitePreset, String shortName, String title, String description, SiteVisibility visibility);
+ /**
+ * 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
+ * @param size list maximum size or zero for all
+ * @return List list of site information
+ */
+ List listSites(String nameFilter, String sitePresetFilter, int size);
+
/**
* List the available sites. This list can optionally be filtered by site name and/or site preset.
*