From 5c3dff85ca33354bde1b0f92bcb96c4ea2bfc77a Mon Sep 17 00:00:00 2001 From: Andre F de Miranda Date: Sun, 26 Mar 2017 21:42:39 +1100 Subject: [PATCH] NIFI-814 - Introduce hidden header with name of Processor to allow those arriving to site via direct reference to know the name of the processor --- .../html/HtmlDocumentationWriter.java | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-documentation/src/main/java/org/apache/nifi/documentation/html/HtmlDocumentationWriter.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-documentation/src/main/java/org/apache/nifi/documentation/html/HtmlDocumentationWriter.java index 8097ecee79ed..1ecb268978b4 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-documentation/src/main/java/org/apache/nifi/documentation/html/HtmlDocumentationWriter.java +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-documentation/src/main/java/org/apache/nifi/documentation/html/HtmlDocumentationWriter.java @@ -94,8 +94,14 @@ protected void writeHead(final ConfigurableComponent configurableComponent, xmlStreamWriter.writeAttribute("href", "/nifi-docs/css/component-usage.css"); xmlStreamWriter.writeAttribute("type", "text/css"); xmlStreamWriter.writeEndElement(); + xmlStreamWriter.writeEndElement(); + xmlStreamWriter.writeStartElement("script"); + xmlStreamWriter.writeAttribute("type", "text/javascript"); + xmlStreamWriter.writeCharacters("window.onload = function(){if(self==top) { " + + "document.getElementById('nameHeader').style.display = \"inherit\"; } }" ); xmlStreamWriter.writeEndElement(); + } /** @@ -123,6 +129,7 @@ private void writeBody(final ConfigurableComponent configurableComponent, final XMLStreamWriter xmlStreamWriter, final boolean hasAdditionalDetails) throws XMLStreamException { xmlStreamWriter.writeStartElement("body"); + writeHeader(configurableComponent, xmlStreamWriter); writeDescription(configurableComponent, xmlStreamWriter, hasAdditionalDetails); writeTags(configurableComponent, xmlStreamWriter); writeProperties(configurableComponent, xmlStreamWriter); @@ -134,6 +141,23 @@ private void writeBody(final ConfigurableComponent configurableComponent, xmlStreamWriter.writeEndElement(); } + /** + * Write the header to be displayed when loaded outside an iframe. + * + * @param configurableComponent the component to describe + * @param xmlStreamWriter the stream writer to use + * @throws XMLStreamException thrown if there was a problem writing the XML + */ + private void writeHeader(ConfigurableComponent configurableComponent, XMLStreamWriter xmlStreamWriter) + throws XMLStreamException { + xmlStreamWriter.writeStartElement("h1"); + xmlStreamWriter.writeAttribute("id", "nameHeader"); + // Style will be overwritten on load if needed + xmlStreamWriter.writeAttribute("style", "display: none;"); + xmlStreamWriter.writeCharacters(getTitle(configurableComponent)); + xmlStreamWriter.writeEndElement(); + } + /** * Write the description of the Stateful annotation if provided in this component. *