foxy.proxy.filter
This package represents the implementation of the several
transformation-(or filter-, respectively)actions of
the system.
The meaning and usage of the factory-class defined in this package
(ProxyFilterFactory) is similar to the one in the transformer-package
(see section 2.3.2).
It is also implemented as singleton-class.
The virtual machine parameter, which is responsible for the definition
of the class's implementation is named foxy.proxy.filter.ProxyFilterFactory
and its default value is by default set to the name of the default filter-factory-class
(foxy.proxy.filter.DefaultFilterFactory).
The ProxyFilter-interface (and its default implementation - DefaultProxyFilter) provides several
functions, such as filterXSL(..), filterXQuery(..) or filterSearchAndReplace(..)
for converting data, which return a byte-array of the transformed content.
By overwriting the default factory- and filter-class (called DefaultProxyFilter),
one can implement these functionalities by her own.
The structure of these classes is presented in figure 2.11.
Figure 2.11:
Important classes/interfaces of package foxy.proxy.filter
 |
In addition to the common filter-classes, the package contains one class that
supports the completion of more complex transformations, called HTMLNodeVisitor:
HTMLNodeVisitor
This class performs page-splitting and process-partitioning
tasks, respectively. It is inherited from the HTMLParser's-package (see section 2.2.2)
NodeVisitor-class, which can be loosely compared to the functionality
of a common SAX XML-parser's ContentHandler.
When parsing an HTML-page, the parser decides (by given parameters and
special group- and subgroup-tags embedded in the HTML-code) which
parts of a page are left out.
The remaining HTML-data is then delivered back to the client. When splitting
large documents into smaller pieces, it is also possible to add different headers and
footers to these pieces.
The transformation-rule responsible for this process is called layoutPage,
and is described further in the configuration-section (see refConfiguration)
root
2006-05-22