Author: brett
Date: Tue Oct 4 01:43:36 2005
New Revision: 293570
URL: http://svn.apache.org/viewcvs?rev=293570&view=rev
Log:
PR: MNG-922
allow the disablement of timestamping snapshots, reusing the same file in the
remote repo
Modified:
maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepository.java
maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java
maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/transform/SnapshotTransformation.java
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/ArtifactRepository.java
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/ArtifactRepositoryFactory.java
maven/components/trunk/maven-model/maven.mdo
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/ModelUtils.java
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/ProjectUtils.java
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/inheritance/DefaultModelInheritanceAssembler.java
Modified:
maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepository.java
URL:
http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepository.java?rev=293570&r1=293569&r2=293570&view=diff
==============================================================================
---
maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepository.java
(original)
+++
maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepository.java
Tue Oct 4 01:43:36 2005
@@ -38,8 +38,10 @@
private ArtifactRepositoryPolicy releases;
+ private boolean uniqueVersion;
+
/**
- * Create a local repository or a deployment repository.
+ * Create a local repository or a test repository.
*
* @param id the unique identifier of the repository
* @param url the URL of the repository
@@ -51,6 +53,21 @@
}
/**
+ * Create a remote deployment repository.
+ *
+ * @param id the unique identifier of the repository
+ * @param url the URL of the repository
+ * @param layout the layout of the repository
+ * @param uniqueVersion whether to assign each snapshot a unique version
+ */
+ public DefaultArtifactRepository( String id, String url,
ArtifactRepositoryLayout layout, boolean uniqueVersion )
+ {
+ super( id, url );
+ this.layout = layout;
+ this.uniqueVersion = uniqueVersion;
+ }
+
+ /**
* Create a remote download repository.
*
* @param id the unique identifier of the repository
@@ -116,5 +133,10 @@
public String getKey()
{
return getId();
+ }
+
+ public boolean isUniqueVersion()
+ {
+ return uniqueVersion;
}
}
Modified:
maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java
URL:
http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java?rev=293570&r1=293569&r2=293570&view=diff
==============================================================================
---
maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java
(original)
+++
maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java
Tue Oct 4 01:43:36 2005
@@ -29,10 +29,10 @@
private String globalChecksumPolicy;
- public ArtifactRepository createArtifactRepository( String id, String url,
-
ArtifactRepositoryLayout repositoryLayout )
+ public ArtifactRepository createDeploymentArtifactRepository( String id,
String url,
+
ArtifactRepositoryLayout repositoryLayout, boolean uniqueVersion )
{
- return new DefaultArtifactRepository( id, url, repositoryLayout );
+ return new DefaultArtifactRepository( id, url, repositoryLayout,
uniqueVersion );
}
public ArtifactRepository createArtifactRepository( String id, String url,
Modified:
maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/transform/SnapshotTransformation.java
URL:
http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/transform/SnapshotTransformation.java?rev=293570&r1=293569&r2=293570&view=diff
==============================================================================
---
maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/transform/SnapshotTransformation.java
(original)
+++
maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/transform/SnapshotTransformation.java
Tue Oct 4 01:43:36 2005
@@ -77,10 +77,15 @@
{
if ( artifact.isSnapshot() )
{
+ Snapshot snapshot = new Snapshot();
+ if ( remoteRepository.isUniqueVersion() )
+ {
+ snapshot.setTimestamp( getDeploymentTimestamp() );
+ }
+
+ // we update the build number anyway so that it doesn't get lost.
It requires the timestamp to take effect
int buildNumber = resolveLatestSnapshotBuildNumber( artifact,
localRepository, remoteRepository );
- Snapshot snapshot = new Snapshot();
- snapshot.setTimestamp( getDeploymentTimestamp() );
snapshot.setBuildNumber( buildNumber + 1 );
RepositoryMetadata metadata = new
SnapshotArtifactRepositoryMetadata( artifact, snapshot );
Modified:
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/ArtifactRepository.java
URL:
http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/ArtifactRepository.java?rev=293570&r1=293569&r2=293570&view=diff
==============================================================================
---
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/ArtifactRepository.java
(original)
+++
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/ArtifactRepository.java
Tue Oct 4 01:43:36 2005
@@ -49,4 +49,6 @@
ArtifactRepositoryLayout getLayout();
String getKey();
+
+ boolean isUniqueVersion();
}
Modified:
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/ArtifactRepositoryFactory.java
URL:
http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/ArtifactRepositoryFactory.java?rev=293570&r1=293569&r2=293570&view=diff
==============================================================================
---
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/ArtifactRepositoryFactory.java
(original)
+++
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/ArtifactRepositoryFactory.java
Tue Oct 4 01:43:36 2005
@@ -25,7 +25,8 @@
{
String ROLE = ArtifactRepositoryFactory.class.getName();
- ArtifactRepository createArtifactRepository( String id, String url,
ArtifactRepositoryLayout repositoryLayout );
+ ArtifactRepository createDeploymentArtifactRepository( String id, String
url, ArtifactRepositoryLayout layout,
+ boolean
uniqueVersion );
ArtifactRepository createArtifactRepository( String id, String url,
ArtifactRepositoryLayout repositoryLayout,
ArtifactRepositoryPolicy
snapshots,
@@ -34,5 +35,4 @@
void setGlobalUpdatePolicy( String snapshotPolicy );
void setGlobalChecksumPolicy( String checksumPolicy );
-
-}
\ No newline at end of file
+}
Modified: maven/components/trunk/maven-model/maven.mdo
URL:
http://svn.apache.org/viewcvs/maven/components/trunk/maven-model/maven.mdo?rev=293570&r1=293569&r2=293570&view=diff
==============================================================================
--- maven/components/trunk/maven-model/maven.mdo (original)
+++ maven/components/trunk/maven-model/maven.mdo Tue Oct 4 01:43:36 2005
@@ -1530,7 +1530,7 @@
generated by the project
]]></description>
<association>
- <type>RepositoryBase</type>
+ <type>DeploymentRepository</type>
</association>
</field>
<field>
@@ -1540,7 +1540,7 @@
Where to deploy snapshots of artifacts to. If not given, it
defaults to the repository.
</description>
<association>
- <type>RepositoryBase</type>
+ <type>DeploymentRepository</type>
</association>
</field>
<field>
@@ -2226,6 +2226,36 @@
<association>
<type>RepositoryPolicy</type>
</association>
+ </field>
+ </fields>
+ <!-- prevent modello generation of an incorrect equals method. Could be
avoided by using <identity/> tags to mark ID as the only identity field -->
+ <codeSegments>
+ <codeSegment>
+ <version>4.0.0</version>
+ <code><![CDATA[
+ public boolean equals( Object obj )
+ {
+ return super.equals( obj );
+ }
+ ]]></code>
+ </codeSegment>
+ </codeSegments>
+ </class>
+
+ <class>
+ <name>DeploymentRepository</name>
+ <superClass>RepositoryBase</superClass>
+ <version>4.0.0</version>
+ <description>
+ Repository contains the information needed for deploying to the remote
repoistory
+ </description>
+ <fields>
+ <field>
+ <name>uniqueVersion</name>
+ <description>Whether to assign snapshots a unique version comprised
of the timestamp and build number, or to use the same version each
time</description>
+ <type>boolean</type>
+ <defaultValue>true</defaultValue>
+ <version>4.0.0</version>
</field>
</fields>
<!-- prevent modello generation of an incorrect equals method. Could be
avoided by using <identity/> tags to mark ID as the only identity field -->
Modified:
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
URL:
http://svn.apache.org/viewcvs/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java?rev=293570&r1=293569&r2=293570&view=diff
==============================================================================
---
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
(original)
+++
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
Tue Oct 4 01:43:36 2005
@@ -632,14 +632,15 @@
DistributionManagement dm = model.getDistributionManagement();
if ( dm != null )
{
- ArtifactRepository repo =
ProjectUtils.buildArtifactRepositoryBase( dm.getRepository(),
-
artifactRepositoryFactory, container );
+ ArtifactRepository repo =
ProjectUtils.buildDeploymentArtifactRepository( dm.getRepository(),
+
artifactRepositoryFactory,
+
container );
project.setReleaseArtifactRepository( repo );
if ( dm.getSnapshotRepository() != null )
{
- repo = ProjectUtils.buildArtifactRepositoryBase(
dm.getSnapshotRepository(), artifactRepositoryFactory,
- container );
+ repo = ProjectUtils.buildDeploymentArtifactRepository(
dm.getSnapshotRepository(),
+
artifactRepositoryFactory, container );
project.setSnapshotArtifactRepository( repo );
}
}
Modified:
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/ModelUtils.java
URL:
http://svn.apache.org/viewcvs/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/ModelUtils.java?rev=293570&r1=293569&r2=293570&view=diff
==============================================================================
---
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/ModelUtils.java
(original)
+++
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/ModelUtils.java
Tue Oct 4 01:43:36 2005
@@ -42,6 +42,7 @@
import org.apache.maven.model.RepositoryPolicy;
import org.apache.maven.model.Resource;
import org.apache.maven.model.Site;
+import org.apache.maven.model.DeploymentRepository;
import org.apache.maven.project.inheritance.DefaultModelInheritanceAssembler;
import org.apache.maven.project.inheritance.ModelInheritanceAssembler;
import org.codehaus.plexus.util.xml.Xpp3Dom;
@@ -650,7 +651,7 @@
if ( repo != null )
{
- RepositoryBase newRepo = new RepositoryBase();
+ DeploymentRepository newRepo = new DeploymentRepository();
newRepo.setId( repo.getId() );
newRepo.setLayout( repo.getLayout() );
@@ -677,7 +678,7 @@
if ( sRepo != null )
{
- RepositoryBase newRepo = new RepositoryBase();
+ DeploymentRepository newRepo = new DeploymentRepository();
newRepo.setId( sRepo.getId() );
newRepo.setLayout( sRepo.getLayout() );
Modified:
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/ProjectUtils.java
URL:
http://svn.apache.org/viewcvs/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/ProjectUtils.java?rev=293570&r1=293569&r2=293570&view=diff
==============================================================================
---
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/ProjectUtils.java
(original)
+++
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/ProjectUtils.java
Tue Oct 4 01:43:36 2005
@@ -23,6 +23,7 @@
import org.apache.maven.model.Repository;
import org.apache.maven.model.RepositoryBase;
import org.apache.maven.model.RepositoryPolicy;
+import org.apache.maven.model.DeploymentRepository;
import org.codehaus.plexus.PlexusContainer;
import
org.codehaus.plexus.component.repository.exception.ComponentLookupException;
@@ -59,9 +60,9 @@
return repos;
}
- public static ArtifactRepository buildArtifactRepositoryBase(
RepositoryBase repo,
-
ArtifactRepositoryFactory artifactRepositoryFactory,
-
PlexusContainer container )
+ public static ArtifactRepository buildDeploymentArtifactRepository(
DeploymentRepository repo,
+
ArtifactRepositoryFactory artifactRepositoryFactory,
+
PlexusContainer container )
throws ProjectBuildingException
{
if ( repo != null )
@@ -72,7 +73,7 @@
// TODO: make this a map inside the factory instead, so no lookup
needed
ArtifactRepositoryLayout layout = getRepositoryLayout( repo,
container );
- return artifactRepositoryFactory.createArtifactRepository( id,
url, layout );
+ return
artifactRepositoryFactory.createDeploymentArtifactRepository( id, url, layout,
repo.isUniqueVersion() );
}
else
{
Modified:
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/inheritance/DefaultModelInheritanceAssembler.java
URL:
http://svn.apache.org/viewcvs/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/inheritance/DefaultModelInheritanceAssembler.java?rev=293570&r1=293569&r2=293570&view=diff
==============================================================================
---
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/inheritance/DefaultModelInheritanceAssembler.java
(original)
+++
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/inheritance/DefaultModelInheritanceAssembler.java
Tue Oct 4 01:43:36 2005
@@ -26,6 +26,7 @@
import org.apache.maven.model.Repository;
import org.apache.maven.model.Scm;
import org.apache.maven.model.Site;
+import org.apache.maven.model.DeploymentRepository;
import org.apache.maven.project.ModelUtils;
import org.codehaus.plexus.util.StringUtils;
@@ -474,7 +475,7 @@
{
if ( parentDistMgmt.getRepository() != null )
{
- Repository repository = new Repository();
+ DeploymentRepository repository = new
DeploymentRepository();
childDistMgmt.setRepository( repository );
@@ -490,7 +491,7 @@
{
if ( parentDistMgmt.getSnapshotRepository() != null )
{
- Repository repository = new Repository();
+ DeploymentRepository repository = new
DeploymentRepository();
childDistMgmt.setSnapshotRepository( repository );
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]