The "RenderSystem" interface in RSF allows customization of the mapping between RSF components and the target XML dialect, performed during the IKAT rendering process. The "business methods" of RenderSystem (sans comments) are as follows:
public interface RenderSystem { ... public int renderComponent(UIComponent torender, XMLLump[] lumps, int lumpindex, PrintOutputStream pos); public void normalizeRequestMap(Map requestparams); }
The RenderSystem will only be invoked by IKAT on leaf components that are expected to peer with a tag discovered in the template, or else with no component, specifying that this tag is expected to be the target of a static rewrite rule.
Other responsibilities of the RenderSystem are "normalization" of the request map, and returning an XML/HTML declaration suitable to be sent to the target environment (read - browsers) without causing them to barf. This may differ from the template declaration, since the template may have to satisfy a higher decree of XML-compliance to satisfy the editing and processing tools used on it.
The only implementation currently provided with IKAT is the Basic HTML RenderSystem.