1 package org.apache.maven.artifact.repository; 2 3 18 19 import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout; 20 21 import java.util.HashMap ; 22 import java.util.Map ; 23 24 27 public class DefaultArtifactRepositoryFactory 28 implements ArtifactRepositoryFactory 29 { 30 private String globalUpdatePolicy; 32 33 private String globalChecksumPolicy; 34 35 private final Map artifactRepositories = new HashMap (); 36 37 public ArtifactRepository createDeploymentArtifactRepository( String id, String url, 38 ArtifactRepositoryLayout repositoryLayout, 39 boolean uniqueVersion ) 40 { 41 return new DefaultArtifactRepository( id, url, repositoryLayout, uniqueVersion ); 42 } 43 44 public ArtifactRepository createArtifactRepository( String id, String url, 45 ArtifactRepositoryLayout repositoryLayout, 46 ArtifactRepositoryPolicy snapshots, 47 ArtifactRepositoryPolicy releases ) 48 { 49 boolean blacklisted = false; 50 if ( artifactRepositories.containsKey( id ) ) 51 { 52 ArtifactRepository repository = (ArtifactRepository) artifactRepositories.get( id ); 53 if ( repository.getUrl().equals( url ) ) 55 { 56 blacklisted = repository.isBlacklisted(); 57 } 58 } 59 60 if ( snapshots == null ) 61 { 62 snapshots = new ArtifactRepositoryPolicy(); 63 } 64 65 if ( releases == null ) 66 { 67 releases = new ArtifactRepositoryPolicy(); 68 } 69 70 if ( globalUpdatePolicy != null ) 71 { 72 snapshots.setUpdatePolicy( globalUpdatePolicy ); 73 releases.setUpdatePolicy( globalUpdatePolicy ); 74 } 75 76 if ( globalChecksumPolicy != null ) 77 { 78 snapshots.setChecksumPolicy( globalChecksumPolicy ); 79 releases.setChecksumPolicy( globalChecksumPolicy ); 80 } 81 82 DefaultArtifactRepository repository = new DefaultArtifactRepository( id, url, repositoryLayout, snapshots, 83 releases ); 84 repository.setBlacklisted( blacklisted ); 85 86 artifactRepositories.put( id, repository ); 87 88 return repository; 89 } 90 91 public void setGlobalUpdatePolicy( String updatePolicy ) 92 { 93 this.globalUpdatePolicy = updatePolicy; 94 } 95 96 public void setGlobalChecksumPolicy( String checksumPolicy ) 97 { 98 this.globalChecksumPolicy = checksumPolicy; 99 } 100 } 101 | Popular Tags |