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