package net.sf.jabref.export.layout.format; import net.sf.jabref.export.layout.LayoutFormatter; /** * A layout formatter that is the composite of the given Formatters executed in * order. * * @author $Author: coezbek $ * @version $Revision: 1748 $ ($Date: 2006-09-03 17:20:38 +0200 (So, 03 Sep 2006) $) * */ public class CompositeFormat implements LayoutFormatter { LayoutFormatter[] formatters; /** * If called with this constructor, this formatter does nothing. */ public CompositeFormat() { // Nothing } public CompositeFormat(LayoutFormatter first, LayoutFormatter second) { formatters = new LayoutFormatter[] { first, second }; } public CompositeFormat(LayoutFormatter[] formatters) { this.formatters = formatters; } public String format(String fieldText) { if (formatters != null) { for (int i = 0; i < formatters.length; i++) { fieldText = formatters[i].format(fieldText); } } return fieldText; } }