Package org.apache.maven.doxia.sink

Examples of org.apache.maven.doxia.sink.Sink


    private String doGetTraversedLink( String text, int begin, int end )
        throws AptParseException
    {
        final StringBuilder buffer = new StringBuilder( end - begin );

        Sink linkSink = new SinkAdapter()
        {
            /** {@inheritDoc} */
            public void lineBreak()
            {
                buffer.append( SPACE );
View Full Code Here


        try
        {
            output = new StringWriter();
            reader = getTestReader( file );

            Sink sink = new AptSink( output );
            createParser().parse( reader, sink );
        }
        finally
        {
            IOUtil.close( output );
View Full Code Here

        try
        {
            writer = getTestWriter( "test" );
            reader = getTestReader( "test" );

            Sink sink = new AptSink( writer );

            createParser().parse( reader, sink );
        }
        finally
        {
View Full Code Here

    protected void executeReport(final Locale locale) throws MavenReportException {
        try {
            this.execute(this.outputDirectory, locale);

            Sink kitchenSink = getSink();
            if (kitchenSink != null) {
                kitchenSink.rawText(indexHtmlContent);
            } else {
                writeIndexHtmlFile(outputDirectory, "index.html", indexHtmlContent);
            }
        } catch (Exception e) {
            final MavenReportException ex = new MavenReportException(e.getMessage());
View Full Code Here

    protected void executeReport(final Locale locale) throws MavenReportException {
        try {
            this.execute(this.outputDirectory, locale);

            Sink kitchenSink = getSink();
            if (kitchenSink != null) {
                kitchenSink.rawText(indexHtmlContent);
            } else {
                writeIndexHtmlFile(outputDirectory, "index.html", indexHtmlContent);
            }
        } catch (Exception e) {
            final MavenReportException ex = new MavenReportException(e.getMessage());
View Full Code Here

        sink.close();
    }

    private void constructSummarySection( List /* BuildJob */buildJobs, Locale locale )
    {
        Sink sink = getSink();

        sink.section2();
        sink.sectionTitle2();

        sink.text( getText( locale, "report.invoker.summary.title" ) );

        sink.sectionTitle2_();
        sink.section2_();

        // ------------------------------------------------------------------------
        // Building a table with
        // it number | succes nb | failed nb | Success rate | total time | avg time
        // ------------------------------------------------------------------------

        sink.table();
        sink.tableRow();

        sinkTableHeader( sink, getText( locale, "report.invoker.summary.number" ) );
        sinkTableHeader( sink, getText( locale, "report.invoker.summary.success" ) );
        sinkTableHeader( sink, getText( locale, "report.invoker.summary.failed" ) );
        sinkTableHeader( sink, getText( locale, "report.invoker.summary.success.rate" ) );
        sinkTableHeader( sink, getText( locale, "report.invoker.summary.time.total" ) );
        sinkTableHeader( sink, getText( locale, "report.invoker.summary.time.avg" ) );

        int number = buildJobs.size();
        int success = 0;
        int failed = 0;
        double totalTime = 0;

        for ( Iterator iterator = buildJobs.iterator(); iterator.hasNext(); )
        {
            BuildJob buildJob = (BuildJob) iterator.next();
            if ( BuildJob.Result.SUCCESS.equals( buildJob.getResult() ) )
            {
                success++;
            }
            else if ( !BuildJob.Result.SKIPPED.equals( buildJob.getResult() ) )
            {
                failed++;
            }
            totalTime += buildJob.getTime();
        }

        sink.tableRow_();
        sink.tableRow();

        sinkCell( sink, Integer.toString( number ) );
        sinkCell( sink, Integer.toString( success ) );
        sinkCell( sink, Integer.toString( failed ) );

        if ( success + failed > 0 )
        {
            sinkCell( sink, percentFormat.format( (double) success / ( success + failed ) ) );
        }
        else
        {
            sinkCell( sink, "" );
        }

        sinkCell( sink, secondsFormat.format( totalTime ) );

        sinkCell( sink, secondsFormat.format( totalTime / number ) );

        sink.tableRow_();
        sink.table_();

    }
View Full Code Here

    }

    private void renderBuildJob( BuildJob buildJob, Locale locale )
    {
        Sink sink = getSink();
        sink.tableRow();
        StringBuffer buffer = new StringBuffer();
        if ( !StringUtils.isEmpty( buildJob.getName() ) && !StringUtils.isEmpty( buildJob.getDescription() ) )
        {
            buffer.append( buildJob.getName() );
            buffer.append( " : " );
            buffer.append( buildJob.getDescription() );
        }
        else
        {
            buffer.append( buildJob.getProject() );
        }
        sinkCell( sink, buffer.toString() );
        // FIXME image
        sinkCell( sink, buildJob.getResult() );
        sinkCell( sink, secondsFormat.format( buildJob.getTime() ) );
        sinkCell( sink, buildJob.getFailureMessage() );
        sink.tableRow_();
    }
View Full Code Here

    {
        DecimalFormatSymbols symbols = new DecimalFormatSymbols( locale );
        percentFormat = new DecimalFormat( getText( locale, "report.invoker.format.percent" ), symbols );
        secondsFormat = new DecimalFormat( getText( locale, "report.invoker.format.seconds" ), symbols );

        Sink sink = getSink();

        sink.head();

        sink.title();
        sink.text( getText( locale, "report.invoker.result.title" ) );
        sink.title_();

        sink.head_();

        sink.body();

        sink.section1();
        sink.sectionTitle1();
        sink.text( getText( locale, "report.invoker.result.title" ) );
        sink.sectionTitle1_();
        sink.paragraph();
        sink.text( getText( locale, "report.invoker.result.description" ) );
        sink.paragraph_();
        sink.section1_();

        // ----------------------------------
        //  build buildJob beans
        // ----------------------------------
        File[] reportFiles = ReportUtils.getReportFiles( reportsDirectory );
        if ( reportFiles.length <= 0 )
        {
            getLog().info( "no invoker report files found, skip report generation" );
            return;
        }

        List buildJobs = new ArrayList( reportFiles.length );
        for ( int i = 0, size = reportFiles.length; i < size; i++ )
        {
            File reportFile = reportFiles[i];
            try
            {
                BuildJobXpp3Reader reader = new BuildJobXpp3Reader();
                buildJobs.add( reader.read( ReaderFactory.newXmlReader( reportFile ) ) );
            }
            catch ( XmlPullParserException e )
            {
                throw new MavenReportException( "Failed to parse report file: " + reportFile, e );
            }
            catch ( IOException e )
            {
                throw new MavenReportException( "Failed to read report file: " + reportFile, e );
            }
        }

        // ----------------------------------
        //  summary
        // ----------------------------------
       
        constructSummarySection( buildJobs, locale );
       
        // ----------------------------------
        //  per file/it detail
        // ----------------------------------       

        sink.section2();
        sink.sectionTitle2();

        sink.text( getText( locale, "report.invoker.detail.title" ) );

        sink.sectionTitle2_();

        sink.section2_();

        // detail tests table header
        sink.table();

        sink.tableRow();
        // -------------------------------------------
        // name | Result | time | message
        // -------------------------------------------
        sinkTableHeader( sink, getText( locale, "report.invoker.detail.name" ) );
        sinkTableHeader( sink, getText( locale, "report.invoker.detail.result" ) );
        sinkTableHeader( sink, getText( locale, "report.invoker.detail.time" ) );
        sinkTableHeader( sink, getText( locale, "report.invoker.detail.message" ) );

        sink.tableRow_();

        for ( Iterator iterator = buildJobs.iterator(); iterator.hasNext(); )
        {
            BuildJob buildJob = (BuildJob) iterator.next();
            renderBuildJob( buildJob, locale );
        }

        sink.table_();

        sink.body_();

        sink.flush();
        sink.close();
    }
View Full Code Here

        {
            analysis = analysis.ignoreNonCompile();
        }

        // Step 2: Create sink and bundle
        Sink sink = getSink();
        ResourceBundle bundle = getBundle( locale );

        // Step 3: Generate the report
        AnalyzeReportView analyzethis = new AnalyzeReportView();
        analyzethis.generateReport( analysis, sink, bundle );
View Full Code Here

    protected void executeReport(final Locale locale) throws MavenReportException {
        try {
            this.execute(this.outputDirectory, locale);

            Sink kitchenSink = getSink();
            if (kitchenSink != null) {
                kitchenSink.rawText(indexHtmlContent);
            } else {
                writeIndexHtmlFile(outputDirectory, "index.html", indexHtmlContent);
            }
        } catch (Exception e) {
            final MavenReportException ex = new MavenReportException(e.getMessage());
View Full Code Here

TOP

Related Classes of org.apache.maven.doxia.sink.Sink

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.