Home
Page ResolutionPage Resolution
A page resolver is used to tell polliwog which hits in the log file(s) should be considered pages and thus added to the statistics.

In general a page is considered to be a page that the user actually views. For example html files. The most common way of identifying pages is via the file extension in the passed in url.

A page resolver is created by implementing the org.polliwog.resolvers.PageResolver interface.

The implementation of the interface can perform whatever tasks is needed to generate the mapping.

polliwog only creates a single instance of the resolver that is then used for the entire log, the instance is intialized by calling the init(org.polliwog.data.VisitorEnvironment) method.

If no page resolver is provided then polliwog will consider all hits to be pages.

The page resolver to use is specified in the properties file by setting property:
pageResolverClass

If the hit is considered to be a page then polliwog set a flag in the Hit class to indicate this, the value of that flag can be retreived by using method: isPage().
Basic Page Resolver
A basic implementation of the page resolver is provided by the org.polliwog.resolvers.BasicPageResolver class. This class uses a xml file to provide the logic to indicate what page should be considered a page.

The format of the xml file is as follows:
Show the help for this table
NameRootChildrenParent(s)AttributesDescription
page-resolverYNONENONENONEThe root element, the content of this element should contain a External site, opens in new window JoSQL WHERE clause that will determine what is a page.
The resolver uses property:
basicPageResolverFile
to define the location of the xml file to use.

Note: the class available to the JoSQL WHERE clause is: org.polliwog.fields.AbstractURIField.

Example
Only consider the specified file extensions to be pages.
<page-resolver>
  pathExtension $IN ('/',
                     'html',
                     'htm',
                     'php',
                     'aspx',
                     'cgi',
                     'mp3',
                     'rm',
                     'pdf',
                     'doc')
</page-resolver>
Example
Only consider the paths specified to be pages, if they have the query parameter.
<page-resolver>
  path $LIKE '/view-page/%'
  AND
  get (parameters, 'ID') != null
</page-resolver>