Kaynağa Gözat

SONAR-11465 Deprecate task extensions

tags/7.6
Julien HENRY 5 yıl önce
ebeveyn
işleme
e48d9b2948

+ 4
- 0
sonar-plugin-api/src/main/java/org/sonar/api/CoreProperties.java Dosyayı Görüntüle

@@ -351,12 +351,16 @@ public interface CoreProperties {

/**
* @since 3.5
* @deprecated since 7.6
*/
@Deprecated
String TASK = "sonar.task";

/**
* @since 3.6
* @deprecated since 7.6
*/
@Deprecated
String SCAN_TASK = "scan";

/**

+ 2
- 0
sonar-plugin-api/src/main/java/org/sonar/api/task/Task.java Dosyayı Görüntüle

@@ -25,9 +25,11 @@ import org.sonar.api.batch.InstantiationStrategy;
/**
* Implement this interface to provide the behavior of a task.
* @since 3.6
* @deprecated since 7.6
*/
@ScannerSide
@InstantiationStrategy(InstantiationStrategy.PER_TASK)
@Deprecated
public interface Task {

void execute();

+ 2
- 0
sonar-plugin-api/src/main/java/org/sonar/api/task/TaskDefinition.java Dosyayı Görüntüle

@@ -30,10 +30,12 @@ import org.sonar.api.batch.ScannerSide;
* Register and describe a {@link TaskExtension}.
*
* @since 3.6
* @deprecated since 7.6
*/
@ExtensionPoint
@ScannerSide
@InstantiationStrategy(InstantiationStrategy.PER_TASK)
@Deprecated
public class TaskDefinition implements Comparable<TaskDefinition> {
static final String KEY_PATTERN = "[a-zA-Z0-9\\-\\_]+";


+ 8
- 1
sonar-scanner-engine/src/main/java/org/sonar/scanner/task/TaskContainer.java Dosyayı Görüntüle

@@ -25,6 +25,8 @@ import org.sonar.api.CoreProperties;
import org.sonar.api.task.Task;
import org.sonar.api.task.TaskDefinition;
import org.sonar.api.utils.MessageException;
import org.sonar.api.utils.log.Logger;
import org.sonar.api.utils.log.Loggers;
import org.sonar.core.extension.CoreExtensionsInstaller;
import org.sonar.core.platform.ComponentContainer;
import org.sonar.scanner.bootstrap.ExtensionInstaller;
@@ -32,11 +34,13 @@ import org.sonar.scanner.bootstrap.GlobalProperties;

import static org.sonar.api.batch.InstantiationStrategy.PER_TASK;
import static org.sonar.core.extension.CoreExtensionsInstaller.noExtensionFilter;
import static org.sonar.scanner.bootstrap.ExtensionUtils.isInstantiationStrategy;
import static org.sonar.scanner.bootstrap.ExtensionUtils.isDeprecatedScannerSide;
import static org.sonar.scanner.bootstrap.ExtensionUtils.isInstantiationStrategy;

public class TaskContainer extends ComponentContainer {

private static final Logger LOG = Loggers.get(TaskContainer.class);

private final Map<String, String> taskProperties;
private final Object[] components;

@@ -70,6 +74,9 @@ public class TaskContainer extends ComponentContainer {
public void doAfterStart() {
// default value is declared in CorePlugin
String taskKey = StringUtils.defaultIfEmpty(taskProperties.get(CoreProperties.TASK), CoreProperties.SCAN_TASK);
if (!taskKey.equals(CoreProperties.SCAN_TASK)) {
LOG.warn("Scanner tasks are deprecated");
}
// Release memory
taskProperties.clear();


+ 3
- 0
sonar-scanner-engine/src/test/java/org/sonar/scanner/mediumtest/tasks/TasksMediumTest.java Dosyayı Görüntüle

@@ -29,6 +29,7 @@ import org.sonar.api.task.Task;
import org.sonar.api.task.TaskDefinition;
import org.sonar.api.utils.MessageException;
import org.sonar.api.utils.log.LogTester;
import org.sonar.api.utils.log.LoggerLevel;
import org.sonar.scanner.mediumtest.ScannerMediumTester;

import static org.assertj.core.api.Assertions.assertThat;
@@ -59,6 +60,8 @@ public class TasksMediumTest {
return value.contains("Available tasks:") && value.contains("fake: Fake description") && value.contains("broken: Broken description");
}
});

assertThat(logTester.logs(LoggerLevel.WARN)).contains("Scanner tasks are deprecated");
}

@Test

Loading…
İptal
Kaydet