protected Context createSiteTemplateVelocityContext()

in doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java [525:566]


    protected Context createSiteTemplateVelocityContext(
            DocumentContent content, SiteRenderingContext siteRenderingContext) {
        // first get the context from document
        Context context = createDocumentVelocityContext(content.getRenderingContext(), siteRenderingContext);

        // then add data objects from rendered document

        // Add infos from document
        context.put("authors", content.getAuthors());

        context.put("shortTitle", content.getTitle());

        // DOXIASITETOOLS-70: Prepend the project name to the title, if any
        StringBuilder title = new StringBuilder();
        if (siteRenderingContext.getSiteModel() != null
                && StringUtils.isNotEmpty(siteRenderingContext.getSiteModel().getName())) {
            title.append(siteRenderingContext.getSiteModel().getName());
        } else if (StringUtils.isNotEmpty(siteRenderingContext.getDefaultTitle())) {
            title.append(siteRenderingContext.getDefaultTitle());
        }

        if (title.length() > 0 && StringUtils.isNotEmpty(content.getTitle())) {
            title.append(" \u2013 "); // Symbol Name: En Dash
        }
        if (StringUtils.isNotEmpty(content.getTitle())) {
            title.append(content.getTitle());
        }

        context.put("title", title.length() > 0 ? title.toString() : null);

        context.put("headContent", content.getHead());

        context.put("bodyContent", content.getBody());

        // document date (got from Doxia Sink date() API)
        context.put("documentDate", content.getDate());

        // document rendering context, to get eventual inputName
        context.put("docRenderingContext", content.getRenderingContext());

        return context;
    }