use of org.codehaus.plexus.configuration.xml.XmlPlexusConfiguration in project maven-plugins by apache.
the class AbstractDeployMojo method configureWagon.
/**
* Configure the Wagon with the information from serverConfigurationMap ( which comes from settings.xml )
*
* @param wagon
* @param repositoryId
* @param settings
* @param container
* @param log
* @throws TransferFailedException
* @todo Remove when {@link WagonManager#getWagon(Repository) is available}. It's available in Maven 2.0.5.
*/
private static void configureWagon(Wagon wagon, String repositoryId, Settings settings, PlexusContainer container, Log log) throws TransferFailedException {
log.debug(" configureWagon ");
// MSITE-25: Make sure that the server settings are inserted
for (Server server : settings.getServers()) {
String id = server.getId();
log.debug("configureWagon server " + id);
if (id != null && id.equals(repositoryId) && (server.getConfiguration() != null)) {
final PlexusConfiguration plexusConf = new XmlPlexusConfiguration((Xpp3Dom) server.getConfiguration());
ComponentConfigurator componentConfigurator = null;
try {
componentConfigurator = (ComponentConfigurator) container.lookup(ComponentConfigurator.ROLE, "basic");
if (isMaven3OrMore()) {
componentConfigurator.configureComponent(wagon, plexusConf, container.getContainerRealm());
} else {
configureWagonWithMaven2(componentConfigurator, wagon, plexusConf, container);
}
} catch (final ComponentLookupException e) {
throw new TransferFailedException("While configuring wagon for \'" + repositoryId + "\': Unable to lookup wagon configurator." + " Wagon configuration cannot be applied.", e);
} catch (ComponentConfigurationException e) {
throw new TransferFailedException("While configuring wagon for \'" + repositoryId + "\': Unable to apply wagon configuration.", e);
} finally {
if (componentConfigurator != null) {
try {
container.release(componentConfigurator);
} catch (ComponentLifecycleException e) {
log.error("Problem releasing configurator - ignoring: " + e.getMessage());
}
}
}
}
}
}
use of org.codehaus.plexus.configuration.xml.XmlPlexusConfiguration in project maven-plugins by apache.
the class ArtifactTypeMappingServiceTest method testConfigWithSameCustomType.
public void testConfigWithSameCustomType() {
try {
XmlPlexusConfiguration rootConfig = new XmlPlexusConfiguration("dummy");
XmlPlexusConfiguration childConfig = new XmlPlexusConfiguration(ArtifactTypeMappingService.ARTIFACT_TYPE_MAPPING_ELEMENT);
childConfig.setAttribute("type", "generic");
childConfig.setAttribute("mapping", "rar");
XmlPlexusConfiguration childConfig2 = new XmlPlexusConfiguration(ArtifactTypeMappingService.ARTIFACT_TYPE_MAPPING_ELEMENT);
childConfig.setAttribute("type", "generic");
childConfig.setAttribute("mapping", "ejb");
rootConfig.addChild(childConfig);
rootConfig.addChild(childConfig2);
ArtifactTypeMappingService service = new ArtifactTypeMappingService();
service.configure(rootConfig);
fail("Should have failed");
} catch (EarPluginException e) {
// OK
} catch (PlexusConfigurationException e) {
e.printStackTrace();
fail("Unexpected " + e.getMessage());
}
}
use of org.codehaus.plexus.configuration.xml.XmlPlexusConfiguration in project maven-plugins by apache.
the class ArtifactTypeMappingServiceTest method getDefaultService.
protected ArtifactTypeMappingService getDefaultService() {
try {
ArtifactTypeMappingService service = new ArtifactTypeMappingService();
service.configure(new XmlPlexusConfiguration("dummy"));
return service;
} catch (EarPluginException e) {
e.printStackTrace();
fail(e.getMessage());
} catch (PlexusConfigurationException e) {
e.printStackTrace();
fail(e.getMessage());
}
// Won't occur
return null;
}
use of org.codehaus.plexus.configuration.xml.XmlPlexusConfiguration in project maven-plugins by apache.
the class AntrunXmlPlexusConfigurationWriterTest method setUp.
@Before
public void setUp() throws IOException {
configurationWriter = new AntrunXmlPlexusConfigurationWriter();
configuration = new XmlPlexusConfiguration("target");
configuration.setAttribute("name", TARGET_NAME);
file = folder.newFile();
}
use of org.codehaus.plexus.configuration.xml.XmlPlexusConfiguration in project sonatype-aether by sonatype.
the class PlexusWagonConfigurator method configure.
public void configure(Wagon wagon, Object configuration) throws Exception {
PlexusConfiguration config = null;
if (configuration instanceof PlexusConfiguration) {
config = (PlexusConfiguration) configuration;
} else if (configuration instanceof Xpp3Dom) {
config = new XmlPlexusConfiguration((Xpp3Dom) configuration);
} else if (configuration == null) {
return;
} else {
throw new IllegalArgumentException("Unexpected configuration type: " + configuration.getClass().getName());
}
WagonComponentConfigurator configurator = new WagonComponentConfigurator();
configurator.configureComponent(wagon, config, container.getContainerRealm());
}
Aggregations