org.sakaiproject.entitybroker.entityprovider.capabilities
Interface BrowseNestable

All Superinterfaces:
Browseable, EntityProvider

public interface BrowseNestable
extends Browseable

This indicates that this entity will participate in browse functionality for entities and it is nested within another entity: Example:
A blog (parent) contains blog entries (children). When browsing a blog there is a need to be able to select the entries within the blog, the provider for the entry would implement this interface to allow the set of entries to be chosen within the blog
The blog provider would not need to implement anything extra
This is one of the capability extensions for the EntityProvider interface

Author:
Aaron Zeckoski (azeckoski @ gmail.com)

Field Summary
 
Fields inherited from interface org.sakaiproject.entitybroker.entityprovider.capabilities.Browseable
BROWSE_DESC_KEY, BROWSE_TITLE_KEY
 
Method Summary
 List<EntityData> getChildrenEntities(EntityReference parentRef, Search search, String userReference, String associatedReference, Map<String,Object> params)
          Returns the list of entities being browsed which are nested under a parent entity with a given reference
Example: Parent entity is /blog/123, there are 3 entries in this blog, the search limits the return to 2 entities This method should return the first 2 blog entries in the blog with reference /blog/123
 String getParentprefix()
          Defines the parent entity type for this one
 
Methods inherited from interface org.sakaiproject.entitybroker.entityprovider.EntityProvider
getEntityPrefix
 

Method Detail

getParentprefix

String getParentprefix()
Defines the parent entity type for this one

Returns:
the prefix of the entity type which is the parent of this entity type

getChildrenEntities

List<EntityData> getChildrenEntities(EntityReference parentRef,
                                     Search search,
                                     String userReference,
                                     String associatedReference,
                                     Map<String,Object> params)
Returns the list of entities being browsed which are nested under a parent entity with a given reference
Example: Parent entity is /blog/123, there are 3 entries in this blog, the search limits the return to 2 entities This method should return the first 2 blog entries in the blog with reference /blog/123

Parameters:
parentRef - the reference object for the parent entity
search - (optional) a search object which can define the order to return entities, search filters, and total number of entities returned, may be empty but will not be null, implementors are encouraged to support ordering and limiting of the number of returned results at least
userReference - (optional) the unique entity reference for a user which is browsing the results, this may be null to indicate that only items which are visible to all users should be shown
associatedReference - (optional) a globally unique reference to an entity, this is the entity that the returned browseable data must be associated with (e.g. limited by reference to a location/site/group or other associated entity), this may be null to indicate there is no association limit
params - (optional) incoming set of parameters which may be used to send data specific to this request, may be null
Returns:
a list of entity data objects which contain the reference, URL, display title and optionally other entity data
Throws:
SecurityException - if the data cannot be accessed by the current user or is not publicly accessible
IllegalArgumentException - if the reference is invalid or the search is invalid
IllegalStateException - if any other error occurs


Copyright © 2007-2013 Sakai Project. All Rights Reserved.