Similar to HTTP requests, requests that are made to the Assembler use the paradigm of a request object and a response object. Both of these objects are of type com.endeca.infront.assembler.ContentItem
. There are two subclasses of ContentItem
, depending on the type of content being requested: com.endeca.infront.cartridge.ContentInclude
and com.endeca.infront.cartridge.ContentSlotConfig
.
ContentInclude
is used to request pages defined in the Site Pages section of Experience Manager. Invoking the Assembler for a page request is also referred to as “invoking the Assembler with a ContentInclude
.” The handler for the ContentInclude
component first tries to retrieve the content at the exact URI specified in the ContentInclude
. If there is no content at that location, the handler attempts to find the deepest matching path. For example, assume a browse
page exists in the Experience Manager Site Pages definitions for SiteA
. Passing in a /browse
path for SiteA
will match this browse
page. Passing in a /browse/seo/url
path will also match this page because the deepest matching path that the handler can find for /browse/seo/url
is /browse
(this example assumes that a browse/seo/url
page does not exist in Experience Manager).
ContentSlotConfig
is used to request content from a content folder that has been defined in the Content section of Experience Manager. Invoking the Assembler for a content folder request is also referred to as “invoking the Assembler with a ContentSlot
item.” A content folder request must specify the name of the content folder and the number of items to retrieve from that folder. The handler for ContentSlotConfig
uses these parameters to form a content trigger request that fetches the top item (or items) from the folder by priority. The Assembler then processes the content items from the folder and returns them as part of the response for rendering.
A third class, com.endeca.infront.cartridge.RedirectAwareContentInclude
, also exists. RedirectAwareContentInclude
is a subclass of the ContentInclude
class and it supports requests for configurations that use keyword redirects. The remainder of this chapter makes a distinction between ContentInclude
, ContentSlotConfig
, and RedirectAwareContentInclude
classes when necessary. When the distinction is not required, the more general ContentItem
is used.
Note: For more information on the ContentInclude
, ContentSlotConfig
, and RedirectAwareContentInclude
classes and their associated handler classes, refer to the Oracle Commerce Guided Search Assembler Application Developer’s Guide.