import org.argeo.slc.client.ui.dist.DistPlugin;
import org.argeo.slc.jcr.SlcNames;
import org.argeo.slc.repo.ArtifactIndexer;
-import org.argeo.slc.repo.DistributionBundleIndexer;
import org.argeo.slc.repo.JarFileIndexer;
+import org.argeo.slc.repo.ModularDistributionIndexer;
import org.argeo.slc.repo.PdeSourcesIndexer;
import org.argeo.slc.repo.RepoConstants;
import org.argeo.slc.repo.RepoUtils;
private Keyring keyring;
private Repository repository;
- private ArtifactIndexer artifactIndexer = new ArtifactIndexer();
+ // Relevant default node indexers
+ private PdeSourcesIndexer pdeSourceIndexer = new PdeSourcesIndexer();
+ // WARNING Order is important: must be called in the following order.
+ private ModularDistributionIndexer modularDistributionIndexer = new ModularDistributionIndexer();
private JarFileIndexer jarFileIndexer = new JarFileIndexer();
- private DistributionBundleIndexer distBundleIndexer = new DistributionBundleIndexer();
-
- private PdeSourcesIndexer pdeSourceIndexer = new PdeSourcesIndexer(
- artifactIndexer, jarFileIndexer);
+ private ArtifactIndexer artifactIndexer = new ArtifactIndexer();
public Object execute(ExecutionEvent event) throws ExecutionException {
String targetRepoPath = event.getParameter(PARAM_TARGET_REPO_PATH);
if (jarFileIndexer.support(node.getPath()))
if (artifactIndexer.support(node.getPath())) {
monitor.subTask(node.getName());
- artifactIndexer.index(node);
+ modularDistributionIndexer.index(node);
jarFileIndexer.index(node);
- distBundleIndexer.index(node);
- node.getSession().save();
+ artifactIndexer.index(node);
+ if (node.getSession().hasPendingChanges()) {
+ node.getSession().save();
+ if (log.isDebugEnabled())
+ log.debug("Processed jar artifact "
+ + node.getPath());
+ }
monitor.worked(1);
- if (log.isDebugEnabled())
- log.debug("Processed artifact "
- + node.getPath());
}
+ } else if (node.getName().endsWith(".pom")) {
+ // Removed: we do not support binaries concept anymore.
+ // if (distBundleIndexer.support(node.getPath()))
+ // distBundleIndexer.index(node);
+ if (artifactIndexer.support(node.getPath()))
+ artifactIndexer.index(node);
+ if (node.getSession().hasPendingChanges()) {
+ node.getSession().save();
+ if (log.isDebugEnabled())
+ log.debug("Processed pom artifact "
+ + node.getPath());
+ }
+ monitor.worked(1);
} else {
monitor.worked(1);
}