The Jetspeed Profiler is a portal resource location rule-based engine. As of Jetspeed version 2.0, the profiler locates the following kinds of portal resources:
The profiler works hand in hand with the Site and Page Manager components. The profiler takes runtime information as input, generalized that information into
A ProfilingRule defines a list of criteria used when evaluating a request to determine the location of a specific resource. Profiling rules are used by the profiler to generically locate portal resources based on the decoupled criteria for known portlet request data. A rule consists of an ordered list of criteria which should be applied in a given order. Following this rule's order, the profiling engine applies each criteria of the rulusing a less-specific algorithm until the least specific resource criterion is considered. When all criteria are exhausted, the rule will fail and a fallback resource will be required.
RuleCriteria are templates for locating profile properties. The default implementation has a profiling policy defined in this proposal based on resource-specific URLs, Mime-Types and language preferences. More complex implementations will need to use other inputs in mapping to resources such as Cookies, IP Address Ranges, Statistical Resource Usage Analysis, Business Rules inside of servlets or EJBs,...
Resolver | Description | Example |
---|---|---|
request | resolve by matching to a request parameter name | |
session | resolve by matching to a session attribute name | |
request.session | resolve by matching to a request attribute name first, then matching to a session attribute name | |
hard.coded | resolve with a hard.coded value | |
group.role.user | fallback controller: search for resource under folders of the current users group, then role, then users own folder | |
user | match resources in the current user directory | |
group | ||
role | ||
mediatype | match media type in the request context | |
country | ||
user.agent | ||
language | ||
roles | Role Fallback | |
path | ||
page | ||
path.session | ||
user.attribute | ||
navigation | change the current navigation path |
Profile Locators are used to locate profiled portal resources such as pages, documents, and fragments. A locator contains properties describing the actually resource to be located. Since the locator is based on properties that are usually related to a user or other subject's profile, it is referred to as a profile locator.