瀏覽代碼

refactor: prefer constructor injection

weipengtao 3 月之前
父節點
當前提交
9608b2cbd8

+ 6 - 1
web/src/main/java/cn/seecoder/web/controller/commit/CommitLinkController.java

@@ -22,8 +22,13 @@ import java.util.List;
 public class CommitLinkController {
     private final static String LINK_FAIL_ERROR = "Commit Link Failed! No Such Bug or Task!";
 
+    private final CommitLinkService commitLinkService;
+
     @Autowired
-    CommitLinkService commitLinkService;
+    public CommitLinkController(CommitLinkService commitLinkService) {
+        this.commitLinkService = commitLinkService;
+    }
+
     /**
      * @author chenyz
      * @date 2021/2/4

+ 5 - 1
web/src/main/java/cn/seecoder/web/controller/commit/CommitQualityController.java

@@ -17,8 +17,12 @@ import org.springframework.web.bind.annotation.*;
 public class CommitQualityController {
     private final static String QUALITY_QUERY_ERROR = "查询代码版本质量失败";
 
+    private final CommitQualityService commitQualityService;
+
     @Autowired
-    CommitQualityService commitQualityService;
+    public CommitQualityController(CommitQualityService commitQualityService) {
+        this.commitQualityService = commitQualityService;
+    }
 
     @ApiOperation(value = "sonarqube回调接口", httpMethod = "POST")
     @PostMapping("/sonar_hook")

+ 5 - 2
web/src/main/java/cn/seecoder/web/controller/tree/TreeNodesController.java

@@ -10,7 +10,6 @@ import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import cn.seecoder.common.exceptions.ServiceException;
-import cn.seecoder.web.dao.tree.TreeNodeMapper;
 import cn.seecoder.web.model.vo.Response;
 import cn.seecoder.web.service.tree.TreeNodeService;
 
@@ -24,8 +23,12 @@ import java.util.List;
 @RestController
 @RequestMapping("/tree")
 public class TreeNodesController {
+    private final TreeNodeService treeNodeService;
+
     @Autowired
-    private TreeNodeService treeNodeService;
+    public TreeNodesController(TreeNodeService treeNodeService) {
+        this.treeNodeService = treeNodeService;
+    }
 
     /**
      * 获取某个项目所有需求情况

+ 5 - 5
web/src/main/java/cn/seecoder/web/service/impl/apitest/ApiTestServiceImpl.java

@@ -49,14 +49,15 @@ public class ApiTestServiceImpl implements ApiTestService {
 
     private final PipelineRecordMapper pipelineRecordMapper;
 
-    @Autowired
-    private UserMapper userMapper;
+    private final UserMapper userMapper;
 
     @Autowired
-    public ApiTestServiceImpl(ApiTestMapper apiTestMapper, PipelineMapper pipelineMapper, PipelineRecordMapper pipelineRecordMapper) {
+    public ApiTestServiceImpl(ApiTestMapper apiTestMapper, PipelineMapper pipelineMapper,
+                              PipelineRecordMapper pipelineRecordMapper, UserMapper userMapper) {
         this.apiTestMapper = apiTestMapper;
         this.pipelineMapper = pipelineMapper;
         this.pipelineRecordMapper = pipelineRecordMapper;
+        this.userMapper = userMapper;
     }
 
 
@@ -241,8 +242,7 @@ public class ApiTestServiceImpl implements ApiTestService {
                 }
             }
         };
-        ApiTestServiceImpl apiTestService = new ApiTestServiceImpl(apiTestMapper, pipelineMapper, pipelineRecordMapper);
-        apiTestService.startTaskAllInOnce(10, task);
+        startTaskAllInOnce(10, task);
         Integer max_time = Collections.max(timeList);
         Integer min_time = Collections.min(timeList);
         Integer sum_time = 0;

+ 5 - 1
web/src/main/java/cn/seecoder/web/service/impl/branch/BranchServiceImpl.java

@@ -16,8 +16,12 @@ public class BranchServiceImpl implements BranchService {
 
     private static final Logger log = LoggerFactory.getLogger(BranchServiceImpl.class);
 
+    private final SeecoderGitlabApi seecoderGitlabApi;
+
     @Autowired
-    SeecoderGitlabApi seecoderGitlabApi;
+    public BranchServiceImpl(SeecoderGitlabApi seecoderGitlabApi) {
+        this.seecoderGitlabApi = seecoderGitlabApi;
+    }
 
     @Override
     public List<BranchVO> getAllBranches(Integer projectId) {

+ 19 - 9
web/src/main/java/cn/seecoder/web/service/impl/commit/CommitLinkServiceImpl.java

@@ -19,6 +19,7 @@ import cn.seecoder.web.service.tree.TreeNodeService;
 import com.alibaba.fastjson.JSONObject;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
@@ -27,16 +28,25 @@ import java.util.stream.Collectors;
 @Service
 @Slf4j
 public class CommitLinkServiceImpl implements CommitLinkService {
+    private final CommitMapper commitMapper;
+
+    private final TreeNodeService treeNodeService;
+
+    private final BugListService bugListService;
+
+    private final CommitService commitService;
+
+    private final UserMapper userMapper;
+
     @Autowired
-    private CommitMapper commitMapper;
-    @Autowired
-    private TreeNodeService treeNodeService;
-    @Autowired
-    private BugListService bugListService;
-    @Autowired
-    private CommitService commitService;
-    @Autowired
-    private UserMapper userMapper;
+    public CommitLinkServiceImpl(CommitMapper commitMapper, TreeNodeService treeNodeService,
+                                 BugListService bugListService, @Lazy CommitService commitService, UserMapper userMapper) {
+        this.commitMapper = commitMapper;
+        this.treeNodeService = treeNodeService;
+        this.bugListService = bugListService;
+        this.commitService = commitService;
+        this.userMapper = userMapper;
+    }
 
     @Override
     public void linkCommitByInfoFromGitlab(GitWebHookVO gitWebHookVO) {

+ 7 - 3
web/src/main/java/cn/seecoder/web/service/impl/commit/CommitQualityServiceImpl.java

@@ -20,11 +20,15 @@ import java.util.*;
 @Slf4j
 @Service
 public class CommitQualityServiceImpl implements CommitQualityService {
-    @Autowired
-    CommitQualityMapper commitQualityMapper;
+    private final CommitQualityMapper commitQualityMapper;
+
+    private final ApplicationProperties applicationProperties;
 
     @Autowired
-    private ApplicationProperties applicationProperties;
+    public CommitQualityServiceImpl(CommitQualityMapper commitQualityMapper, ApplicationProperties applicationProperties) {
+        this.commitQualityMapper = commitQualityMapper;
+        this.applicationProperties = applicationProperties;
+    }
 
     @Override
     public boolean processSonarResult(SonarResultHookVO sonarResultHookVO) {

+ 8 - 7
web/src/main/java/cn/seecoder/web/service/impl/commit/CommitServiceImpl.java

@@ -47,17 +47,18 @@ public class CommitServiceImpl implements CommitService {
 
     private final SeecoderGitlabApi seecoderGitlabApi;
 
+    private final CommitLinkService commitLinkService;
+
+    private final CommitQualityService commitQualityService;
+
     @Autowired
-    public CommitServiceImpl(SeecoderGitlabApi seecoderGitlabApi) {
+    public CommitServiceImpl(SeecoderGitlabApi seecoderGitlabApi, CommitLinkService commitLinkService,
+                             CommitQualityService commitQualityService) {
         this.seecoderGitlabApi = seecoderGitlabApi;
+        this.commitLinkService = commitLinkService;
+        this.commitQualityService = commitQualityService;
     }
 
-    @Autowired
-    private CommitLinkService commitLinkService;
-    @Autowired
-    private CommitQualityService commitQualityService;
-
-
     @Override
     public List<CommitVO> getCommitsByBranchName(Integer projectId, String BranchName) {
         List<CommitVO> allCommits = new ArrayList<CommitVO>();

+ 5 - 3
web/src/main/java/cn/seecoder/web/service/impl/pipeline/PipelineServiceImpl.java

@@ -46,17 +46,19 @@ public class PipelineServiceImpl implements PipelineService {
 
     private final DeploymentService deploymentService;
 
-    @Autowired
-    private DeploymentMapper deploymentMapper;
+    private final DeploymentMapper deploymentMapper;
 
 
     @Autowired
-    public PipelineServiceImpl(UserService userService, PipelineRecordMapper pipelineRecordMapper, PipelineMapper pipelineMapper, UserMapper userMapper, DeploymentService deploymentService) {
+    public PipelineServiceImpl(UserService userService, PipelineRecordMapper pipelineRecordMapper,
+                               PipelineMapper pipelineMapper, UserMapper userMapper,
+                               DeploymentService deploymentService, DeploymentMapper deploymentMapper) {
         this.userService = userService;
         this.pipelineRecordMapper = pipelineRecordMapper;
         this.pipelineMapper = pipelineMapper;
         this.userMapper = userMapper;
         this.deploymentService = deploymentService;
+        this.deploymentMapper = deploymentMapper;
     }