Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat: add required node labels #100

Merged
merged 1 commit into from
Nov 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

<groupId>org.molgenis</groupId>
<artifactId>vip-decision-tree</artifactId>
<version>4.1.4</version>
<version>5.0.0</version>

<name>vip-decision-tree</name>
<description>Decision tree module for filtering and labelling VCF files</description>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ public class BoolMultiNode implements DecisionNode {

@NonNull NodeType nodeType = NodeType.DECISION;
@NonNull String id;
@NonNull String label;
String description;

@NonNull DecisionType decisionType = DecisionType.BOOL_MULTI;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ public class BoolNode implements DecisionNode {

@NonNull NodeType nodeType = NodeType.DECISION;
@NonNull String id;
@NonNull String label;
String description;

@NonNull DecisionType decisionType = DecisionType.BOOL;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ public class CategoricalNode implements DecisionNode {

@NonNull DecisionType decisionType = DecisionType.CATEGORICAL;
@NonNull String id;
@NonNull String label;
String description;

@NonNull NodeType nodeType = NodeType.DECISION;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ public class ExistsNode implements DecisionNode {

@NonNull NodeType nodeType = NodeType.DECISION;
@NonNull String id;
@NonNull String label;
@NonNull Field field;
String description;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
public class LeafNode implements Node {
@NonNull NodeType nodeType = NodeType.LEAF;
@NonNull String id;
@NonNull String label;
String description;

@NonNull String clazz;
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,6 @@ public interface Node {
String getId();

String getDescription();

String getLabel();
}
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ public class ConfigBoolMultiNode implements ConfigNode {

@NonNull NodeType nodeType = NodeType.DECISION;
@NonNull String id;
@NonNull String label;

@NonNull DecisionType decisionType = DecisionType.BOOL;
@NonNull List<String> fields;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ public class ConfigBoolNode implements ConfigNode {
@NonNull Type type = Type.BOOL;

String description;
@NonNull String label;
@NonNull ConfigBoolQuery query;
@NonNull ConfigNodeOutcome outcomeTrue;
@NonNull ConfigNodeOutcome outcomeFalse;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
public class ConfigCategoricalNode implements ConfigNode {
@NonNull Type type = Type.CATEGORICAL;
String description;
@NonNull String label;

@NonNull String field;
@NonNull Map<String, ConfigNodeOutcome> outcomeMap;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ public class ConfigExistsNode implements ConfigNode {
@NonNull Type type = Type.EXISTS;
@NonNull String field;
String description;
@NonNull String label;
@NonNull ConfigNodeOutcome outcomeTrue;
@NonNull ConfigNodeOutcome outcomeFalse;
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package org.molgenis.vcf.decisiontree.loader.model;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyDescription;
import lombok.AccessLevel;
import lombok.AllArgsConstructor;
import lombok.Builder;
Expand All @@ -16,6 +17,7 @@ public class ConfigLeafNode implements ConfigNode {
@NonNull Type type = Type.LEAF;

String description;
@NonNull String label;

@JsonProperty("class")
String clazz;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,7 @@ enum Type {

@JsonPropertyDescription
String getDescription();

@JsonPropertyDescription
String getLabel();
}
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,7 @@ private Node toExistsNode(VcfMetadata vcfMetadata, String id, ConfigExistsNode c
Field field = vcfMetadata.getField(configNode.getField());
return ExistsNode.builder()
.id(id)
.label(configNode.getLabel())
.field(field)
.description(configNode.getDescription())
.build();
Expand All @@ -168,6 +169,7 @@ private BoolNode toBoolNode(VcfMetadata vcfMetadata, String id, ConfigBoolNode n
BoolQuery boolQuery = toBoolQuery(vcfMetadata, nodeConfig.getQuery(), files);
return BoolNode.builder()
.id(id)
.label(nodeConfig.getLabel())
.description(nodeConfig.getDescription())
.query(boolQuery)
.build();
Expand Down Expand Up @@ -198,6 +200,7 @@ private BoolMultiNode toBoolMultiNode(VcfMetadata vcfMetadata, String id,
.toList();
return BoolMultiNode.builder()
.id(id)
.label(nodeConfig.getLabel())
.fields(fields)
.description(nodeConfig.getDescription())
.clauses(boolMultiQueries)
Expand Down Expand Up @@ -286,6 +289,7 @@ private CategoricalNode toCategoricalNode(
queryValidator.validateCategoricalNode(field);
return CategoricalNode.builder()
.id(id)
.label(nodeConfig.getLabel())
.description(nodeConfig.getDescription())
.field(field)
.build();
Expand All @@ -294,6 +298,7 @@ private CategoricalNode toCategoricalNode(
private LeafNode toLeafNode(String id, ConfigLeafNode nodeConfig) {
return LeafNode.builder()
.id(id)
.label(nodeConfig.getLabel())
.description(nodeConfig.getDescription())
.clazz(nodeConfig.getClazz())
.build();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ void evaluate() {
BoolMultiNode node =
BoolMultiNode.builder()
.id("bool_node")
.label("bool_node")
.fields(List.of(field1, field2))
.clauses(clauses)
.outcomeDefault(outcomeDefault)
Expand Down Expand Up @@ -100,6 +101,7 @@ void evaluateClause1True() {
BoolMultiNode node =
BoolMultiNode.builder()
.id("bool_node")
.label("bool_node")
.fields(List.of(field1, field2))
.clauses(clauses)
.outcomeDefault(outcomeDefault)
Expand Down Expand Up @@ -144,6 +146,7 @@ void evaluateFalse() {
BoolMultiNode node =
BoolMultiNode.builder()
.id("bool_node")
.label("bool_node")
.fields(List.of(field1, field2))
.clauses(clauses)
.outcomeDefault(outcomeDefault)
Expand Down Expand Up @@ -187,6 +190,7 @@ void evaluateMissing() {
BoolMultiNode node =
BoolMultiNode.builder()
.id("bool_node")
.label("bool_node")
.fields(List.of(field1, field2))
.clauses(clauses)
.outcomeDefault(outcomeDefault)
Expand Down Expand Up @@ -222,6 +226,7 @@ void evaluateOr() {
BoolMultiNode node =
BoolMultiNode.builder()
.id("bool_node")
.label("bool_node")
.fields(List.of(field1, field2))
.clauses(clauses)
.outcomeDefault(outcomeDefault)
Expand Down Expand Up @@ -253,6 +258,7 @@ void evaluateSingleQuery() {
BoolMultiNode node =
BoolMultiNode.builder()
.id("bool_node")
.label("bool_node")
.fields(List.of(field1))
.clauses(clauses)
.outcomeDefault(outcomeDefault)
Expand Down Expand Up @@ -283,6 +289,7 @@ void evaluateSingleQueryMissingValue() {
BoolMultiNode node =
BoolMultiNode.builder()
.id("bool_node")
.label("bool_node")
.fields(List.of(field1))
.clauses(clauses)
.outcomeDefault(outcomeDefault)
Expand Down Expand Up @@ -312,6 +319,7 @@ void evaluateSingleQueryMissingField() {
BoolMultiNode node =
BoolMultiNode.builder()
.id("bool_node")
.label("bool_node")
.fields(List.of(field1))
.clauses(clauses)
.outcomeDefault(outcomeDefault)
Expand Down
Loading