package folioxml.export; import folioxml.config.ExportLocations; import folioxml.config.InfobaseConfig; import folioxml.config.InfobaseSet; import folioxml.core.InvalidMarkupException; import folioxml.slx.ISlxTokenReader; import folioxml.slx.SlxRecord; import folioxml.xml.XmlRecord; import java.io.IOException; public interface InfobaseSetPlugin { void beginInfobaseSet(InfobaseSet set, ExportLocations export, LogStreamProvider log) throws IOException, InvalidMarkupException; void beginInfobase(InfobaseConfig infobase) throws IOException; ISlxTokenReader wrapSlxReader(ISlxTokenReader reader); void onSlxRecordParsed(SlxRecord clean_slx) throws InvalidMarkupException, IOException; void onRecordTransformed(XmlRecord xr, SlxRecord dirty_slx) throws InvalidMarkupException, IOException; FileNode assignFileNode(XmlRecord xr, SlxRecord dirty_slx) throws InvalidMarkupException, IOException; void onRecordComplete(XmlRecord xr, FileNode file) throws InvalidMarkupException, IOException; void endInfobase(InfobaseConfig infobase) throws IOException, InvalidMarkupException; void endInfobaseSet(InfobaseSet set) throws IOException, InvalidMarkupException; }