The ParsoidHandler base class and the HtmlOutputRendererHelper class serve similar purposes. Historically, the were written independently of each other, HtmlOutputrendererHelperas part of core's /v1/page endpoint, and ParsoidHandler as a base class for REST handlers in the parsoid extension. Now that ParsoidHandler has been moved into core, the two classes should be consolidated. This will change the behavior of ParsoidHandler in some ways. In particular, it will:
- Make use of ParserCache
- Emit an ETag that will (eventually, per T310464) allow the client to make use of stashed data in later requests.
Note that once the parsoid extension has been updated to make use of core's version of the ParsoidHandler class (T310467), this change will affect the v3/page endpoints in the parsoid extension, which are currently still used by RESTbase. Care must be taken to avoid disruption of RESTbase operation.