View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one
3    * or more contributor license agreements.  See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership.  The ASF licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License.  You may obtain a copy of the License at
9    *
10   *   http://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing,
13   * software distributed under the License is distributed on an
14   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   * KIND, either express or implied.  See the License for the
16   * specific language governing permissions and limitations
17   * under the License.
18   */
19  package org.apache.maven.artifact.metadata;
20  
21  import javax.inject.Inject;
22  import javax.inject.Named;
23  import javax.inject.Singleton;
24  
25  import java.util.List;
26  
27  import org.apache.maven.artifact.Artifact;
28  import org.apache.maven.artifact.repository.ArtifactRepository;
29  import org.apache.maven.artifact.versioning.ArtifactVersion;
30  import org.apache.maven.repository.legacy.metadata.MetadataResolutionRequest;
31  import org.eclipse.sisu.Priority;
32  
33  @Singleton
34  @Priority(10)
35  @Named
36  @Deprecated
37  public class SwitchableMetadataSource implements ArtifactMetadataSource {
38      private ArtifactMetadataSource delegate;
39  
40      @Inject
41      public SwitchableMetadataSource(@Named("test") ArtifactMetadataSource delegate) {
42          this.delegate = delegate;
43      }
44  
45      public void setDelegate(ArtifactMetadataSource delegate) {
46          this.delegate = delegate;
47      }
48  
49      @Override
50      public ResolutionGroup retrieve(MetadataResolutionRequest request) throws ArtifactMetadataRetrievalException {
51          return delegate.retrieve(request);
52      }
53  
54      @Override
55      public ResolutionGroup retrieve(
56              Artifact artifact, ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories)
57              throws ArtifactMetadataRetrievalException {
58          return delegate.retrieve(artifact, localRepository, remoteRepositories);
59      }
60  
61      @Override
62      public List<ArtifactVersion> retrieveAvailableVersions(MetadataResolutionRequest request)
63              throws ArtifactMetadataRetrievalException {
64          return delegate.retrieveAvailableVersions(request);
65      }
66  
67      @Override
68      public List<ArtifactVersion> retrieveAvailableVersions(
69              Artifact artifact, ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories)
70              throws ArtifactMetadataRetrievalException {
71          return delegate.retrieveAvailableVersions(artifact, localRepository, remoteRepositories);
72      }
73  
74      @Override
75      public List<ArtifactVersion> retrieveAvailableVersionsFromDeploymentRepository(
76              Artifact artifact, ArtifactRepository localRepository, ArtifactRepository remoteRepository)
77              throws ArtifactMetadataRetrievalException {
78          return delegate.retrieveAvailableVersionsFromDeploymentRepository(artifact, localRepository, remoteRepository);
79      }
80  }