From 3092419fb4768688ed8d26e9b13bcade6cdee597 Mon Sep 17 00:00:00 2001 From: Guillaume Nodet Date: Thu, 3 Oct 2024 18:11:16 +0200 Subject: [PATCH] Add a condition profile based on a simple expression --- api/maven-api-model/src/main/mdo/maven.mdo | 6 + .../impl/model/profile/ConditionParser.java | 429 +++++++++++++++ .../profile/ConditionProfileActivator.java | 138 +++++ .../OperatingSystemProfileActivator.java | 8 +- .../profile/AbstractProfileActivatorTest.java | 61 +++ .../model/profile/ConditionParserTest.java | 261 +++++++++ .../ConditionProfileActivatorTest.java | 506 ++++++++++++++++++ .../profile/FileProfileActivatorTest.java | 144 +++++ .../JdkVersionProfileActivatorTest.java | 198 +++++++ .../OperatingSystemProfileActivatorTest.java | 152 ++++++ .../profile/PropertyProfileActivatorTest.java | 168 ++++++ .../model/profile/SimpleProblemCollector.java | 121 +++++ 12 files changed, 2188 insertions(+), 4 deletions(-) create mode 100644 maven-api-impl/src/main/java/org/apache/maven/internal/impl/model/profile/ConditionParser.java create mode 100644 maven-api-impl/src/main/java/org/apache/maven/internal/impl/model/profile/ConditionProfileActivator.java create mode 100644 maven-api-impl/src/test/java/org/apache/maven/internal/impl/model/profile/AbstractProfileActivatorTest.java create mode 100644 maven-api-impl/src/test/java/org/apache/maven/internal/impl/model/profile/ConditionParserTest.java create mode 100644 maven-api-impl/src/test/java/org/apache/maven/internal/impl/model/profile/ConditionProfileActivatorTest.java create mode 100644 maven-api-impl/src/test/java/org/apache/maven/internal/impl/model/profile/FileProfileActivatorTest.java create mode 100644 maven-api-impl/src/test/java/org/apache/maven/internal/impl/model/profile/JdkVersionProfileActivatorTest.java create mode 100644 maven-api-impl/src/test/java/org/apache/maven/internal/impl/model/profile/OperatingSystemProfileActivatorTest.java create mode 100644 maven-api-impl/src/test/java/org/apache/maven/internal/impl/model/profile/PropertyProfileActivatorTest.java create mode 100644 maven-api-impl/src/test/java/org/apache/maven/internal/impl/model/profile/SimpleProblemCollector.java diff --git a/api/maven-api-model/src/main/mdo/maven.mdo b/api/maven-api-model/src/main/mdo/maven.mdo index d117d403fe00..851d5ab67160 100644 --- a/api/maven-api-model/src/main/mdo/maven.mdo +++ b/api/maven-api-model/src/main/mdo/maven.mdo @@ -2802,6 +2802,12 @@ String Specifies that this profile will be activated based on the project's packaging. + + condition + 4.1.0+ + String + The condition which must be satisfied to activate the profile. +