diff --git a/README.md b/README.md index daef7f4..87b45bc 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ To deserialize a CodeTF file using these objects, simply deserialize with Jackso ## Gradle ```kotlin -implementation("io.codemodder:codetf-java:3.1.1") +implementation("io.codemodder:codetf-java:3.2.0") ``` ## Maven @@ -25,7 +25,7 @@ implementation("io.codemodder:codetf-java:3.1.1") io.codemodder codetf-java - 3.1.1 + 3.2.0 ``` diff --git a/pom.xml b/pom.xml index 85600a7..af7c42f 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ io.codemodder codetf-java - 3.1.1 + 3.2.0 codetf-java diff --git a/src/main/java/io/codemodder/codetf/CodeTFResult.java b/src/main/java/io/codemodder/codetf/CodeTFResult.java index 6ffedf4..08e7efb 100644 --- a/src/main/java/io/codemodder/codetf/CodeTFResult.java +++ b/src/main/java/io/codemodder/codetf/CodeTFResult.java @@ -10,7 +10,7 @@ public final class CodeTFResult { private final String codemod; private final String summary; private final String description; - private final Optional detectionTool; + private final DetectionTool detectionTool; private final Set failedFiles; private final List references; private final Map properties; @@ -29,7 +29,7 @@ public CodeTFResult( this.codemod = CodeTFValidator.requireNonBlank(codemod); this.summary = CodeTFValidator.requireNonBlank(summary); this.description = CodeTFValidator.requireNonBlank(description); - this.detectionTool = Optional.ofNullable(detectionTool); + this.detectionTool = detectionTool; this.failedFiles = CodeTFValidator.toImmutableCopyOrEmptyOnNull(failedFiles); this.references = CodeTFValidator.toImmutableCopyOrEmptyOnNull(references); this.properties = CodeTFValidator.toImmutableCopyOrEmptyOnNull(properties); @@ -48,7 +48,7 @@ public String getDescription() { return description; } - public Optional getDetectionTool() { + public DetectionTool getDetectionTool() { return detectionTool; } @@ -113,7 +113,7 @@ public CodeTFResult build() { originalResult.getCodemod(), updatedSummary != null ? updatedSummary : originalResult.getSummary(), updatedDescription != null ? updatedDescription : originalResult.getDescription(), - originalResult.detectionTool.orElse(null), + originalResult.detectionTool, originalResult.getFailedFiles(), updatedReferences != null ? updatedReferences : originalResult.getReferences(), originalResult.getProperties(), diff --git a/src/main/java/io/codemodder/codetf/DetectorRule.java b/src/main/java/io/codemodder/codetf/DetectorRule.java index d318df1..5d4e874 100644 --- a/src/main/java/io/codemodder/codetf/DetectorRule.java +++ b/src/main/java/io/codemodder/codetf/DetectorRule.java @@ -3,13 +3,12 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonProperty; import java.util.Objects; -import java.util.Optional; /** Describes the "rule" section of a detection tool. */ public final class DetectorRule { private final String id; private final String name; - private final Optional url; + private final String url; @JsonCreator public DetectorRule( @@ -18,7 +17,7 @@ public DetectorRule( @JsonProperty(value = "url", index = 3) String url) { this.id = Objects.requireNonNull(id); this.name = Objects.requireNonNull(name); - this.url = Optional.ofNullable(url); + this.url = url; } public String getId() { @@ -29,7 +28,7 @@ public String getName() { return name; } - public Optional getUrl() { + public String getUrl() { return url; } } diff --git a/src/test/java/io/codemodder/codetf/CodeTFResultTest.java b/src/test/java/io/codemodder/codetf/CodeTFResultTest.java index 8a6ca58..fd7cb9f 100644 --- a/src/test/java/io/codemodder/codetf/CodeTFResultTest.java +++ b/src/test/java/io/codemodder/codetf/CodeTFResultTest.java @@ -95,7 +95,7 @@ void it_creates_detection_tool_with_empty_url() { assertEquals("rule", tool.getRule().getId()); assertEquals("Here's a rule", tool.getRule().getName()); assertEquals(2, tool.getFindings().size()); - assertTrue(tool.getRule().getUrl().isEmpty()); + assertNull(tool.getRule().getUrl()); } @Test @@ -112,8 +112,8 @@ void it_creates_detection_tool_with_url() { assertEquals("rule", tool.getRule().getId()); assertEquals("Here's a rule", tool.getRule().getName()); assertEquals(2, tool.getFindings().size()); - assertTrue(tool.getRule().getUrl().isPresent()); - assertEquals("https://example.com", tool.getRule().getUrl().get()); + assertNotNull(tool.getRule().getUrl()); + assertEquals("https://example.com", tool.getRule().getUrl()); } @Test