package org.jbake.render; import org.apache.commons.configuration.CompositeConfiguration; import org.jbake.app.ConfigUtil; import org.jbake.app.ConfigUtil.Keys; import org.jbake.app.ContentStore; import org.jbake.app.Renderer; import org.jbake.template.RenderingException; import java.io.File; public class IndexRenderer implements RenderingTool { @Override public int render(Renderer renderer, ContentStore db, File destination, File templatesPath, CompositeConfiguration config) throws RenderingException { if (config.getBoolean(Keys.RENDER_INDEX)) { try { if (shouldPaginateIndex(config)) { renderer.renderIndexPaging(config.getString(Keys.INDEX_FILE)); } else { renderer.renderIndex(config.getString(Keys.INDEX_FILE)); } return 1; } catch (Exception e) { throw new RenderingException(e); } } else { return 0; } } private boolean shouldPaginateIndex(CompositeConfiguration config) { return config.containsKey(Keys.PAGINATE_INDEX) && config.getBoolean(Keys.PAGINATE_INDEX); } }