001package org.apache.maven.repository; 002 003/* 004 * Licensed to the Apache Software Foundation (ASF) under one 005 * or more contributor license agreements. See the NOTICE file 006 * distributed with this work for additional information 007 * regarding copyright ownership. The ASF licenses this file 008 * to you under the Apache License, Version 2.0 (the 009 * "License"); you may not use this file except in compliance 010 * with the License. You may obtain a copy of the License at 011 * 012 * http://www.apache.org/licenses/LICENSE-2.0 013 * 014 * Unless required by applicable law or agreed to in writing, 015 * software distributed under the License is distributed on an 016 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 017 * KIND, either express or implied. See the License for the 018 * specific language governing permissions and limitations 019 * under the License. 020 */ 021 022import java.util.List; 023import java.util.Map; 024import java.util.Set; 025 026import org.apache.maven.artifact.Artifact; 027import org.apache.maven.artifact.repository.ArtifactRepository; 028 029/** 030 * 031 * 032 * @author Oleg Gusakov 033 * 034 */ 035public class MetadataResolutionRequest 036{ 037 private MavenArtifactMetadata mad; 038 039 private String scope; 040 041 // Needs to go away 042 private Set<Artifact> artifactDependencies; 043 044 private ArtifactRepository localRepository; 045 046 private List<ArtifactRepository> remoteRepositories; 047 048 // This is like a filter but overrides all transitive versions 049 private Map managedVersionMap; 050 051 /** result type - flat list; the default */ 052 private boolean asList = true; 053 054 /** result type - dirty tree */ 055 private boolean asDirtyTree = false; 056 057 /** result type - resolved tree */ 058 private boolean asResolvedTree = false; 059 060 /** result type - graph */ 061 private boolean asGraph = false; 062 063 public MetadataResolutionRequest() 064 { 065 } 066 067 public MetadataResolutionRequest( MavenArtifactMetadata md, ArtifactRepository localRepository, 068 List<ArtifactRepository> remoteRepositories ) 069 { 070 this.mad = md; 071 this.localRepository = localRepository; 072 this.remoteRepositories = remoteRepositories; 073 } 074 075 public MavenArtifactMetadata getArtifactMetadata() 076 { 077 return mad; 078 } 079 080 public MetadataResolutionRequest setArtifactMetadata( MavenArtifactMetadata md ) 081 { 082 this.mad = md; 083 084 return this; 085 } 086 087 public MetadataResolutionRequest setArtifactDependencies( Set<Artifact> artifactDependencies ) 088 { 089 this.artifactDependencies = artifactDependencies; 090 091 return this; 092 } 093 094 public Set<Artifact> getArtifactDependencies() 095 { 096 return artifactDependencies; 097 } 098 099 public ArtifactRepository getLocalRepository() 100 { 101 return localRepository; 102 } 103 104 public MetadataResolutionRequest setLocalRepository( ArtifactRepository localRepository ) 105 { 106 this.localRepository = localRepository; 107 108 return this; 109 } 110 111 public List<ArtifactRepository> getRemoteRepostories() 112 { 113 return remoteRepositories; 114 } 115 116 public MetadataResolutionRequest setRemoteRepostories( List<ArtifactRepository> remoteRepostories ) 117 { 118 this.remoteRepositories = remoteRepostories; 119 120 return this; 121 } 122 123 public Map getManagedVersionMap() 124 { 125 return managedVersionMap; 126 } 127 128 public MetadataResolutionRequest setManagedVersionMap( Map managedVersionMap ) 129 { 130 this.managedVersionMap = managedVersionMap; 131 132 return this; 133 } 134 135 public String toString() 136 { 137 StringBuilder sb = new StringBuilder() 138 .append( "REQUEST: " ).append( "\n" ) 139 .append( "artifact: " ).append( mad ).append( "\n" ) 140 .append( artifactDependencies ).append( "\n" ) 141 .append( "localRepository: " ).append( localRepository ).append( "\n" ) 142 .append( "remoteRepositories: " ).append( remoteRepositories ).append( "\n" ) 143 ; 144 145 return sb.toString(); 146 } 147 148 public boolean isAsList() 149 { 150 return asList; 151 } 152 153 public MetadataResolutionRequest setAsList( boolean asList ) 154 { 155 this.asList = asList; 156 return this; 157 } 158 159 public boolean isAsDirtyTree() 160 { 161 return asDirtyTree; 162 } 163 164 public MetadataResolutionRequest setAsDirtyTree( boolean asDirtyTree ) 165 { 166 this.asDirtyTree = asDirtyTree; 167 return this; 168 } 169 170 public boolean isAsResolvedTree() 171 { 172 return asResolvedTree; 173 } 174 175 public MetadataResolutionRequest setAsResolvedTree( boolean asResolvedTree ) 176 { 177 this.asResolvedTree = asResolvedTree; 178 return this; 179 } 180 181 public boolean isAsGraph() 182 { 183 return asGraph; 184 } 185 186 public MetadataResolutionRequest setAsGraph( boolean asGraph ) 187 { 188 this.asGraph = asGraph; 189 return this; 190 } 191 192 public MetadataResolutionRequest setScope( String scope ) 193 { 194 this.scope = scope; 195 return this; 196 } 197 198 public String getScope() 199 { 200 return scope; 201 } 202}