Skip to content

Commit 86f1e7c

Browse files
committed
sca remediation changes
1 parent 3c297d4 commit 86f1e7c

File tree

2 files changed

+24
-4
lines changed

2 files changed

+24
-4
lines changed

src/main/java/com/checkmarx/ast/wrapper/CxConstants.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,4 +53,10 @@ public final class CxConstants {
5353
static final String ADDITONAL_PARAMS = "--additional-params";
5454
static final String ENGINE = "--engine";
5555
static final String SUB_CMD_KICS_REALTIME = "kics-realtime";
56+
static final String SCA_REMEDIATION_PACKAGE_FILE = "--package-file";
57+
static final String SCA_REMEDIATION_PACKAGE = "--package";
58+
static final String SCA_REMEDIATION_PACKAGE_VERSION = "--package-version";
59+
static final String CMD_UTILS = "utils";
60+
static final String CMD_REMEDIATION = "remediation";
61+
static final String SUB_CMD_REMEDIATION_SCA = "sca";
5662
}

src/main/java/com/checkmarx/ast/wrapper/CxWrapper.java

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,16 +12,14 @@
1212
import com.fasterxml.jackson.databind.ObjectMapper;
1313
import com.fasterxml.jackson.databind.type.CollectionType;
1414
import com.fasterxml.jackson.databind.type.TypeFactory;
15+
import jdk.nashorn.internal.runtime.regexp.joni.ast.StringNode;
1516
import lombok.NonNull;
1617
import org.apache.commons.lang3.StringUtils;
1718
import org.slf4j.Logger;
1819
import org.slf4j.LoggerFactory;
1920
import java.io.IOException;
2021
import java.nio.file.Files;
21-
import java.util.ArrayList;
22-
import java.util.List;
23-
import java.util.Map;
24-
import java.util.UUID;
22+
import java.util.*;
2523

2624
public class CxWrapper {
2725

@@ -286,6 +284,22 @@ private List<String> buildResultsArgumentsArray(UUID scanId, ReportFormat report
286284
return arguments;
287285
}
288286

287+
public String scaRemediation(String packageFile, String packages, String packageVersion) throws CxException, IOException, InterruptedException {
288+
List<String> arguments = new ArrayList<>();
289+
arguments.add(CxConstants.CMD_UTILS);
290+
arguments.add(CxConstants.CMD_REMEDIATION);
291+
arguments.add(CxConstants.SUB_CMD_REMEDIATION_SCA);
292+
arguments.add(CxConstants.SCA_REMEDIATION_PACKAGE_FILE);
293+
arguments.add(packageFile);
294+
arguments.add(CxConstants.SCA_REMEDIATION_PACKAGE);
295+
arguments.add(packages);
296+
arguments.add(CxConstants.SCA_REMEDIATION_PACKAGE_VERSION);
297+
arguments.add(packageVersion);
298+
299+
return Execution.executeCommand(withConfigArguments(arguments), logger, line -> null);
300+
301+
}
302+
289303
public int getResultsBfl(@NonNull UUID scanId, @NonNull String queryId, List<Node> resultNodes)
290304
throws IOException, InterruptedException, CxException {
291305
this.logger.info("Executing 'results bfl' command using the CLI.");

0 commit comments

Comments
 (0)