@Override
    public boolean equals(final Object o) {
        if (this == o) {
            return true;
        }
        if (o == null || getClass() != o.getClass()) {
            return false;
        }
        final UiConfig uiConfig = (UiConfig) o;

        return Objects.equals(welcomeHtml, uiConfig.welcomeHtml)
               && Objects.equals(aboutHtml, uiConfig.aboutHtml)
               && Objects.equals(maintenanceMessage, uiConfig.maintenanceMessage)
               && Objects.equals(defaultMaxResults, uiConfig.defaultMaxResults)
               && Objects.equals(process, uiConfig.process)
               && Objects.equals(helpUrl, uiConfig.helpUrl)
               && Objects.equals(helpSubPathJobs, uiConfig.helpSubPathJobs)
               && Objects.equals(helpSubPathQuickFilter, uiConfig.helpSubPathQuickFilter)
               && Objects.equals(helpSubPathProperties, uiConfig.helpSubPathProperties)
               && Objects.equals(helpSubPathExpressions, uiConfig.helpSubPathExpressions)
               && Objects.equals(helpSubPathDocumentation, uiConfig.helpSubPathDocumentation)
               && Objects.equals(theme, uiConfig.theme)
               && Objects.equals(query, uiConfig.query)
               && Objects.equals(namePattern, uiConfig.namePattern)
               && Objects.equals(htmlTitle, uiConfig.htmlTitle)
               && Objects.equals(oncontextmenu, uiConfig.oncontextmenu)
               && Objects.equals(splash, uiConfig.splash)
               && Objects.equals(activity, uiConfig.activity)
               && Objects.equals(source, uiConfig.source)
               && Objects.equals(analyticUiDefaultConfig, uiConfig.analyticUiDefaultConfig)
               && Objects.equals(reportUiDefaultConfig, uiConfig.reportUiDefaultConfig)
               && Objects.equals(nodeMonitoring, uiConfig.nodeMonitoring)
               && Objects.equals(nestedIndexFieldsDelimiterPattern, uiConfig.nestedIndexFieldsDelimiterPattern)
               && Objects.equals(referencePipelineSelectorIncludedTags, uiConfig.referencePipelineSelectorIncludedTags)
               && Objects.equals(defaultApiKeyHashAlgorithm, uiConfig.defaultApiKeyHashAlgorithm)
               && Objects.equals(maxEditorCompletionEntries, uiConfig.maxEditorCompletionEntries);
    }
@return The URL for the Stroom Query Language page in the help site.
stroom-core-shared/src/main/java/stroom/ui/config/shared/UiConfig.java