Ok, I've managed to get it working, specifically I have done the
following (is this sane?):

Added to pom.xml

org.apache.maven:maven-settings:2.0.8
org.apache.maven.wagon:wagon-provider-api:2.1

Added to the Mojo:
    /**
     * @component
     * @required
     * @readonly
     */
    private WagonManager wagonManager;

    /**
     * @component
     * @required
     * @readonly
     */
    private MavenSettingsBuilder mavenSettingsBuilder;

...

                            URL url = file.getURL();
                            String endPointUrl = url.getProtocol() +
"://" + url.getAuthority();
                            // Repository Id should be ignored by Wagon ...
                            Repository repository = new Repository(
"additonal-configs", endPointUrl );
                            Wagon wagon = wagonManager.getWagon( repository );;
                            if ( logger.isDebugEnabled() )
                            {
                                Debug debug = new Debug();
                                wagon.addSessionListener( debug );
                                wagon.addTransferListener( debug );
                            }
                            wagon.setTimeout( 1000 );
                            Settings settings =
mavenSettingsBuilder.buildSettings();
                            ProxyInfo proxyInfo = null;
                            if ( settings != null &&
settings.getActiveProxy() != null )
                            {
                                Proxy settingsProxy = settings.getActiveProxy();

                                proxyInfo = new ProxyInfo();
                                proxyInfo.setHost( settingsProxy.getHost() );
                                proxyInfo.setType(
settingsProxy.getProtocol() );
                                proxyInfo.setPort( settingsProxy.getPort() );
                                proxyInfo.setNonProxyHosts(
settingsProxy.getNonProxyHosts() );
                                proxyInfo.setUserName(
settingsProxy.getUsername() );
                                proxyInfo.setPassword(
settingsProxy.getPassword() );
                            }

                            if ( proxyInfo != null )
                            {
                                wagon.connect( repository,
wagonManager.getAuthenticationInfo( repository.getId() ), proxyInfo );
                            }
                            else
                            {
                                wagon.connect( repository,
wagonManager.getAuthenticationInfo( repository.getId() ) );
                            }

                            wagon.get( url.getPath(), projectRelativeFile );

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to