Skip to content

Commit c93f920

Browse files
committed
fix for GRAILS-6467 "List plugins auth failure with svn repo"
1 parent 1cbdd63 commit c93f920

File tree

1 file changed

+14
-9
lines changed

1 file changed

+14
-9
lines changed

src/java/org/codehaus/groovy/grails/resolve/GrailsRepoResolver.java

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,24 +16,23 @@
1616

1717
import groovy.util.XmlSlurper;
1818
import groovy.util.slurpersupport.GPathResult;
19-
20-
import java.io.File;
21-
import java.io.IOException;
22-
import java.net.URL;
23-
import java.util.Date;
24-
import java.util.List;
25-
26-
import javax.xml.parsers.ParserConfigurationException;
27-
2819
import org.apache.ivy.core.module.descriptor.Artifact;
2920
import org.apache.ivy.core.module.id.ModuleRevisionId;
3021
import org.apache.ivy.plugins.repository.Repository;
3122
import org.apache.ivy.plugins.repository.Resource;
3223
import org.apache.ivy.plugins.resolver.URLResolver;
3324
import org.apache.ivy.plugins.resolver.util.ResolvedResource;
3425
import org.apache.ivy.plugins.resolver.util.ResourceMDParser;
26+
import org.apache.ivy.util.url.IvyAuthenticator;
3527
import org.xml.sax.SAXException;
3628

29+
import javax.xml.parsers.ParserConfigurationException;
30+
import java.io.File;
31+
import java.io.IOException;
32+
import java.net.URL;
33+
import java.util.Date;
34+
import java.util.List;
35+
3736
/**
3837
* Overrides the default Ivy resolver to substitute the release tag in Grails'
3938
* repository format prior to a resolve
@@ -56,10 +55,15 @@ public URL getRepositoryRoot() {
5655

5756
@Override
5857
protected ResolvedResource findResourceUsingPattern(ModuleRevisionId mrid, String pattern, Artifact artifact, ResourceMDParser rmdparser, Date date) {
58+
installIvyAuth();
5959
pattern = transformGrailsRepositoryPattern(mrid, pattern);
6060
return super.findResourceUsingPattern(mrid, pattern, artifact, rmdparser, date);
6161
}
6262

63+
private void installIvyAuth() {
64+
java.net.Authenticator.setDefault(IvyAuthenticator.INSTANCE);
65+
}
66+
6367
public String transformGrailsRepositoryPattern(ModuleRevisionId mrid, String pattern) {
6468
final String revision = mrid.getRevision();
6569
String versionTag;
@@ -80,6 +84,7 @@ public String transformGrailsRepositoryPattern(ModuleRevisionId mrid, String pat
8084
*/
8185
@SuppressWarnings("unchecked")
8286
public GPathResult getPluginList(File localFile) {
87+
installIvyAuth();
8388
try {
8489
final Repository repo = getRepository();
8590
List list = repo.list(repositoryRoot.toString());

0 commit comments

Comments
 (0)