Hi Igor,

Can it make sense to have a more descriptive name on this?

Cheers,
Brett

On 16/12/2009, at 11:34 AM, [email protected] wrote:

> Author: ifedorenko
> Date: Wed Dec 16 00:34:19 2009
> New Revision: 891083
> 
> URL: http://svn.apache.org/viewvc?rev=891083&view=rev
> Log:
> [MNG-4494] allow custom ArtifactRepository configuration and implementation
> Issue id: MNG-4494
> 
> Added:
>    
> maven/maven-3/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/layout/ArtifactRepositoryLayout2.java
>    (with props)
> Modified:
>    
> maven/maven-3/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/layout/ArtifactRepositoryLayout.java
>    
> maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/DefaultArtifactRepositoryFactory.java
> 
> Modified: 
> maven/maven-3/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/layout/ArtifactRepositoryLayout.java
> URL: 
> http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/layout/ArtifactRepositoryLayout.java?rev=891083&r1=891082&r2=891083&view=diff
> ==============================================================================
> --- 
> maven/maven-3/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/layout/ArtifactRepositoryLayout.java
>  (original)
> +++ 
> maven/maven-3/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/layout/ArtifactRepositoryLayout.java
>  Wed Dec 16 00:34:19 2009
> @@ -22,6 +22,7 @@
> import org.apache.maven.artifact.Artifact;
> import org.apache.maven.artifact.metadata.ArtifactMetadata;
> import org.apache.maven.artifact.repository.ArtifactRepository;
> +import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
> 
> /** @author jdcasey */
> public interface ArtifactRepositoryLayout
> 
> Added: 
> maven/maven-3/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/layout/ArtifactRepositoryLayout2.java
> URL: 
> http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/layout/ArtifactRepositoryLayout2.java?rev=891083&view=auto
> ==============================================================================
> --- 
> maven/maven-3/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/layout/ArtifactRepositoryLayout2.java
>  (added)
> +++ 
> maven/maven-3/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/layout/ArtifactRepositoryLayout2.java
>  Wed Dec 16 00:34:19 2009
> @@ -0,0 +1,31 @@
> +package org.apache.maven.artifact.repository.layout;
> +
> +import org.apache.maven.artifact.repository.ArtifactRepository;
> +import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
> +
> +/*
> + * 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.
> + */
> +
> +public interface ArtifactRepositoryLayout2
> +    extends ArtifactRepositoryLayout
> +{
> +
> +    ArtifactRepository newMavenArtifactRepository( String id, String url, 
> ArtifactRepositoryPolicy snapshots,
> +                                                   ArtifactRepositoryPolicy 
> releases );
> +}
> 
> Propchange: 
> maven/maven-3/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/layout/ArtifactRepositoryLayout2.java
> ------------------------------------------------------------------------------
>    svn:eol-style = native
> 
> Modified: 
> maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/DefaultArtifactRepositoryFactory.java
> URL: 
> http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/DefaultArtifactRepositoryFactory.java?rev=891083&r1=891082&r2=891083&view=diff
> ==============================================================================
> --- 
> maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/DefaultArtifactRepositoryFactory.java
>  (original)
> +++ 
> maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/DefaultArtifactRepositoryFactory.java
>  Wed Dec 16 00:34:19 2009
> @@ -26,6 +26,7 @@
> import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
> import org.apache.maven.artifact.repository.MavenArtifactRepository;
> import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
> +import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout2;
> import org.codehaus.plexus.component.annotations.Component;
> import org.codehaus.plexus.component.annotations.Requirement;
> 
> @@ -124,7 +125,17 @@
>             releases.setChecksumPolicy( globalChecksumPolicy );
>         }
> 
> -        ArtifactRepository repository = new MavenArtifactRepository( id, 
> url, repositoryLayout, snapshots, releases );
> +        ArtifactRepository repository;
> +        if ( repositoryLayout instanceof ArtifactRepositoryLayout2 )
> +        {
> +            repository =
> +                ( (ArtifactRepositoryLayout2) repositoryLayout 
> ).newMavenArtifactRepository( id, url, snapshots,
> +                                                                             
>                 releases );
> +        }
> +        else
> +        {
> +            repository = new MavenArtifactRepository( id, url, 
> repositoryLayout, snapshots, releases );
> +        }
> 
>         return repository;
>     }
> 
> 

--
Brett Porter
[email protected]
http://brettporter.wordpress.com/





---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to