diff options
author | Mickael Istria | 2018-11-22 13:38:36 +0000 |
---|---|---|
committer | Mickael Istria | 2019-05-09 11:05:15 +0000 |
commit | d0cd1dbaf370f7e7602c21ed653abc1e4f825f0a (patch) | |
tree | b369a92985c8f3803678bb9d5c03728808e7c21a /m2e-maven-runtime | |
parent | c9e4eb3dd7ca4585b93e226d6258a3cb9f9f4170 (diff) | |
download | m2e-core-d0cd1dbaf370f7e7602c21ed653abc1e4f825f0a.tar.gz m2e-core-d0cd1dbaf370f7e7602c21ed653abc1e4f825f0a.tar.xz m2e-core-d0cd1dbaf370f7e7602c21ed653abc1e4f825f0a.zip |
Bug 515668 - Introduce APIs to group MavenProject reads
Using ProjectBuilder.build(singlePom...) has a speed and memory
complexity of O(depth(project)) where depth(project) is the number of
parents (recursively). Iterating on this over N projects lead to a
pseudo-quadratic cost O(N*maxProjectDepth) where maxProjectDepth can be
up to N-1.
Instead, we introduce APIs that take advantage
ProjectBuilder.build(multiplePom...) which has a complexity of O(N).
For Apache Camel that is 700+ modules, these new APIs instantiate 700+
MavenProject instead of ~4000 (since many modules have a depth of 5/6)
like legacy API do.
Change-Id: Ica74542eb8db6833de3b796bfad8c07c2ae9b002
Signed-off-by: Mickael Istria <mistria@redhat.com>
Diffstat (limited to 'm2e-maven-runtime')
0 files changed, 0 insertions, 0 deletions