Skip to content

Commit 1487287

Browse files
committed
Always serialize conditions... even when empty
1 parent f453664 commit 1487287

File tree

2 files changed

+8
-8
lines changed
  • smithy-rules-engine/src
    • main/java/software/amazon/smithy/rulesengine/language/syntax/rule
    • test/resources/software/amazon/smithy/rulesengine/language

2 files changed

+8
-8
lines changed

smithy-rules-engine/src/main/java/software/amazon/smithy/rulesengine/language/syntax/rule/Rule.java

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -171,18 +171,17 @@ public Type typeCheck(Scope<Type> scope) {
171171
public Node toNode() {
172172
ObjectNode.Builder builder = ObjectNode.builder();
173173

174-
if (!conditions.isEmpty()) {
175-
ArrayNode.Builder conditionsBuilder = ArrayNode.builder();
176-
for (Condition condition : conditions) {
177-
conditionsBuilder.withValue(condition.toNode());
178-
}
179-
builder.withMember(CONDITIONS, conditionsBuilder.build());
180-
}
181-
182174
if (documentation != null) {
183175
builder.withMember(DOCUMENTATION, documentation);
184176
}
185177

178+
// TODO: we should remove the requirement of serializing an empty array here
179+
ArrayNode.Builder conditionsBuilder = ArrayNode.builder();
180+
for (Condition condition : conditions) {
181+
conditionsBuilder.withValue(condition.toNode());
182+
}
183+
builder.withMember(CONDITIONS, conditionsBuilder.build());
184+
186185
withValueNode(builder);
187186
return builder.build();
188187
}

smithy-rules-engine/src/test/resources/software/amazon/smithy/rulesengine/language/minimal-ruleset.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
"rules": [
1111
{
1212
"documentation": "base rule",
13+
"conditions": [],
1314
"endpoint": {
1415
"url": "https://{Region}.amazonaws.com",
1516
"properties": {

0 commit comments

Comments
 (0)