public void addFooter() throws IOException {
  requestAndResponse.print("\n<script type=\"application/json\" class=\"metaDataDictJson\">\n{\n");
  final StringBuilder result=new StringBuilder();
  boolean addedAnyYet=false;
  for (  final KeyAndValue keyAndValue : metaData) {
    addedAnyYet=JsonBuilder.addPropertyToJsonString(result,keyAndValue.value,addedAnyYet,keyAndValue.key);
  }
  requestAndResponse.print(result.toString());
  requestAndResponse.print("\n}\n</script>\n");
  if (!getNoTitle()) {
    requestAndResponse.print("<div class=\"dragNsPane\" onmousedown=\"paneResizeOnMouseDown(event);\"></div>" + "<div class=\"dragEwPane\" onmousedown=\"paneResizeOnMouseDown(event);\"><div class=\"dragDiagPane\"></div></div>");
  }
  requestAndResponse.print("</div></div></div></div>");
  final boolean onlyContent=getNoHeader();
  if (!onlyContent) {
    if (!requestAndResponse.skipFooter) {
      requestAndResponse.print("</div><div id=\"top\"></div><div id=\"bottom\"></div>");
      requestAndResponse.print("<div id=\"overlay\"></div>\n");
      stashRequestUser(requestAndResponse);
      requestAndResponse.print("\n<script type=\"application/json\" id=\"optionsDictJson\">\n");
      requestAndResponse.print(requestAndResponse.userOptions);
      requestAndResponse.print("\n</script>\n");
      requestAndResponse.print("\n<script type=\"application/json\" id=\"sessionDictJson\">{\n");
      if (httpsProxiedPort != null) {
        requestAndResponse.print("\"httpsPort\":" + httpsProxiedPort.intValue() + ",");
      }
 else       if (httpsPort != null) {
        requestAndResponse.print("\"httpsPort\":" + httpsPort.intValue() + ",");
      }
      requestAndResponse.print("\"isSignedIn\":" + isUserSignedIn(requestAndResponse));
      requestAndResponse.print("\n}</script>\n");
      final boolean isForPageRefresh=getIsForPageRefresh();
      if (!isForPageRefresh) {
        requestAndResponse.print("<script type=\"text/javascript\">\n" + "maybeCallFinish();\n" + "</script>\n");
        requestAndResponse.print("</body>" + "</html>");
      }
    }
  }
}

public void addFooter ( ) throws IOException { requestAndResponse . print ( "\n<script type=\"application/json\" class=\"metaDataDictJson\">\n{\n" ) ; final StringBuilder result = new StringBuilder ( ) ; boolean addedAnyYet = false ; for ( final KeyAndValue keyAndValue : metaData ) { addedAnyYet = JsonBuilder . addPropertyToJsonString ( result , keyAndValue . value , addedAnyYet , keyAndValue . key ) ; } requestAndResponse . print ( result . toString ( ) ) ; requestAndResponse . print ( "\n}\n</script>\n" ) ; if ( ! getNoTitle ( ) ) { requestAndResponse . print ( "<div class=\"dragNsPane\" onmousedown=\"paneResizeOnMouseDown(event);\"></div>" + "<div class=\"dragEwPane\" onmousedown=\"paneResizeOnMouseDown(event);\"><div class=\"dragDiagPane\"></div></div>" ) ; } requestAndResponse . print ( "</div></div></div></div>" ) ; final boolean onlyContent = getNoHeader ( ) ; if ( ! onlyContent ) { if ( ! requestAndResponse . skipFooter ) { requestAndResponse . print ( "</div><div id=\"top\"></div><div id=\"bottom\"></div>" ) ; requestAndResponse . print ( "<div id=\"overlay\"></div>\n" ) ; stashRequestUser ( requestAndResponse ) ; requestAndResponse . print ( "\n<script type=\"application/json\" id=\"optionsDictJson\">\n" ) ; requestAndResponse . print ( requestAndResponse . userOptions ) ; requestAndResponse . print ( "\n</script>\n" ) ; requestAndResponse . print ( "\n<script type=\"application/json\" id=\"sessionDictJson\">{\n" ) ; if ( httpsProxiedPort != null ) { requestAndResponse . print ( "\"httpsPort\":" + httpsProxiedPort . intValue ( ) + "," ) ; } else if ( httpsPort != null ) { requestAndResponse . print ( "\"httpsPort\":" + httpsPort . intValue ( ) + "," ) ; } requestAndResponse . print ( "\"isSignedIn\":" + isUserSignedIn ( requestAndResponse ) ) ; requestAndResponse . print ( "\n}</script>\n" ) ; final boolean isForPageRefresh = getIsForPageRefresh ( ) ; if ( ! isForPageRefresh ) { requestAndResponse . print ( "<script type=\"text/javascript\">\n" + "maybeCallFinish();\n" + "</script>\n" ) ; requestAndResponse . print ( "</body>" + "</html>" ) ; } } } }
appends an html footer to a response .
