tree b392ccc0bfd843ed5cd6fb8db2b94a80adbdafe3
parent 0dc92e510337d72bbf3357a1df356e6aeb84d61a
author gurkerl83 <markus_gritsch@gmx.de> 1603722869 +0100
committer Andrew Gaul <andrew@gaul.org> 1612098239 +0900

Remove duplicated finder exception for cloudsigma

In the source code of JClouds cloudsigma as a keyword gets not used anywhere. In the JClouds-Lab project, cloudSigma is available both as an API and multiple provider modules. Because the project module from JClouds serves as a parent module for all JClouds-Labs modules, it seems reasonable to maintain those rules in the JClouds project module.

After inspecting the JClouds Lab source code, group artifact combinations of

<groupId>org.apache.jclouds.api</groupId>
<artifactId>cloudsigma</artifactId>

..., respectively

<groupId>org.apache.jclouds.provider</groupId><artifactId>cloudsigma-lvs</artifactId>

..., are not available.

Cloudsigma in Lab uses the following group artifact combinations, all with a "2" prefix.

<groupId>org.apache.jclouds.labs</groupId
<artifactId>cloudsigma (2)</artifactId>

<groupId>org.apache.jclouds.labs</groupId>
<artifactId>cloudsigma (2) -hnl</artifactId>

Loading those bundles into an OSGi runtime, a runtime collision happens because the API exports the identical packages as the provider modules.

Although this was the case in a previous version, it has since been corrected.

https://github.com/apache/jclouds-labs/commit/e7885359a7755ac5ad6298f35b7547a31e1c5548

This commit removes the exception handling.
