protected Context createSiteTemplateVelocityContext()

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


    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());

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

        String projectTitle = null;
        if (StringUtils.isNotEmpty(siteRenderingContext.getSiteModel().getName())) {
            projectTitle = siteRenderingContext.getSiteModel().getName();
        } else if (StringUtils.isNotEmpty(siteRenderingContext.getDefaultTitle())) {
            projectTitle = siteRenderingContext.getDefaultTitle();
        }

        StringBuilder title = new StringBuilder();
        if (StringUtils.isNotEmpty(shortTitle)) {
            title.append(shortTitle);
        }

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

        if (StringUtils.isNotEmpty(projectTitle)) {
            title.append(projectTitle);
        }

        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 inputPath
        context.put("docRenderingContext", content.getRenderingContext());

        return context;
    }