AbstractHtmlOutput implements ReportOutputHandler { protected PentahoNameGenerator createPentahoNameGenerator() { final PentahoNameGenerator dataNameGenerator; dataNameGenerator = PentahoSystem.get( PentahoNameGenerator.class ); if ( dataNameGenerator == null ) { throw new IllegalStateException( Messages.getInstance().getString( "ReportPlugin.errorNameGeneratorMissingConfiguration" ) ); } return dataNameGenerator; } protected  AbstractHtmlOutput( final String contentHandlerPattern ); protected  AbstractHtmlOutput(); void setContentHandlerPattern( final String contentHandlerPattern ); String getContentHandlerPattern(); int generate( final MasterReport report,
                       final int acceptedPage,
                       final OutputStream outputStream,
                       final int yieldRate ); int paginate( final MasterReport report,
                       final int yieldRate ); void close(); boolean supportsPagination(); Object getReportLock();  }
@Test( expected = IllegalStateException.class ) public void invalidConfig() { htmlOutput.createPentahoNameGenerator(); }