From 03aa0ebb6159dc2c4b0511282e4ed9a303109c55 Mon Sep 17 00:00:00 2001 From: Julien HENRY Date: Tue, 23 Jan 2018 15:06:19 +0100 Subject: [PATCH] SLCORE-167 Introduce a parameter to control SonarLint component lifecycle --- .../api/sonarlint/SonarLintSide.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/sonar-plugin-api/src/main/java/org/sonarsource/api/sonarlint/SonarLintSide.java b/sonar-plugin-api/src/main/java/org/sonarsource/api/sonarlint/SonarLintSide.java index 2922a23abd6..dff8698553e 100644 --- a/sonar-plugin-api/src/main/java/org/sonarsource/api/sonarlint/SonarLintSide.java +++ b/sonar-plugin-api/src/main/java/org/sonarsource/api/sonarlint/SonarLintSide.java @@ -49,4 +49,21 @@ import java.lang.annotation.Target; @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.TYPE) public @interface SonarLintSide { + + /** + * The component will be instantiated for each analysis (could be single or multiple files analysis). + */ + String SINGLE_ANALYSIS = "SINGLE_ANALYSIS"; + + /** + * The component will be instantiated once and reused by all analyses, as long as the SonarLint engine is not restarted. + */ + String MULTIPLE_ANALYSES = "MULTIPLE_ANALYSES"; + + /** + * Control the lifecycle of the component in the IoC container. + * @since 7.0 + */ + String lifespan() default SINGLE_ANALYSIS; + } -- 2.39.5