package org.basex.build; import static org.basex.util.Token.*; import java.io.IOException; import org.basex.io.IO; /** * This class defines an abstract parser for single documents. * * @author BaseX Team 2005-12, BSD License * @author Christian Gruen */ public abstract class SingleParser extends TargetParser { /** Builder reference. */ public Builder builder; /** * Constructor. * @param source document source * @param path target path */ protected SingleParser(final IO source, final String path) { super(source, path); } @Override public final void parse(final Builder build) throws IOException { builder = build; builder.startDoc(token(trg + src.name())); parse(); builder.endDoc(); } /** * Parses the current file. * @throws IOException I/O exception */ protected abstract void parse() throws IOException; }