Projects >> maven-plugins >>78941478b8116399d226a16986d03d246c389555

Chunk
Conflicting content
 * under the License.
 */

<<<<<<< HEAD
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLClassLoader;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.Properties;
import java.util.ResourceBundle;

=======
import com.puppycrawl.tools.checkstyle.Checker;
import com.puppycrawl.tools.checkstyle.ConfigurationLoader;
import com.puppycrawl.tools.checkstyle.DefaultConfiguration;
import com.puppycrawl.tools.checkstyle.DefaultLogger;
import com.puppycrawl.tools.checkstyle.ModuleFactory;
import com.puppycrawl.tools.checkstyle.PackageNamesLoader;
import com.puppycrawl.tools.checkstyle.PropertiesExpander;
import com.puppycrawl.tools.checkstyle.XMLLogger;
import com.puppycrawl.tools.checkstyle.api.AuditListener;
import org.apache.maven.artifact.DependencyResolutionRequiredException;
import com.puppycrawl.tools.checkstyle.api.CheckstyleException;
import com.puppycrawl.tools.checkstyle.api.Configuration;
import com.puppycrawl.tools.checkstyle.api.FilterSet;
import com.puppycrawl.tools.checkstyle.api.SeverityLevel;
import com.puppycrawl.tools.checkstyle.filters.SuppressionsLoader;
>>>>>>> 53d332c3562232decefc7c680464f5a6bd1abcfa
import org.apache.maven.doxia.tools.SiteTool;
import org.apache.maven.model.ReportPlugin;
Solution content
 * under the License.
 */

import com.puppycrawl.tools.checkstyle.Checker;
import com.puppycrawl.tools.checkstyle.ConfigurationLoader;
import com.puppycrawl.tools.checkstyle.DefaultConfiguration;
import com.puppycrawl.tools.checkstyle.DefaultLogger;
import com.puppycrawl.tools.checkstyle.ModuleFactory;
import com.puppycrawl.tools.checkstyle.PackageNamesLoader;
import com.puppycrawl.tools.checkstyle.PropertiesExpander;
import com.puppycrawl.tools.checkstyle.XMLLogger;
import com.puppycrawl.tools.checkstyle.api.AuditListener;
import com.puppycrawl.tools.checkstyle.api.CheckstyleException;
import com.puppycrawl.tools.checkstyle.api.Configuration;
import com.puppycrawl.tools.checkstyle.api.FilterSet;
import com.puppycrawl.tools.checkstyle.api.SeverityLevel;
import com.puppycrawl.tools.checkstyle.filters.SuppressionsLoader;
import org.apache.maven.artifact.DependencyResolutionRequiredException;
import org.apache.maven.doxia.tools.SiteTool;
import org.apache.maven.model.ReportPlugin;
File
CheckstyleReport.java
Developer's decision
Version 2
Kind of conflict
Import
Chunk
Conflicting content
import org.apache.velocity.exception.ResourceNotFoundException;
import org.apache.velocity.exception.VelocityException;
import org.codehaus.doxia.site.renderer.SiteRenderer;
<<<<<<< HEAD
import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
import org.codehaus.plexus.personality.plexus.lifecycle.phase.ServiceLocator;
import org.codehaus.plexus.personality.plexus.lifecycle.phase.Serviceable;
=======
>>>>>>> 53d332c3562232decefc7c680464f5a6bd1abcfa
import org.codehaus.plexus.resource.ResourceManager;
import org.codehaus.plexus.resource.loader.FileResourceCreationException;
import org.codehaus.plexus.resource.loader.FileResourceLoader;
Solution content
import org.apache.velocity.exception.ResourceNotFoundException;
import org.apache.velocity.exception.VelocityException;
import org.codehaus.doxia.site.renderer.SiteRenderer;
import org.codehaus.plexus.resource.ResourceManager;
import org.codehaus.plexus.resource.loader.FileResourceCreationException;
import org.codehaus.plexus.resource.loader.FileResourceLoader;
File
CheckstyleReport.java
Developer's decision
Version 2
Kind of conflict
Import
Chunk
Conflicting content
import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.PathTool;
import org.codehaus.plexus.util.StringInputStream;
<<<<<<< HEAD
import org.codehaus.plexus.util.StringUtils;
import org.codehaus.plexus.velocity.VelocityComponent;

import com.puppycrawl.tools.checkstyle.Checker;
import com.puppycrawl.tools.checkstyle.ConfigurationLoader;
import com.puppycrawl.tools.checkstyle.DefaultConfiguration;
import com.puppycrawl.tools.checkstyle.DefaultLogger;
import com.puppycrawl.tools.checkstyle.PackageNamesLoader;
import com.puppycrawl.tools.checkstyle.PropertiesExpander;
import com.puppycrawl.tools.checkstyle.XMLLogger;
import com.puppycrawl.tools.checkstyle.api.AuditListener;
import com.puppycrawl.tools.checkstyle.api.CheckstyleException;
import com.puppycrawl.tools.checkstyle.api.Configuration;
import com.puppycrawl.tools.checkstyle.api.FilterSet;
import com.puppycrawl.tools.checkstyle.api.SeverityLevel;
import com.puppycrawl.tools.checkstyle.filters.SuppressionsLoader;
=======
import org.codehaus.plexus.util.StringOutputStream;
import org.codehaus.plexus.util.StringUtils;
import org.codehaus.plexus.velocity.VelocityComponent;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLClassLoader;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.Properties;
import java.util.ResourceBundle;
>>>>>>> 53d332c3562232decefc7c680464f5a6bd1abcfa

/**
 * Perform a Checkstyle analysis, and generate a report on violations.
Solution content
/**
import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.PathTool;
import org.codehaus.plexus.util.StringInputStream;
import org.codehaus.plexus.util.StringOutputStream;
import org.codehaus.plexus.util.StringUtils;
import org.codehaus.plexus.velocity.VelocityComponent;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLClassLoader;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.Properties;
import java.util.ResourceBundle;
 * Perform a Checkstyle analysis, and generate a report on violations.
File
CheckstyleReport.java
Developer's decision
Version 2
Kind of conflict
Import
Chunk
Conflicting content
 */
public class CheckstyleReport
    extends AbstractMavenReport
<<<<<<< HEAD
    implements Serviceable
=======
>>>>>>> 53d332c3562232decefc7c680464f5a6bd1abcfa
{
    private static final String PLUGIN_RESOURCES = "org/apache/maven/plugin/checkstyle";
Solution content
 */
public class CheckstyleReport
    extends AbstractMavenReport
{
    private static final String PLUGIN_RESOURCES = "org/apache/maven/plugin/checkstyle";
File
CheckstyleReport.java
Developer's decision
Version 2
Kind of conflict
Other
Chunk
Conflicting content
     * The file encoding to use when reading the source files. If the property project.build.sourceEncoding
     * is not set, the platform default encoding is used. Note: This parameter always overrides the
     * property charset from Checkstyle's TreeWalker module.
<<<<<<< HEAD
     *
=======
     * 
>>>>>>> 53d332c3562232decefc7c680464f5a6bd1abcfa
     * @parameter expression="${encoding}" default-value="${project.build.sourceEncoding}"
     * @since 2.2
     */
Solution content
     * The file encoding to use when reading the source files. If the property project.build.sourceEncoding
     * is not set, the platform default encoding is used. Note: This parameter always overrides the
     * property charset from Checkstyle's TreeWalker module.
     * 
     * @parameter expression="${encoding}" default-value="${project.build.sourceEncoding}"
     * @since 2.2
     */
File
CheckstyleReport.java
Developer's decision
Version 1
Kind of conflict
Comment
Chunk
Conflicting content
    /**
     * Velocity Component.
<<<<<<< HEAD
     */
    // Not declared as @component to fix MCHECKSTYLE-101
    private VelocityComponent velocityComponent;

    /**
     * ServiceLocator used to lookup VelocityComponent
     */
    private ServiceLocator serviceLocator;

    /**
     * {@inheritDoc}
     * 
     * @see org.codehaus.plexus.personality.plexus.lifecycle.phase.Serviceable#service(org.codehaus.plexus.personality.plexus.lifecycle.phase.ServiceLocator)
     */
    public void service( ServiceLocator locator )
    {
        this.serviceLocator = locator;
    }

    private static final File[] EMPTY_FILE_ARRAY = new File[0];

    private ByteArrayOutputStream stringOutputStream;
=======
     *
     * @component role="org.codehaus.plexus.velocity.VelocityComponent"
     * @required
     */
    private VelocityComponent velocityComponent;

    private static final File[] EMPTY_FILE_ARRAY = new File[0];

    private StringOutputStream stringOutputStream;
>>>>>>> 53d332c3562232decefc7c680464f5a6bd1abcfa

    /**
     * @component
Solution content
    /**
     * Velocity Component.
     *
     * @component role="org.codehaus.plexus.velocity.VelocityComponent"
     * @required
     */
    private VelocityComponent velocityComponent;

    private static final File[] EMPTY_FILE_ARRAY = new File[0];

    private StringOutputStream stringOutputStream;

    /**
     * @component
File
CheckstyleReport.java
Developer's decision
Version 2
Kind of conflict
Attribute
Comment
Method declaration
Method invocation
Chunk
Conflicting content
                String configFile = getConfigFile();
                Properties overridingProperties = getOverridingProperties();
<<<<<<< HEAD
                Configuration config;
                CheckstyleResults results;

=======
                ModuleFactory moduleFactory;
                Configuration config;
                CheckstyleResults results;

                moduleFactory = getModuleFactory();

>>>>>>> 53d332c3562232decefc7c680464f5a6bd1abcfa
                config = ConfigurationLoader.loadConfiguration( configFile,
                                                                new PropertiesExpander( overridingProperties ) );
                String effectiveEncoding =
Solution content
                String configFile = getConfigFile();
                Properties overridingProperties = getOverridingProperties();
                ModuleFactory moduleFactory;
                Configuration config;
                CheckstyleResults results;

                moduleFactory = getModuleFactory();

                config = ConfigurationLoader.loadConfiguration( configFile,
                                                                new PropertiesExpander( overridingProperties ) );
                String effectiveEncoding =
File
CheckstyleReport.java
Developer's decision
Version 2
Kind of conflict
Method invocation
Variable
Chunk
Conflicting content
                for ( int i = 0; i < modules.length; i++ )
                {
                    Configuration module = modules[i];
<<<<<<< HEAD
                    if ( "Checker".equals( module.getName() )
                        || "com.puppycrawl.tools.checkstyle.Checker".equals( module.getName() ) )
=======
                    if ( "TreeWalker".equals( module.getName() )
                        || "com.puppycrawl.tools.checkstyle.TreeWalker".equals( module.getName() ) )
>>>>>>> 53d332c3562232decefc7c680464f5a6bd1abcfa
                    {
                        if ( module instanceof DefaultConfiguration )
                        {
Solution content
                for ( int i = 0; i < modules.length; i++ )
                {
                    Configuration module = modules[i];
                    if ( "TreeWalker".equals( module.getName() )
                        || "com.puppycrawl.tools.checkstyle.TreeWalker".equals( module.getName() ) )
                    {
                        if ( module instanceof DefaultConfiguration )
                        {
File
CheckstyleReport.java
Developer's decision
Version 2
Kind of conflict
If statement
Chunk
Conflicting content
                            getLog().warn( "Failed to configure file encoding on module " + module );
                        }
                    }
<<<<<<< HEAD
                    if ("TreeWalker".equals(module.getName())
                        || "com.puppycrawl.tools.checkstyle.TreeWalker".equals(module.getName()))
                    {
                        if (module instanceof DefaultConfiguration)
                        {
                            ((DefaultConfiguration) module).addAttribute("cacheFile", cacheFile);
                        }
                        else
                        {
                            getLog().warn("Failed to configure cache file on module " + module);
                        }
                    }
                }

                results = executeCheckstyle( config );

                ResourceBundle bundle = getBundle( locale );
                generateReportStatics();
                generateMainReport( results, config, bundle );
=======
                }

                results = executeCheckstyle( config, moduleFactory );

                ResourceBundle bundle = getBundle( locale );
                generateReportStatics();
                generateMainReport( results, config, moduleFactory, bundle );
>>>>>>> 53d332c3562232decefc7c680464f5a6bd1abcfa
                if ( enableRSS )
                {
                    generateRSS( results );
Solution content
                            getLog().warn( "Failed to configure file encoding on module " + module );
                        }
                    }
                }

                results = executeCheckstyle( config, moduleFactory );

                ResourceBundle bundle = getBundle( locale );
                generateReportStatics();
                generateMainReport( results, config, moduleFactory, bundle );
                if ( enableRSS )
                {
                    generateRSS( results );
File
CheckstyleReport.java
Developer's decision
Version 2
Kind of conflict
If statement
Method invocation
Variable
Chunk
Conflicting content
    private void generateRSS( CheckstyleResults results )
        throws MavenReportException
    {
<<<<<<< HEAD
        if ( velocityComponent == null )
        {
            try
            {
                velocityComponent = (VelocityComponent) serviceLocator.lookup( VelocityComponent.ROLE );
            }
            catch ( ComponentLookupException e )
            {
                throw new MavenReportException( "Failed to setup Velocity", e );
            }
        }

=======
>>>>>>> 53d332c3562232decefc7c680464f5a6bd1abcfa
        VelocityTemplate vtemplate = new VelocityTemplate( velocityComponent, PLUGIN_RESOURCES );
        vtemplate.setLog( getLog() );
Solution content
    private void generateRSS( CheckstyleResults results )
        throws MavenReportException
    {
        VelocityTemplate vtemplate = new VelocityTemplate( velocityComponent, PLUGIN_RESOURCES );
        vtemplate.setLog( getLog() );
File
CheckstyleReport.java
Developer's decision
Version 2
Kind of conflict
If statement
Chunk
Conflicting content
        return copyright;
    }

<<<<<<< HEAD
    private void generateMainReport( CheckstyleResults results, Configuration config, ResourceBundle bundle )
=======
    private void generateMainReport( CheckstyleResults results, Configuration config, ModuleFactory moduleFactory,
                                     ResourceBundle bundle )
>>>>>>> 53d332c3562232decefc7c680464f5a6bd1abcfa
    {
        CheckstyleReportGenerator generator = new CheckstyleReportGenerator( getSink(), bundle, project.getBasedir(), siteTool );
Solution content
        return copyright;
    }

    private void generateMainReport( CheckstyleResults results, Configuration config, ModuleFactory moduleFactory,
                                     ResourceBundle bundle )
    {
        CheckstyleReportGenerator generator = new CheckstyleReportGenerator( getSink(), bundle, project.getBasedir(), siteTool );
File
CheckstyleReport.java
Developer's decision
Version 2
Kind of conflict
Method signature
Chunk
Conflicting content
        generator.setEnableFilesSummary( enableFilesSummary );
        generator.setEnableRSS( enableRSS );
        generator.setCheckstyleConfig( config );
<<<<<<< HEAD
=======
        generator.setCheckstyleModuleFactory( moduleFactory );
>>>>>>> 53d332c3562232decefc7c680464f5a6bd1abcfa
        if ( linkXRef )
        {
            String relativePath = PathTool.getRelativePath( getOutputDirectory(), xrefLocation.getAbsolutePath() );
Solution content
        generator.setEnableFilesSummary( enableFilesSummary );
        generator.setEnableRSS( enableRSS );
        generator.setCheckstyleConfig( config );
        generator.setCheckstyleModuleFactory( moduleFactory );
        if ( linkXRef )
        {
            String relativePath = PathTool.getRelativePath( getOutputDirectory(), xrefLocation.getAbsolutePath() );
File
CheckstyleReport.java
Developer's decision
Version 2
Kind of conflict
Method invocation
Chunk
Conflicting content
        }
    }

<<<<<<< HEAD
    private CheckstyleResults executeCheckstyle( Configuration config )
=======
    private CheckstyleResults executeCheckstyle( Configuration config, ModuleFactory moduleFactory )
>>>>>>> 53d332c3562232decefc7c680464f5a6bd1abcfa
        throws MavenReportException, CheckstyleException
    {
        File[] files;
Solution content
        }
    }

    private CheckstyleResults executeCheckstyle( Configuration config, ModuleFactory moduleFactory )
        throws MavenReportException, CheckstyleException
    {
        File[] files;
File
CheckstyleReport.java
Developer's decision
Version 2
Kind of conflict
Method signature
Chunk
Conflicting content
        URLClassLoader projectClassLoader = new URLClassLoader( (URL[]) urls.toArray( new URL[urls.size()] ), null );
        checker.setClassloader( projectClassLoader );

<<<<<<< HEAD
        checker.setModuleClassLoader( Thread.currentThread().getContextClassLoader() );
=======
        if ( moduleFactory != null )
        {
            checker.setModuleFactory( moduleFactory );
        }
>>>>>>> 53d332c3562232decefc7c680464f5a6bd1abcfa

        if ( filterSet != null )
        {
Solution content
        URLClassLoader projectClassLoader = new URLClassLoader( (URL[]) urls.toArray( new URL[urls.size()] ), null );
        checker.setClassloader( projectClassLoader );

        if ( moduleFactory != null )
        {
            checker.setModuleFactory( moduleFactory );
        }

        if ( filterSet != null )
        {
File
CheckstyleReport.java
Developer's decision
Version 2
Kind of conflict
If statement
Method invocation
Chunk
Conflicting content
        checker.addListener( sinkListener );

<<<<<<< HEAD
        ArrayList filesList = new ArrayList();
        for (int i = 0; i < files.length; i++) {
            filesList.add(files[i]);
        }
        int nbErrors = checker.process( filesList );
=======
        int nbErrors = checker.process( files );
>>>>>>> 53d332c3562232decefc7c680464f5a6bd1abcfa

        checker.destroy();
Solution content
        checker.addListener( sinkListener );

        int nbErrors = checker.process( files );

        checker.destroy();
File
CheckstyleReport.java
Developer's decision
Version 2
Kind of conflict
For statement
Method invocation
Variable
Chunk
Conflicting content
    }

<<<<<<< HEAD
=======
    private ModuleFactory getModuleFactory()
        throws CheckstyleException
    {
        // default to internal module factory.
        ModuleFactory moduleFactory = PackageNamesLoader.loadModuleFactory( Thread.currentThread()
            .getContextClassLoader() );

        try
        {
            // attempt to locate any specified package file.
            File packageNamesFile = locator.resolveLocation( packageNamesLocation, "checkstyle-packages.xml" );

            if ( packageNamesFile != null )
            {
                // load resolved location.
                moduleFactory = PackageNamesLoader.loadModuleFactory( packageNamesFile.getAbsolutePath() );
            }
        }
        catch ( IOException e )
        {
            getLog().error( "Unable to process package names location: " + packageNamesLocation, e );
        }
        return moduleFactory;
    }

>>>>>>> 53d332c3562232decefc7c680464f5a6bd1abcfa
    private String getSuppressionLocation()
        throws MavenReportException
    {
Solution content
    }

    private ModuleFactory getModuleFactory()
        throws CheckstyleException
    {
        // default to internal module factory.
        ModuleFactory moduleFactory = PackageNamesLoader.loadModuleFactory( Thread.currentThread()
            .getContextClassLoader() );

        try
        {
            // attempt to locate any specified package file.
            File packageNamesFile = locator.resolveLocation( packageNamesLocation, "checkstyle-packages.xml" );

            if ( packageNamesFile != null )
            {
                // load resolved location.
                moduleFactory = PackageNamesLoader.loadModuleFactory( packageNamesFile.getAbsolutePath() );
            }
        }
        catch ( IOException e )
        {
            getLog().error( "Unable to process package names location: " + packageNamesLocation, e );
        }
        return moduleFactory;
    }

    private String getSuppressionLocation()
        throws MavenReportException
    {
File
CheckstyleReport.java
Developer's decision
Version 2
Kind of conflict
Method declaration
Chunk
Conflicting content
        if ( useFile == null )
        {
<<<<<<< HEAD
            stringOutputStream = new ByteArrayOutputStream();
=======
            stringOutputStream = new StringOutputStream();
>>>>>>> 53d332c3562232decefc7c680464f5a6bd1abcfa
            consoleListener = new DefaultLogger( stringOutputStream, false );
        }
        else
Solution content
        if ( useFile == null )
        {
            stringOutputStream = new StringOutputStream();
            consoleListener = new DefaultLogger( stringOutputStream, false );
        }
        else
File
CheckstyleReport.java
Developer's decision
Version 2
Kind of conflict
Attribute
Method invocation
Chunk
Conflicting content
        else
        {
            OutputStream out = getOutputStream( useFile );
<<<<<<< HEAD
=======

>>>>>>> 53d332c3562232decefc7c680464f5a6bd1abcfa
            consoleListener = new DefaultLogger( out, true );
        }
Solution content
        else
        {
            OutputStream out = getOutputStream( useFile );

            consoleListener = new DefaultLogger( out, true );
        }
File
CheckstyleReport.java
Developer's decision
Version 1
Kind of conflict
Blank