Refactor code to re-use maven-obr-plugin utility methods
git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@615731 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrDeploy.java b/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrDeploy.java
index 83a847d..ec76b6d 100644
--- a/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrDeploy.java
+++ b/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrDeploy.java
@@ -24,11 +24,10 @@
import java.io.FileWriter;
import java.io.IOException;
import java.io.Writer;
-import java.util.List;
+import java.net.URI;
import org.apache.maven.artifact.manager.WagonManager;
import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.model.Resource;
import org.apache.maven.plugin.AbstractMojo;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.MojoFailureException;
@@ -128,22 +127,12 @@
ArtifactRepository ar = m_project.getDistributionManagementArtifactRepository();
// locate the obr.xml file
- String obrXmlFile = null;
- List l = m_project.getResources();
- for ( int i = 0; i < l.size(); i++ )
- {
- File f = new File( ( ( Resource ) l.get( i ) ).getDirectory() + File.separator + "obr.xml" );
- if ( f.exists() )
- {
- obrXmlFile = ( ( Resource ) l.get( i ) ).getDirectory() + File.separator + "obr.xml";
- break;
- }
- }
+ URI obrXml = ObrUtils.findObrXml( m_project.getResources() );
// the obr.xml file is not present
- if ( obrXmlFile == null )
+ if ( null == obrXml )
{
- getLog().warn( "obr.xml is not present, use default" );
+ getLog().info( "obr.xml is not present, use default" );
}
File repoDescriptorFile = null;
@@ -305,7 +294,7 @@
file = new PathFile( "file:/" + repoDescriptorFile.getAbsolutePath() );
- ObrUpdate obrUpdate = new ObrUpdate( file, obrXmlFile, m_project, m_fileInLocalRepo, PathFile
+ ObrUpdate obrUpdate = new ObrUpdate( file, obrXml, m_project, m_fileInLocalRepo, PathFile
.uniformSeparator( m_settings.getLocalRepository() ), userConfig, getLog() );
obrUpdate.updateRepository();
diff --git a/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrDeployFile.java b/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrDeployFile.java
index 2f7f6b5..31dd639 100644
--- a/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrDeployFile.java
+++ b/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrDeployFile.java
@@ -24,6 +24,7 @@
import java.io.FileWriter;
import java.io.IOException;
import java.io.Writer;
+import java.net.URI;
import org.apache.maven.artifact.manager.WagonManager;
import org.apache.maven.artifact.repository.ArtifactRepository;
@@ -120,10 +121,10 @@
ArtifactRepository ar = m_project.getDistributionManagementArtifactRepository();
// locate the obr.xml file
- PathFile fileObrXml = new PathFile( m_obrFile );
- if ( !fileObrXml.isExists() )
+ URI obrXml = ObrUtils.toFileURI( m_obrFile );
+ if ( null == obrXml )
{
- getLog().warn( "obr.xml file not found, use default" );
+ getLog().info( "obr.xml is not present, use default" );
}
File repoDescriptorFile = null;
@@ -285,8 +286,8 @@
file = new PathFile( "file:/" + repoDescriptorFile.getAbsolutePath() );
- ObrUpdate obrUpdate = new ObrUpdate( file, fileObrXml.getOnlyAbsoluteFilename(), m_project, m_fileInLocalRepo,
- PathFile.uniformSeparator( m_settings.getLocalRepository() ), userConfig, getLog() );
+ ObrUpdate obrUpdate = new ObrUpdate( file, obrXml, m_project, m_fileInLocalRepo, PathFile
+ .uniformSeparator( m_settings.getLocalRepository() ), userConfig, getLog() );
obrUpdate.updateRepository();
diff --git a/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrInstall.java b/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrInstall.java
index bce9414..f31855d 100644
--- a/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrInstall.java
+++ b/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrInstall.java
@@ -20,10 +20,9 @@
import java.io.File;
-import java.util.List;
+import java.net.URI;
import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.model.Resource;
import org.apache.maven.plugin.AbstractMojo;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.project.MavenProject;
@@ -106,7 +105,7 @@
if ( m_repositoryPath == null )
{
m_repositoryPath = "file:/" + m_localRepo.getBasedir() + File.separator + "repository.xml";
- getLog().warn( "-DpathRepo is not define, use default repository: " + m_repositoryPath );
+ getLog().info( "-Drepository-path is not set, using default repository: " + m_repositoryPath );
}
PathFile file = new PathFile( m_repositoryPath );
@@ -119,21 +118,12 @@
}
// locate the obr.xml file
- String obrXmlFile = null;
- List l = m_project.getResources();
- for ( int i = 0; i < l.size(); i++ )
- {
- File f = new File( ( ( Resource ) l.get( i ) ).getDirectory() + File.separator + "obr.xml" );
- if ( f.exists() )
- {
- obrXmlFile = ( ( Resource ) l.get( i ) ).getDirectory() + File.separator + "obr.xml";
- break;
- }
- }
+ URI obrXml = ObrUtils.findObrXml( m_project.getResources() );
+
// the obr.xml file is not present
- if ( obrXmlFile == null )
+ if ( null == obrXml )
{
- getLog().warn( "obr.xml is not present, use default" );
+ getLog().info( "obr.xml is not present, use default" );
}
// get the path to local maven repository
@@ -173,9 +163,9 @@
Config user = new Config();
getLog().debug( "Maven2 Local File repository = " + fileRepo.getAbsoluteFilename() );
- getLog().debug( "OBR repository = " + obrXmlFile );
+ getLog().debug( "OBR repository = " + obrXml );
- ObrUpdate obrUpdate = new ObrUpdate( fileRepo, obrXmlFile, m_project, m_fileInLocalRepo, PathFile
+ ObrUpdate obrUpdate = new ObrUpdate( fileRepo, obrXml, m_project, m_fileInLocalRepo, PathFile
.uniformSeparator( m_settings.getLocalRepository() ), user, getLog() );
try
{
diff --git a/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrInstallFile.java b/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrInstallFile.java
index 1ef7a78..4d1638a 100644
--- a/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrInstallFile.java
+++ b/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrInstallFile.java
@@ -20,6 +20,7 @@
import java.io.File;
+import java.net.URI;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.plugin.AbstractMojo;
@@ -112,8 +113,6 @@
*/
public void execute() throws MojoExecutionException, MojoFailureException
{
- getLog().info( "Install-File Obr starts:" );
-
m_project = new MavenProject();
m_project.setArtifactId( m_artifactId );
m_project.setGroupId( m_groupId );
@@ -164,7 +163,7 @@
if ( m_repositoryPath == null )
{
m_repositoryPath = "file:" + repoLocal.getOnlyAbsoluteFilename() + "repository.xml";
- getLog().warn( "-DpathRepo is not define, use default repository: " + m_repositoryPath );
+ getLog().info( "-Drepository-path is not set, using default repository: " + m_repositoryPath );
}
PathFile fileRepo = new PathFile( m_repositoryPath );
@@ -180,17 +179,17 @@
fileRepo.createPath();
}
- PathFile fileObrXml = new PathFile( m_obrFile );
- if ( !fileObrXml.isExists() )
+ URI obrXml = ObrUtils.toFileURI( m_obrFile );
+ if ( null == obrXml )
{
- getLog().warn( "obr.xml file not found, use default" );
+ getLog().info( "obr.xml is not present, use default" );
}
// build the user config
Config userConfig = new Config();
- ObrUpdate obrUpdate = new ObrUpdate( fileRepo, fileObrXml.getOnlyAbsoluteFilename(), m_project, fileOut
- .getOnlyAbsoluteFilename(), m_localRepo.getBasedir(), userConfig, getLog() );
+ ObrUpdate obrUpdate = new ObrUpdate( fileRepo, obrXml, m_project, fileOut.getOnlyAbsoluteFilename(),
+ m_localRepo.getBasedir(), userConfig, getLog() );
obrUpdate.updateRepository();
}
diff --git a/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrUpdate.java b/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrUpdate.java
index cbc9389..468b956 100644
--- a/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrUpdate.java
+++ b/maven-obr-plugin/src/main/java/org/apache/felix/obr/plugin/ObrUpdate.java
@@ -122,13 +122,13 @@
* @param userConfig user information
* @param logger plugin logger
*/
- public ObrUpdate( PathFile repositoryXml, String obrXml, MavenProject project, String bundlePath,
+ public ObrUpdate( PathFile repositoryXml, URI obrXml, MavenProject project, String bundlePath,
String mavenRepositoryPath, Config userConfig, Log logger )
{
// m_localRepo = localRepo;
m_bundlePath = ObrUtils.toFileURI( bundlePath );
m_repositoryXml = repositoryXml.getFile().toURI(); // FIXME: remove when PathFile is gone
- m_obrXml = ObrUtils.toFileURI( obrXml );
+ m_obrXml = obrXml;
m_project = project;
m_logger = logger;