You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@continuum.apache.org by ba...@apache.org on 2015/02/21 06:04:58 UTC
svn commit: r1661282 - in /continuum/trunk: continuum-api/
continuum-api/src/main/java/org/apache/continuum/utils/m2/
continuum-api/src/main/java/org/apache/maven/continuum/execution/
continuum-core/src/main/java/org/apache/maven/continuum/core/action/...
Author: batkinson
Date: Sat Feb 21 05:04:57 2015
New Revision: 1661282
URL: http://svn.apache.org/r1661282
Log:
Added shared components for maven settings and local repos.
Added:
continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/
continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/DefaultLocalRepositoryHelper.java
continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/DefaultSettingsHelper.java
continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/LocalRepositoryHelper.java
continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/SettingsHelper.java
continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/execution/SettingsConfigurationException.java
- copied, changed from r1661281, continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/SettingsConfigurationException.java
Removed:
continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/SettingsConfigurationException.java
Modified:
continuum/trunk/continuum-api/pom.xml
continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/CreateProjectsFromMetadataAction.java
continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java
continuum/trunk/continuum-core/src/test/java/org/apache/continuum/AbstractAddProjectTest.java
continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.java
continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/EditPomAction.java
Modified: continuum/trunk/continuum-api/pom.xml
URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-api/pom.xml?rev=1661282&r1=1661281&r2=1661282&view=diff
==============================================================================
--- continuum/trunk/continuum-api/pom.xml (original)
+++ continuum/trunk/continuum-api/pom.xml Sat Feb 21 05:04:57 2015
@@ -45,6 +45,10 @@
<artifactId>plexus-taskqueue</artifactId>
</dependency>
<dependency>
+ <groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-component-annotations</artifactId>
+ </dependency>
+ <dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
</dependency>
@@ -81,6 +85,18 @@
<build>
<plugins>
<plugin>
+ <groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-component-metadata</artifactId>
+ <executions>
+ <execution>
+ <id>generate</id>
+ <goals>
+ <goal>generate-metadata</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<systemProperties>
Added: continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/DefaultLocalRepositoryHelper.java
URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/DefaultLocalRepositoryHelper.java?rev=1661282&view=auto
==============================================================================
--- continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/DefaultLocalRepositoryHelper.java (added)
+++ continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/DefaultLocalRepositoryHelper.java Sat Feb 21 05:04:57 2015
@@ -0,0 +1,93 @@
+package org.apache.continuum.utils.m2;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.continuum.model.repository.LocalRepository;
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.repository.ArtifactRepositoryFactory;
+import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
+import org.apache.maven.continuum.execution.SettingsConfigurationException;
+import org.apache.maven.settings.Settings;
+import org.codehaus.plexus.component.annotations.Component;
+import org.codehaus.plexus.component.annotations.Configuration;
+import org.codehaus.plexus.component.annotations.Requirement;
+import org.codehaus.plexus.util.StringUtils;
+
+@Component( role = LocalRepositoryHelper.class, hint = "default" )
+public class DefaultLocalRepositoryHelper
+ implements LocalRepositoryHelper
+{
+ @Requirement
+ private ArtifactRepositoryFactory artifactRepositoryFactory;
+
+ @Requirement
+ private ArtifactRepositoryLayout repositoryLayout;
+
+ @Requirement
+ private SettingsHelper settingsHelper;
+
+ @Configuration( "${plexus.home}/local-repository" )
+ private String localRepository;
+
+ public ArtifactRepository getLocalRepository()
+ throws SettingsConfigurationException
+ {
+ return getRepository( null, settingsHelper.getSettings() );
+ }
+
+ public ArtifactRepository getLocalRepository( LocalRepository localRepo )
+ throws SettingsConfigurationException
+ {
+ return getRepository( localRepo, settingsHelper.getSettings() );
+ }
+
+ private ArtifactRepository getRepository( LocalRepository repository, Settings settings )
+ {
+ // ----------------------------------------------------------------------
+ // Set our configured location as the default but try to use the defaults
+ // as returned by the MavenSettings component.
+ // ----------------------------------------------------------------------
+
+ String localRepo = localRepository;
+
+ if ( repository != null )
+ {
+ return artifactRepositoryFactory.createArtifactRepository( repository.getName(),
+ "file://" + repository.getLocation(),
+ repositoryLayout, null, null );
+ }
+ else if ( !( StringUtils.isEmpty( settings.getLocalRepository() ) ) )
+ {
+ localRepo = settings.getLocalRepository();
+ }
+
+ return artifactRepositoryFactory.createArtifactRepository( "local", "file://" + localRepo, repositoryLayout,
+ null, null );
+ }
+
+ public LocalRepository convertAgentRepo( org.apache.continuum.buildagent.model.LocalRepository repo )
+ {
+ LocalRepository result = new LocalRepository();
+ result.setLayout( repo.getLayout() );
+ result.setName( repo.getName() );
+ result.setLocation( repo.getLocation() );
+ return result;
+ }
+}
Added: continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/DefaultSettingsHelper.java
URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/DefaultSettingsHelper.java?rev=1661282&view=auto
==============================================================================
--- continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/DefaultSettingsHelper.java (added)
+++ continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/DefaultSettingsHelper.java Sat Feb 21 05:04:57 2015
@@ -0,0 +1,55 @@
+package org.apache.continuum.utils.m2;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.maven.continuum.execution.SettingsConfigurationException;
+import org.apache.maven.settings.MavenSettingsBuilder;
+import org.apache.maven.settings.Settings;
+import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.io.IOException;
+
+@Service( "settingsHelper" )
+public class DefaultSettingsHelper
+ implements SettingsHelper
+{
+ @Resource
+ private MavenSettingsBuilder mavenSettingsBuilder;
+
+ public Settings getSettings()
+ throws SettingsConfigurationException
+ {
+ try
+ {
+ return mavenSettingsBuilder.buildSettings( false );
+ }
+ catch ( IOException e )
+ {
+ throw new SettingsConfigurationException( "error reading settings file", e );
+ }
+ catch ( XmlPullParserException e )
+ {
+ throw new SettingsConfigurationException( e.getMessage(), e.getCause(), e.getLineNumber(),
+ e.getColumnNumber() );
+ }
+ }
+}
Added: continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/LocalRepositoryHelper.java
URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/LocalRepositoryHelper.java?rev=1661282&view=auto
==============================================================================
--- continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/LocalRepositoryHelper.java (added)
+++ continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/LocalRepositoryHelper.java Sat Feb 21 05:04:57 2015
@@ -0,0 +1,37 @@
+package org.apache.continuum.utils.m2;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.continuum.model.repository.LocalRepository;
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.continuum.execution.SettingsConfigurationException;
+
+public interface LocalRepositoryHelper
+{
+ String ROLE = LocalRepositoryHelper.class.getName();
+
+ ArtifactRepository getLocalRepository()
+ throws SettingsConfigurationException;
+
+ ArtifactRepository getLocalRepository( LocalRepository localRepo )
+ throws SettingsConfigurationException;
+
+ LocalRepository convertAgentRepo( org.apache.continuum.buildagent.model.LocalRepository repo );
+}
Added: continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/SettingsHelper.java
URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/SettingsHelper.java?rev=1661282&view=auto
==============================================================================
--- continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/SettingsHelper.java (added)
+++ continuum/trunk/continuum-api/src/main/java/org/apache/continuum/utils/m2/SettingsHelper.java Sat Feb 21 05:04:57 2015
@@ -0,0 +1,31 @@
+package org.apache.continuum.utils.m2;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.maven.continuum.execution.SettingsConfigurationException;
+import org.apache.maven.settings.Settings;
+
+public interface SettingsHelper
+{
+ String ROLE = SettingsHelper.class.getName();
+
+ Settings getSettings()
+ throws SettingsConfigurationException;
+}
Copied: continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/execution/SettingsConfigurationException.java (from r1661281, continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/SettingsConfigurationException.java)
URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/execution/SettingsConfigurationException.java?p2=continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/execution/SettingsConfigurationException.java&p1=continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/SettingsConfigurationException.java&r1=1661281&r2=1661282&rev=1661282&view=diff
==============================================================================
--- continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/SettingsConfigurationException.java (original)
+++ continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/execution/SettingsConfigurationException.java Sat Feb 21 05:04:57 2015
@@ -1,4 +1,4 @@
-package org.apache.maven.continuum.execution.maven.m2;
+package org.apache.maven.continuum.execution;
/*
* Licensed to the Apache Software Foundation (ASF) under one
Modified: continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/CreateProjectsFromMetadataAction.java
URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/CreateProjectsFromMetadataAction.java?rev=1661282&r1=1661281&r2=1661282&view=diff
==============================================================================
--- continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/CreateProjectsFromMetadataAction.java (original)
+++ continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/CreateProjectsFromMetadataAction.java Sat Feb 21 05:04:57 2015
@@ -20,7 +20,7 @@ package org.apache.maven.continuum.core.
*/
import org.apache.maven.continuum.ContinuumException;
-import org.apache.maven.continuum.execution.maven.m2.SettingsConfigurationException;
+import org.apache.maven.continuum.execution.SettingsConfigurationException;
import org.apache.maven.continuum.model.project.BuildDefinitionTemplate;
import org.apache.maven.continuum.model.project.Project;
import org.apache.maven.continuum.project.builder.ContinuumProjectBuilder;
Modified: continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java
URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java?rev=1661282&r1=1661281&r2=1661282&view=diff
==============================================================================
--- continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java (original)
+++ continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java Sat Feb 21 05:04:57 2015
@@ -25,6 +25,7 @@ import org.apache.maven.artifact.reposit
import org.apache.maven.artifact.repository.ArtifactRepositoryFactory;
import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
+import org.apache.maven.continuum.execution.SettingsConfigurationException;
import org.apache.maven.continuum.model.project.Project;
import org.apache.maven.continuum.model.project.ProjectDependency;
import org.apache.maven.continuum.model.project.ProjectDeveloper;
Modified: continuum/trunk/continuum-core/src/test/java/org/apache/continuum/AbstractAddProjectTest.java
URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-core/src/test/java/org/apache/continuum/AbstractAddProjectTest.java?rev=1661282&r1=1661281&r2=1661282&view=diff
==============================================================================
--- continuum/trunk/continuum-core/src/test/java/org/apache/continuum/AbstractAddProjectTest.java (original)
+++ continuum/trunk/continuum-core/src/test/java/org/apache/continuum/AbstractAddProjectTest.java Sat Feb 21 05:04:57 2015
@@ -22,7 +22,7 @@ package org.apache.continuum;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.continuum.AbstractContinuumTest;
import org.apache.maven.continuum.execution.maven.m2.MavenBuilderHelper;
-import org.apache.maven.continuum.execution.maven.m2.SettingsConfigurationException;
+import org.apache.maven.continuum.execution.SettingsConfigurationException;
import org.codehaus.plexus.util.FileUtils;
import java.io.File;
Modified: continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.java
URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.java?rev=1661282&r1=1661281&r2=1661282&view=diff
==============================================================================
--- continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.java (original)
+++ continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/ConfigureAppearanceAction.java Sat Feb 21 05:04:57 2015
@@ -25,7 +25,7 @@ import org.apache.maven.artifact.reposit
import org.apache.maven.artifact.repository.ArtifactRepositoryFactory;
import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
import org.apache.maven.continuum.execution.maven.m2.MavenBuilderHelper;
-import org.apache.maven.continuum.execution.maven.m2.SettingsConfigurationException;
+import org.apache.maven.continuum.execution.SettingsConfigurationException;
import org.apache.maven.continuum.security.ContinuumRoleConstants;
import org.apache.maven.continuum.web.action.component.AbstractFooterAction;
import org.apache.maven.continuum.web.appareance.AppareanceConfiguration;
Modified: continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/EditPomAction.java
URL: http://svn.apache.org/viewvc/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/EditPomAction.java?rev=1661282&r1=1661281&r2=1661282&view=diff
==============================================================================
--- continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/EditPomAction.java (original)
+++ continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/EditPomAction.java Sat Feb 21 05:04:57 2015
@@ -23,7 +23,7 @@ import com.opensymphony.xwork2.ModelDriv
import org.apache.maven.artifact.installer.ArtifactInstallationException;
import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
import org.apache.maven.continuum.execution.maven.m2.MavenBuilderHelper;
-import org.apache.maven.continuum.execution.maven.m2.SettingsConfigurationException;
+import org.apache.maven.continuum.execution.SettingsConfigurationException;
import org.apache.maven.continuum.security.ContinuumRoleConstants;
import org.apache.maven.continuum.web.action.ContinuumActionSupport;
import org.apache.maven.model.Model;