package org.kefirsf.bb.proc; import java.io.IOException; import java.util.Collections; import java.util.List; /** * Code template * * @author Vitaliy Samolovskih aka Kefir */ public class ProcTemplate extends AbstractTemplate { /** * Empty template */ public static final ProcTemplate EMPTY = new ProcTemplate(Collections.<ProcTemplateElement>emptyList()); /** * Create neq template with elements. * * @param elements template elements. */ public ProcTemplate(List<? extends ProcTemplateElement> elements) { super(elements); } /** * Append to result string processed text. * * @param context current context. */ public void generate(Context context) { Appendable target = context.getTarget(); for (ProcTemplateElement element : elements) { try { target.append(element.generate(context)); } catch (IOException e) { // Nothing! Because StringBuilder doesn't catch IOException } } } }