Skip to content

Commit e07631c

Browse files
committed
Rename bdd trait to endpointBdd
1 parent 5d1fba9 commit e07631c

28 files changed

Lines changed: 83 additions & 83 deletions

smithy-aws-endpoints/src/main/java/software/amazon/smithy/rulesengine/aws/validators/RuleSetAwsBuiltInValidator.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
import software.amazon.smithy.model.validation.ValidationEvent;
1515
import software.amazon.smithy.rulesengine.aws.language.functions.AwsBuiltIns;
1616
import software.amazon.smithy.rulesengine.language.syntax.parameters.Parameter;
17-
import software.amazon.smithy.rulesengine.logic.bdd.BddTrait;
17+
import software.amazon.smithy.rulesengine.logic.bdd.EndpointBddTrait;
1818
import software.amazon.smithy.rulesengine.traits.EndpointRuleSetTrait;
1919
import software.amazon.smithy.utils.SetUtils;
2020

@@ -38,8 +38,8 @@ public List<ValidationEvent> validate(Model model) {
3838
validateRuleSetAwsBuiltIns(events, s, trait.getEndpointRuleSet().getParameters());
3939
}
4040

41-
for (ServiceShape s : model.getServiceShapesWithTrait(BddTrait.class)) {
42-
validateRuleSetAwsBuiltIns(events, s, s.expectTrait(BddTrait.class).getParameters());
41+
for (ServiceShape s : model.getServiceShapesWithTrait(EndpointBddTrait.class)) {
42+
validateRuleSetAwsBuiltIns(events, s, s.expectTrait(EndpointBddTrait.class).getParameters());
4343
}
4444

4545
return events;

smithy-rules-engine/src/main/java/software/amazon/smithy/rulesengine/language/evaluation/RuleEvaluator.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
import software.amazon.smithy.rulesengine.language.syntax.rule.RuleValueVisitor;
2828
import software.amazon.smithy.rulesengine.logic.RuleBasedConditionEvaluator;
2929
import software.amazon.smithy.rulesengine.logic.bdd.Bdd;
30-
import software.amazon.smithy.rulesengine.logic.bdd.BddTrait;
30+
import software.amazon.smithy.rulesengine.logic.bdd.EndpointBddTrait;
3131
import software.amazon.smithy.utils.SmithyUnstableApi;
3232

3333
/**
@@ -57,7 +57,7 @@ public static Value evaluate(EndpointRuleSet ruleset, Map<Identifier, Value> par
5757
* @param args The rule-set parameter identifiers and values to evaluate the BDD against.
5858
* @return The resulting value from the final matched rule.
5959
*/
60-
public static Value evaluate(BddTrait trait, Map<Identifier, Value> args) {
60+
public static Value evaluate(EndpointBddTrait trait, Map<Identifier, Value> args) {
6161
return evaluate(trait.getBdd(), trait.getParameters(), trait.getConditions(), trait.getResults(), args);
6262
}
6363

smithy-rules-engine/src/main/java/software/amazon/smithy/rulesengine/language/evaluation/TestEvaluator.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
import software.amazon.smithy.rulesengine.language.evaluation.value.EndpointValue;
1414
import software.amazon.smithy.rulesengine.language.evaluation.value.Value;
1515
import software.amazon.smithy.rulesengine.language.syntax.Identifier;
16-
import software.amazon.smithy.rulesengine.logic.bdd.BddTrait;
16+
import software.amazon.smithy.rulesengine.logic.bdd.EndpointBddTrait;
1717
import software.amazon.smithy.rulesengine.traits.EndpointTestCase;
1818
import software.amazon.smithy.rulesengine.traits.EndpointTestExpectation;
1919
import software.amazon.smithy.rulesengine.traits.ExpectedEndpoint;
@@ -45,7 +45,7 @@ public static void evaluate(EndpointRuleSet ruleset, EndpointTestCase testCase)
4545
* @param bdd The BDD trait to be tested.
4646
* @param testCase The test case.
4747
*/
48-
public static void evaluate(BddTrait bdd, EndpointTestCase testCase) {
48+
public static void evaluate(EndpointBddTrait bdd, EndpointTestCase testCase) {
4949
Value result = RuleEvaluator.evaluate(bdd, createParams(testCase));
5050
processResult(result, testCase);
5151
}

smithy-rules-engine/src/main/java/software/amazon/smithy/rulesengine/logic/bdd/BddTrait.java renamed to smithy-rules-engine/src/main/java/software/amazon/smithy/rulesengine/logic/bdd/EndpointBddTrait.java

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,8 @@
3434
/**
3535
* Trait containing a precompiled BDD with full context for endpoint resolution.
3636
*/
37-
public final class BddTrait extends AbstractTrait implements ToSmithyBuilder<BddTrait> {
38-
public static final ShapeId ID = ShapeId.from("smithy.rules#bdd");
37+
public final class EndpointBddTrait extends AbstractTrait implements ToSmithyBuilder<EndpointBddTrait> {
38+
public static final ShapeId ID = ShapeId.from("smithy.rules#endpointBdd");
3939

4040
private static final Set<String> ALLOWED_PROPERTIES = SetUtils.of(
4141
"parameters",
@@ -50,7 +50,7 @@ public final class BddTrait extends AbstractTrait implements ToSmithyBuilder<Bdd
5050
private final List<Rule> results;
5151
private final Bdd bdd;
5252

53-
private BddTrait(Builder builder) {
53+
private EndpointBddTrait(Builder builder) {
5454
super(ID, builder.getSourceLocation());
5555
this.parameters = SmithyBuilder.requiredState("parameters", builder.parameters);
5656
this.conditions = SmithyBuilder.requiredState("conditions", builder.conditions);
@@ -64,7 +64,7 @@ private BddTrait(Builder builder) {
6464
* @param cfg the control flow graph to compile
6565
* @return the BddTrait containing the compiled BDD and all context
6666
*/
67-
public static BddTrait from(Cfg cfg) {
67+
public static EndpointBddTrait from(Cfg cfg) {
6868
BddCompiler compiler = new BddCompiler(cfg, new BddBuilder());
6969
Bdd bdd = compiler.compile();
7070

@@ -122,7 +122,7 @@ public Bdd getBdd() {
122122
* @param transformer Transformer used to modify the trait.
123123
* @return the updated trait.
124124
*/
125-
public BddTrait transform(Function<BddTrait, BddTrait> transformer) {
125+
public EndpointBddTrait transform(Function<EndpointBddTrait, EndpointBddTrait> transformer) {
126126
return transformer.apply(this);
127127
}
128128

@@ -164,7 +164,7 @@ protected Node createNode() {
164164
* @param node the node to parse
165165
* @return the BddTrait
166166
*/
167-
public static BddTrait fromNode(Node node) {
167+
public static EndpointBddTrait fromNode(Node node) {
168168
ObjectNode obj = node.expectObjectNode();
169169
obj.warnIfAdditionalProperties(ALLOWED_PROPERTIES);
170170
Parameters params = Parameters.fromNode(obj.expectObjectMember("parameters"));
@@ -181,7 +181,7 @@ public static BddTrait fromNode(Node node) {
181181

182182
Bdd bdd = decodeBdd(nodesBase64, nodeCount, rootRef, conditions.size(), results.size());
183183

184-
BddTrait trait = builder()
184+
EndpointBddTrait trait = builder()
185185
.sourceLocation(node)
186186
.parameters(params)
187187
.conditions(conditions)
@@ -251,7 +251,7 @@ public Builder toBuilder() {
251251
/**
252252
* Builder for BddTrait.
253253
*/
254-
public static final class Builder extends AbstractTraitBuilder<BddTrait, Builder> {
254+
public static final class Builder extends AbstractTraitBuilder<EndpointBddTrait, Builder> {
255255
private Parameters parameters;
256256
private List<Condition> conditions;
257257
private List<Rule> results;
@@ -304,8 +304,8 @@ public Builder bdd(Bdd bdd) {
304304
}
305305

306306
@Override
307-
public BddTrait build() {
308-
return new BddTrait(this);
307+
public EndpointBddTrait build() {
308+
return new EndpointBddTrait(this);
309309
}
310310
}
311311

@@ -316,7 +316,7 @@ public Provider() {
316316

317317
@Override
318318
public Trait createTrait(ShapeId target, Node value) {
319-
BddTrait trait = BddTrait.fromNode(value);
319+
EndpointBddTrait trait = EndpointBddTrait.fromNode(value);
320320
trait.setNodeCache(value);
321321
return trait;
322322
}

smithy-rules-engine/src/main/java/software/amazon/smithy/rulesengine/logic/bdd/NodeReversal.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,12 @@
1313
* <p>This transformation reverses the node array (except the terminal at index 0)
1414
* and updates all references throughout the BDD to maintain correctness.
1515
*/
16-
public final class NodeReversal implements Function<BddTrait, BddTrait> {
16+
public final class NodeReversal implements Function<EndpointBddTrait, EndpointBddTrait> {
1717

1818
private static final Logger LOGGER = Logger.getLogger(NodeReversal.class.getName());
1919

2020
@Override
21-
public BddTrait apply(BddTrait trait) {
21+
public EndpointBddTrait apply(EndpointBddTrait trait) {
2222
Bdd reversedBdd = reverse(trait.getBdd());
2323
// Only rebuild the trait if the BDD actually changed
2424
return reversedBdd == trait.getBdd() ? trait : trait.toBuilder().bdd(reversedBdd).build();

smithy-rules-engine/src/main/java/software/amazon/smithy/rulesengine/logic/bdd/SiftingOptimization.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
* <li>Granular: Fine-tuned optimization for maximum reduction</li>
3131
* </ul>
3232
*/
33-
public final class SiftingOptimization implements Function<BddTrait, BddTrait> {
33+
public final class SiftingOptimization implements Function<EndpointBddTrait, EndpointBddTrait> {
3434
private static final Logger LOGGER = Logger.getLogger(SiftingOptimization.class.getName());
3535

3636
// When to use a parallel stream
@@ -96,15 +96,15 @@ public static Builder builder() {
9696
}
9797

9898
@Override
99-
public BddTrait apply(BddTrait trait) {
99+
public EndpointBddTrait apply(EndpointBddTrait trait) {
100100
try {
101101
return doApply(trait);
102102
} finally {
103103
threadBuilder.remove();
104104
}
105105
}
106106

107-
private BddTrait doApply(BddTrait trait) {
107+
private EndpointBddTrait doApply(EndpointBddTrait trait) {
108108
LOGGER.info("Starting BDD sifting optimization");
109109
long startTime = System.currentTimeMillis();
110110
OptimizationState state = initializeOptimization(trait);
@@ -135,7 +135,7 @@ private BddTrait doApply(BddTrait trait) {
135135
return trait.toBuilder().conditions(state.orderView).results(state.results).bdd(state.bestBdd).build();
136136
}
137137

138-
private OptimizationState initializeOptimization(BddTrait trait) {
138+
private OptimizationState initializeOptimization(EndpointBddTrait trait) {
139139
// Use the trait's existing ordering as the starting point
140140
List<Condition> initialOrder = new ArrayList<>(trait.getConditions());
141141
Condition[] order = initialOrder.toArray(new Condition[0]);

smithy-rules-engine/src/main/java/software/amazon/smithy/rulesengine/validators/BddTraitValidator.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,24 +12,24 @@
1212
import software.amazon.smithy.model.validation.AbstractValidator;
1313
import software.amazon.smithy.model.validation.ValidationEvent;
1414
import software.amazon.smithy.rulesengine.logic.bdd.Bdd;
15-
import software.amazon.smithy.rulesengine.logic.bdd.BddTrait;
15+
import software.amazon.smithy.rulesengine.logic.bdd.EndpointBddTrait;
1616

1717
public final class BddTraitValidator extends AbstractValidator {
1818
@Override
1919
public List<ValidationEvent> validate(Model model) {
20-
if (!model.isTraitApplied(BddTrait.class)) {
20+
if (!model.isTraitApplied(EndpointBddTrait.class)) {
2121
return Collections.emptyList();
2222
}
2323

2424
List<ValidationEvent> events = new ArrayList<>();
25-
for (ServiceShape service : model.getServiceShapesWithTrait(BddTrait.class)) {
26-
validateService(events, service, service.expectTrait(BddTrait.class));
25+
for (ServiceShape service : model.getServiceShapesWithTrait(EndpointBddTrait.class)) {
26+
validateService(events, service, service.expectTrait(EndpointBddTrait.class));
2727
}
2828

2929
return events;
3030
}
3131

32-
private void validateService(List<ValidationEvent> events, ServiceShape service, BddTrait trait) {
32+
private void validateService(List<ValidationEvent> events, ServiceShape service, EndpointBddTrait trait) {
3333
Bdd bdd = trait.getBdd();
3434

3535
// Validate root reference
@@ -87,11 +87,11 @@ private void validateService(List<ValidationEvent> events, ServiceShape service,
8787
private void validateReference(
8888
List<ValidationEvent> events,
8989
ServiceShape service,
90-
BddTrait trait,
90+
EndpointBddTrait trait,
9191
String context,
9292
int ref,
9393
Bdd bdd,
94-
BddTrait bddTrait
94+
EndpointBddTrait bddTrait
9595
) {
9696
if (ref == 0) {
9797
events.add(error(service, trait, String.format("%s has invalid reference: 0", context)));

smithy-rules-engine/src/main/java/software/amazon/smithy/rulesengine/validators/EndpointTestsTraitValidator.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
import software.amazon.smithy.model.validation.ValidationEvent;
2121
import software.amazon.smithy.rulesengine.language.syntax.parameters.Parameter;
2222
import software.amazon.smithy.rulesengine.language.syntax.parameters.Parameters;
23-
import software.amazon.smithy.rulesengine.logic.bdd.BddTrait;
23+
import software.amazon.smithy.rulesengine.logic.bdd.EndpointBddTrait;
2424
import software.amazon.smithy.rulesengine.traits.EndpointRuleSetTrait;
2525
import software.amazon.smithy.rulesengine.traits.EndpointTestCase;
2626
import software.amazon.smithy.rulesengine.traits.EndpointTestOperationInput;
@@ -52,7 +52,7 @@ public List<ValidationEvent> validate(Model model) {
5252
operationNameMap);
5353
});
5454

55-
serviceShape.getTrait(BddTrait.class).ifPresent(trait -> {
55+
serviceShape.getTrait(EndpointBddTrait.class).ifPresent(trait -> {
5656
validateEndpointRuleSet(events, model, serviceShape, trait.getParameters(), operationNameMap);
5757
});
5858
}

smithy-rules-engine/src/main/java/software/amazon/smithy/rulesengine/validators/RuleSetAuthSchemesValidator.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
import software.amazon.smithy.rulesengine.language.syntax.rule.EndpointRule;
2222
import software.amazon.smithy.rulesengine.language.syntax.rule.Rule;
2323
import software.amazon.smithy.rulesengine.language.syntax.rule.TreeRule;
24-
import software.amazon.smithy.rulesengine.logic.bdd.BddTrait;
24+
import software.amazon.smithy.rulesengine.logic.bdd.EndpointBddTrait;
2525
import software.amazon.smithy.rulesengine.traits.EndpointRuleSetTrait;
2626

2727
/**
@@ -35,7 +35,7 @@ public List<ValidationEvent> validate(Model model) {
3535
List<ValidationEvent> events = new ArrayList<>();
3636
for (ServiceShape serviceShape : model.getServiceShapes()) {
3737
visitRuleset(events, serviceShape, serviceShape.getTrait(EndpointRuleSetTrait.class).orElse(null));
38-
visitBdd(events, serviceShape, serviceShape.getTrait(BddTrait.class).orElse(null));
38+
visitBdd(events, serviceShape, serviceShape.getTrait(EndpointBddTrait.class).orElse(null));
3939
}
4040
return events;
4141
}
@@ -48,7 +48,7 @@ private void visitRuleset(List<ValidationEvent> events, ServiceShape serviceShap
4848
}
4949
}
5050

51-
private void visitBdd(List<ValidationEvent> events, ServiceShape serviceShape, BddTrait trait) {
51+
private void visitBdd(List<ValidationEvent> events, ServiceShape serviceShape, EndpointBddTrait trait) {
5252
if (trait != null) {
5353
for (Rule result : trait.getResults()) {
5454
if (result instanceof EndpointRule) {

smithy-rules-engine/src/main/java/software/amazon/smithy/rulesengine/validators/RuleSetBuiltInValidator.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
import software.amazon.smithy.model.validation.ValidationEvent;
1616
import software.amazon.smithy.rulesengine.language.EndpointRuleSet;
1717
import software.amazon.smithy.rulesengine.language.syntax.parameters.Parameter;
18-
import software.amazon.smithy.rulesengine.logic.bdd.BddTrait;
18+
import software.amazon.smithy.rulesengine.logic.bdd.EndpointBddTrait;
1919
import software.amazon.smithy.rulesengine.traits.EndpointRuleSetTrait;
2020
import software.amazon.smithy.rulesengine.traits.EndpointTestCase;
2121
import software.amazon.smithy.rulesengine.traits.EndpointTestOperationInput;
@@ -29,8 +29,8 @@ public final class RuleSetBuiltInValidator extends AbstractValidator {
2929
public List<ValidationEvent> validate(Model model) {
3030
List<ValidationEvent> events = new ArrayList<>();
3131

32-
for (ServiceShape s : model.getServiceShapesWithTrait(BddTrait.class)) {
33-
validateParams(events, s, s.expectTrait(BddTrait.class).getParameters());
32+
for (ServiceShape s : model.getServiceShapesWithTrait(EndpointBddTrait.class)) {
33+
validateParams(events, s, s.expectTrait(EndpointBddTrait.class).getParameters());
3434
}
3535

3636
for (ServiceShape s : model.getServiceShapesWithTrait(EndpointRuleSetTrait.class)) {

0 commit comments

Comments
 (0)