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)
    • 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