@@ -112,11 +112,12 @@ public class SnykExtendedLanguageClient extends LanguageClientImpl {
112112 private Object chSyncObject = new Object ();
113113 private CommandHandler commandHandler ;
114114
115- private static SnykExtendedLanguageClient instance = null ;
115+ private static SnykExtendedLanguageClient instance ;
116116
117117 public SnykExtendedLanguageClient () {
118118 super ();
119- instance = this ;
119+ //TODO, fix this; Identifies a possible unsafe usage of a static field.
120+ instance = this ; //NOPMD
120121 om .configure (DeserializationFeature .FAIL_ON_UNKNOWN_PROPERTIES , false );
121122 registerPluginInstalledEventTask ();
122123 registerRefreshFeatureFlagsTask ();
@@ -376,6 +377,8 @@ public void snykScan(SnykScanParam param) {
376377 productTreeNode .setErrorMessage (param .getErrorMessage ());
377378 }
378379 break ;
380+ default :
381+ break ;
379382 }
380383 setNodeState (param .getStatus (), affectedProductTreeNodes , issueCache );
381384 this .toolView .refreshBrowser (param .getStatus ());
@@ -435,7 +438,7 @@ private void setNodeState(String status, Set<ProductTreeNode> affectedProductTre
435438 if (affectedProductTreeNodes .isEmpty ()) {
436439 return ;
437440 }
438- var nodeText = "" ;
441+ String nodeText ;
439442
440443 if (status .equals (SCAN_STATE_IN_PROGRESS )) {
441444 nodeText = NODE_TEXT_SCANNING ;
@@ -535,19 +538,21 @@ public void publishDiagnostics316(PublishDiagnostics316Param param) {
535538 populateIssueCache (param , filePath );
536539 }
537540
538- private void populateFileAndIssueNodes (ProductTreeNode productTreeNode ,
539- SnykIssueCache issueCache ) {
541+ private void populateFileAndIssueNodes (ProductTreeNode productTreeNode , SnykIssueCache issueCache ) {
540542 var cacheHashMap = issueCache .getCacheByDisplayProduct (productTreeNode .getProduct ());
543+ List <Issue > issuesList = new ArrayList <>();
541544 for (var kv : cacheHashMap .entrySet ()) {
542545 var fileName = kv .getKey ();
543- var issues = new ArrayList <>(kv .getValue ());
546+ issuesList .clear (); // Clear the list instead of creating a new one
547+ issuesList .addAll (kv .getValue ());
544548
545- if (issues .isEmpty ())
549+ if (issuesList .isEmpty ())
546550 continue ;
547- FileTreeNode fileNode = new FileTreeNode (fileName );
551+
552+ FileTreeNode fileNode = new FileTreeNode (fileName ); //NOPMD
548553 toolView .addFileNode (productTreeNode , fileNode );
549- for (Issue issue : issues ) {
550- toolView .addIssueNode (fileNode , new IssueTreeNode (issue ));
554+ for (Issue issue : issuesList ) {
555+ toolView .addIssueNode (fileNode , new IssueTreeNode (issue )); //NOPMD
551556 }
552557 }
553558 }
@@ -587,6 +592,8 @@ private void populateIssueCache(PublishDiagnostics316Param param, String filePat
587592 case SCAN_PARAMS_IAC :
588593 issueCache .addIacIssues (filePath , issueList );
589594 break ;
595+ default :
596+ break ;
590597 }
591598 }
592599
0 commit comments