List of usage examples for org.apache.maven.artifact.repository.metadata RepositoryMetadata setRepository
void setRepository(ArtifactRepository remoteRepository);
From source file:org.ck.maven.plugins.pom.versions.service.version.PomVersionRepositoryMetadataManager.java
License:Apache License
private void mergeMetadata(RepositoryMetadata metadata, List remoteRepositories, ArtifactRepository localRepository) throws RepositoryMetadataStoreException, RepositoryMetadataReadException { // TODO: currently this is first wins, but really we should take the latest by comparing either the // snapshot timestamp, or some other timestamp later encoded into the metadata. // TODO: this needs to be repeated here so the merging doesn't interfere with the written metadata // - we'd be much better having a pristine input, and an ongoing metadata for merging instead Map previousMetadata = new HashMap(); ArtifactRepository selected = null;/* w w w .ja va2 s . c o m*/ for (Iterator i = remoteRepositories.iterator(); i.hasNext();) { ArtifactRepository repository = (ArtifactRepository) i.next(); ArtifactRepositoryPolicy policy = metadata.isSnapshot() ? repository.getSnapshots() : repository.getReleases(); if (policy.isEnabled() && loadMetadata(metadata, repository, localRepository, previousMetadata)) { metadata.setRepository(repository); selected = repository; } } // if ( loadMetadata( metadata, localRepository, localRepository, previousMetadata ) ) // { // metadata.setRepository( null ); // selected = localRepository; // } updateSnapshotMetadata(metadata, previousMetadata, selected, localRepository); }