import org.argeo.osgi.boot.OsgiBootUtils;
import org.osgi.framework.Version;
-public class FsA2Source extends ProvisioningSource {
+/** A file system {@link AbstractProvisioningSource} in A2 format. */
+public class FsA2Source extends AbstractProvisioningSource implements A2Source {
private final Path base;
public FsA2Source(Path base) {
String contributionId = contributionPath.getFileName().toString();
if (A2Contribution.BOOT.equals(contributionId))// skip boot
continue contributions;
- A2Contribution contribution = new A2Contribution(this, contributionId);
+ A2Contribution contribution = getOrAddContribution(contributionId);
contributions.add(contribution);
}
}
if (!"jar".equals(ext))
continue modules;
String moduleName = moduleFileName.substring(0, lastDot);
- int firstDash = moduleName.indexOf('-');
- String versionStr = moduleName.substring(firstDash + 1);
- String componentName = moduleName.substring(0, firstDash);
+ if (moduleName.endsWith("-SNAPSHOT"))
+ moduleName = moduleName.substring(0, moduleName.length() - "-SNAPSHOT".length());
+ int lastDash = moduleName.lastIndexOf('-');
+ String versionStr = moduleName.substring(lastDash + 1);
+ String componentName = moduleName.substring(0, lastDash);
// if(versionStr.endsWith("-SNAPSHOT")) {
// versionStr = readVersionFromModule(modulePath);
// }