Please review a moderately simple changeset to convert some HTML builders to be high-level Content blocks instead. The conceptual change is (almost) as simple as making the objects be subtypes of Content, and implementing the `write` method, so that clients can simply add instances to enclosing trees, without having to call .toContent().

This is in line with creating creating additional high-level builders later on that encapsulate code that is currently distributed in many places in the Writer(Impl) classes.

In adding, the Navigation class is moved from the formats.html.markup package (where it is out of place) to the formats..html package (where it better belongs.)  It was intended to also convert this "builder" into a Content block, like the other builders, but this is an unusual builder in that the builder is used to create two similar but different nav bars ... for the top and bottom of the page. This was obscurely indicated by a boolean parameter to Navigation.getContent, which is replaced by using the already-existing enum Navigation.Position { TOP, BOTTOM }.  Various additional cleanup is done on Navigation, but this is not the time to do a more substantial overhaul.

This is all internal cleanup. There is no change to any generated code, and no tests need to be created or updated.

-- Jon


JBS: https://bugs.openjdk.java.net/browse/JDK-8240697
Webrev: http://cr.openjdk.java.net/~jjg/8240697/webrev.00/

Reply via email to