private String insertText( String pWriterFormatPath, String pWriterFormatSource, SectionSet pSectionSet, PropertySet pPropertySet ) {
try {
// init lexer/parser
StringReader writerFormatReader = new StringReader( pWriterFormatSource );
WriterFormatLexer writerFormatLexer = new WriterFormatLexer( writerFormatReader );
writerFormatLexer.setSectionSet( pSectionSet );
writerFormatLexer.setPropertySet( pPropertySet );
WriterFormatParser writerFormatParser = new WriterFormatParser( writerFormatLexer );
// parse
writerFormatParser.start();
// check for user errors
if( writerFormatLexer.hasParseMessages() ) {
throw ProcessException.CODE_writer_format_parse( makeParseErrorContext( pWriterFormatPath,
writerFormatLexer.getParseMessages() ) );
}
return writerFormatLexer.getCodeWriter();
}
catch( ProcessException pe ) {
throw pe;
}