org.nuiton.license.plugin
Class AddThirdPartyFilePlugin

java.lang.Object
  extended by org.apache.maven.plugin.AbstractMojo
      extended by org.nuiton.plugin.AbstractPlugin
          extended by org.nuiton.license.plugin.AddThirdPartyFilePlugin
All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo, org.nuiton.plugin.Plugin

public class AddThirdPartyFilePlugin
extends org.nuiton.plugin.AbstractPlugin

Le goal pour copier le fichier THIRD-PARTY.txt (contenant les licenses de toutes les dependances du projet) dans le classpath (et le generer s'il n'existe pas).

Author:
chemit
Is defined by the goal name:
add-third-party
Is bound to the specified phase of the standard build lifecycle:
generate-resources
Requires the dependencies in this specified scope:
test
Requires a Maven project to run:
true

Nested Class Summary
protected  class AddThirdPartyFilePlugin.LicenseMap
           
 
Nested classes/interfaces inherited from interface org.nuiton.plugin.Plugin
org.nuiton.plugin.Plugin.Packaging
 
Field Summary
protected  org.apache.maven.artifact.metadata.ArtifactMetadataSource artifactMetadataSource
          Artifact metadata source component.
protected  org.apache.maven.artifact.resolver.ArtifactCollector collector
          Artifact collector component.
protected  boolean copyToMETA_INF
          Un flag pour farie une copie nommé dans META-INF (prefixe avec le nom de l'artifact).
protected  org.apache.maven.shared.dependency.tree.DependencyTreeBuilder dependencyTreeBuilder
          Dependency tree builder component.
protected  java.lang.String encoding
          Encoding a utiliser pour lire et ecrire les fichiers.
protected  org.apache.maven.artifact.factory.ArtifactFactory factory
          Artifact Factory component.
protected  boolean force
          Un flag pour forcer la generation.
protected  boolean keepBackup
          Un flag pour conserver un backup des fichiers modifies.
protected  org.apache.maven.artifact.repository.ArtifactRepository localRepository
          Local Repository.
protected  org.apache.maven.project.MavenProjectBuilder mavenProjectBuilder
          Maven Project Builder component.
protected  java.io.File outputDirectory
          Repertoire de sortie des classes (classpath).
protected  org.apache.maven.project.MavenProject project
          Dependance du projet.
protected  java.util.List<?> remoteRepositories
          Remote repositories used for the project.
protected  java.io.File thirdPartyFile
           
protected  java.lang.String thirdPartyFileContent
          content of third party file (only computed if force is active or the thirdPartyFile does not exist, or is not up-to-date.
protected  java.lang.String thirdPartyFilename
          Fichier ou ecrire les licences des dependances.
protected  boolean verbose
          Un flag pour activer le mode verbeux.
 
Fields inherited from class org.nuiton.plugin.AbstractPlugin
skipAfterInitMessage
 
Fields inherited from interface org.apache.maven.plugin.Mojo
ROLE
 
Constructor Summary
AddThirdPartyFilePlugin()
           
 
Method Summary
protected  java.lang.String buildGroupedLicenses(AddThirdPartyFilePlugin.LicenseMap licenseMap)
           
protected  void buildLicenseMap(org.apache.maven.shared.dependency.tree.DependencyNode node, AddThirdPartyFilePlugin.LicenseMap licenseMap)
           
protected  boolean checkPackaging()
           
protected  void doAction()
           
protected  java.lang.String getArtifactName(org.apache.maven.project.MavenProject artifactProject)
           
protected  org.apache.maven.project.MavenProject getMavenProjectFromRepository(org.apache.maven.artifact.Artifact artifact)
          Get the Maven project from the repository depending the Artifact given.
 org.apache.maven.project.MavenProject getProject()
           
protected  boolean init()
           
 boolean isVerbose()
           
protected  org.apache.maven.shared.dependency.tree.DependencyNode resolveProject()
           
 void setProject(org.apache.maven.project.MavenProject project)
           
 void setVerbose(boolean verbose)
           
 
Methods inherited from class org.nuiton.plugin.AbstractPlugin
acceptPackaging, addCompileSourceRoots, addResourceDir, addTestCompileSourceRoots, addTestResourceDir, checkResource, copyFile, execute, getFilesToTreate, getFilesToTreateForRoots, getTemplate, initClassLoader, isFileNewerThanPomFile, rejectPackaging, removeCompileSourceRoots, removeTestCompileSourceRoots, writeFile
 
Methods inherited from class org.apache.maven.plugin.AbstractMojo
getLog, getPluginContext, setLog, setPluginContext
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.maven.plugin.Mojo
getLog, setLog
 

Field Detail

project

protected org.apache.maven.project.MavenProject project
Dependance du projet.

Since:
1.0.0
Is defined by:
default-value:
${project}
Is readonly.
Is required.

thirdPartyFilename

protected java.lang.String thirdPartyFilename
Fichier ou ecrire les licences des dependances.

Since:
1.0.0
Is defined by:
expression:
${helper.thirdPartyFilename}
default-value:
THIRD-PARTY.txt
Is required.

outputDirectory

protected java.io.File outputDirectory
Repertoire de sortie des classes (classpath).

Since:
1.0.0
Is defined by:
expression:
${helper.outputDirectory}
default-value:
target/generated-sources/resources
Is required.

encoding

protected java.lang.String encoding
Encoding a utiliser pour lire et ecrire les fichiers.

Since:
1.0.0
Is defined by:
expression:
${helper.encoding}
default-value:
${project.build.sourceEncoding}
Is required.

force

protected boolean force
Un flag pour forcer la generation.

Since:
1.0.0
Is defined by:
expression:
${helper.force}
default-value:
false

keepBackup

protected boolean keepBackup
Un flag pour conserver un backup des fichiers modifies.

Since:
1.0.0
Is defined by:
expression:
${helper.keepBackup}
default-value:
false

copyToMETA_INF

protected boolean copyToMETA_INF
Un flag pour farie une copie nommé dans META-INF (prefixe avec le nom de l'artifact).

Since:
1.0.0
Is defined by:
expression:
${helper.copyToMETA_INF}
default-value:
false

verbose

protected boolean verbose
Un flag pour activer le mode verbeux.

Since:
1.0.0
Is defined by:
expression:
${helper.verbose}
default-value:
${maven.verbose}

localRepository

protected org.apache.maven.artifact.repository.ArtifactRepository localRepository
Local Repository.

Since:
1.0.0
Is defined by:
expression:
${localRepository}
Is readonly.
Is required.

remoteRepositories

protected java.util.List<?> remoteRepositories
Remote repositories used for the project.

Since:
1.0.0
Is defined by:
expression:
${project.remoteArtifactRepositories}
Is readonly.
Is required.

dependencyTreeBuilder

protected org.apache.maven.shared.dependency.tree.DependencyTreeBuilder dependencyTreeBuilder
Dependency tree builder component.

Is a Plexus component defined by:

factory

protected org.apache.maven.artifact.factory.ArtifactFactory factory
Artifact Factory component.

Is a Plexus component defined by:

artifactMetadataSource

protected org.apache.maven.artifact.metadata.ArtifactMetadataSource artifactMetadataSource
Artifact metadata source component.

Is a Plexus component defined by:

collector

protected org.apache.maven.artifact.resolver.ArtifactCollector collector
Artifact collector component.

Is a Plexus component defined by:

mavenProjectBuilder

protected org.apache.maven.project.MavenProjectBuilder mavenProjectBuilder
Maven Project Builder component.

Is a Plexus component defined by:

thirdPartyFileContent

protected java.lang.String thirdPartyFileContent
content of third party file (only computed if force is active or the thirdPartyFile does not exist, or is not up-to-date.


thirdPartyFile

protected java.io.File thirdPartyFile
Constructor Detail

AddThirdPartyFilePlugin

public AddThirdPartyFilePlugin()
Method Detail

checkPackaging

protected boolean checkPackaging()
Overrides:
checkPackaging in class org.nuiton.plugin.AbstractPlugin

init

protected boolean init()
                throws java.lang.Exception
Specified by:
init in class org.nuiton.plugin.AbstractPlugin
Throws:
java.lang.Exception

doAction

protected void doAction()
                 throws java.lang.Exception
Specified by:
doAction in class org.nuiton.plugin.AbstractPlugin
Throws:
java.lang.Exception

resolveProject

protected org.apache.maven.shared.dependency.tree.DependencyNode resolveProject()
Returns:
resolve the dependency tree

buildLicenseMap

protected void buildLicenseMap(org.apache.maven.shared.dependency.tree.DependencyNode node,
                               AddThirdPartyFilePlugin.LicenseMap licenseMap)

buildGroupedLicenses

protected java.lang.String buildGroupedLicenses(AddThirdPartyFilePlugin.LicenseMap licenseMap)

getArtifactName

protected java.lang.String getArtifactName(org.apache.maven.project.MavenProject artifactProject)

getMavenProjectFromRepository

protected org.apache.maven.project.MavenProject getMavenProjectFromRepository(org.apache.maven.artifact.Artifact artifact)
                                                                       throws org.apache.maven.project.ProjectBuildingException
Get the Maven project from the repository depending the Artifact given.

Parameters:
artifact - an artifact
Returns:
the Maven project for the given artifact
Throws:
org.apache.maven.project.ProjectBuildingException - if any

isVerbose

public boolean isVerbose()

setVerbose

public void setVerbose(boolean verbose)

getProject

public org.apache.maven.project.MavenProject getProject()

setProject

public void setProject(org.apache.maven.project.MavenProject project)


Copyright © 2008-2009 CodeLutin. All Rights Reserved.