package aQute.bnd.differ;
import java.util.ArrayList;
import java.util.List;
import aQute.bnd.service.RepositoryPlugin;
import aQute.bnd.service.diff.Delta;
import aQute.bnd.service.diff.Type;
import aQute.bnd.version.Version;
public class RepositoryElement {
public static Element getTree(RepositoryPlugin repo) throws Exception {
List<Element> programs = new ArrayList<Element>();
for (String bsn : repo.list(null)) {
List<Element> versions = new ArrayList<Element>();
for (Version version : repo.versions(bsn)) {
versions.add(new Element(Type.VERSION, version.toString()));
}
programs.add(new Element(Type.PROGRAM, bsn, versions, Delta.MINOR, Delta.MAJOR, null));
}
return new Element(Type.REPO, repo.getName(), programs, Delta.MINOR, Delta.MAJOR, repo.getLocation());
}
}