我正在为声纳3.6更新一个声纳插件,但有一个问题:这个插件包括工作流类,但没有像api 3.6这样的类,有没有其他的类或方法可以做到这一点?
这是我正在编写的代码:
package org.sonar.plugins.redmine.reviews;
import org.sonar.api.ServerExtension;
import org.sonar.api.workflow.Workflow;
import static org.sonar.api.workflow.condition.Conditions.*;
import org.sonar.api.workflow.screen.CommentScreen;
import org.sonar.plugins.redmine.RedmineConstants;
public class RedmineWorkflowBuilder implements ServerExtension {
private final Workflow workflow;
private final RedmineLinkFunction linkFunction;
public RedmineWorkflowBuilder(Workflow workflow, RedmineLinkFunction linkFunction) {
this.workflow = workflow;
this.linkFunction = linkFunction;
}
public void start() {
workflow.addCommand(RedmineConstants.LINK_TO_REDMINE_ID);
workflow.setScreen(RedmineConstants.LINK_TO_REDMINE_ID, new CommentScreen());
workflow.addFunction(RedmineConstants.LINK_TO_REDMINE_ID, linkFunction);
// conditions for this function
// - on the review ("IDLE" is the non-persisted status of an non-existing review = when a violation does have a review yet)
workflow.addCondition(RedmineConstants.LINK_TO_REDMINE_ID, not(hasReviewProperty(RedmineConstants.ISSUE_ID)));
workflow.addCondition(RedmineConstants.LINK_TO_REDMINE_ID, statuses("IDLE", "OPEN", "REOPENED"));
// - on the project
workflow.addCondition(RedmineConstants.LINK_TO_REDMINE_ID, hasProjectProperty(RedmineConstants.HOST));
workflow.addCondition(RedmineConstants.LINK_TO_REDMINE_ID, hasProjectProperty(RedmineConstants.API_ACCESS_KEY));
workflow.addCondition(RedmineConstants.LINK_TO_REDMINE_ID, hasProjectProperty(RedmineConstants.PROJECT_KEY));
}
}发布于 2013-06-28 20:32:22
你可以看看SonarQube JIRA插件--它有同样的问题,并且最近更新为支持SonarQube 3.6:
https://stackoverflow.com/questions/17363084
复制相似问题