From 63de47a1f08a0f626d039d49587c9c85dcf1f556 Mon Sep 17 00:00:00 2001 From: Nipuna Fernando Date: Tue, 2 Jan 2024 10:11:46 +0530 Subject: [PATCH 1/2] Update onFailClause generation with 2201.9.0 --- .../core/visitors/ActionVisitor.java | 42 +++++++------------ 1 file changed, 15 insertions(+), 27 deletions(-) diff --git a/sequence-diagram-model-generator/modules/sequence-diagram-model-generator-core/src/main/java/io/ballerina/sequencemodelgenerator/core/visitors/ActionVisitor.java b/sequence-diagram-model-generator/modules/sequence-diagram-model-generator-core/src/main/java/io/ballerina/sequencemodelgenerator/core/visitors/ActionVisitor.java index ae7dc541c..78b48e2c4 100644 --- a/sequence-diagram-model-generator/modules/sequence-diagram-model-generator-core/src/main/java/io/ballerina/sequencemodelgenerator/core/visitors/ActionVisitor.java +++ b/sequence-diagram-model-generator/modules/sequence-diagram-model-generator-core/src/main/java/io/ballerina/sequencemodelgenerator/core/visitors/ActionVisitor.java @@ -30,6 +30,7 @@ import io.ballerina.compiler.syntax.tree.AssignmentStatementNode; import io.ballerina.compiler.syntax.tree.BlockStatementNode; import io.ballerina.compiler.syntax.tree.BreakStatementNode; +import io.ballerina.compiler.syntax.tree.CaptureBindingPatternNode; import io.ballerina.compiler.syntax.tree.ClassDefinitionNode; import io.ballerina.compiler.syntax.tree.ClientResourceAccessActionNode; import io.ballerina.compiler.syntax.tree.CompoundAssignmentStatementNode; @@ -774,13 +775,7 @@ public void visit(WhileStatementNode whileStatementNode) { whileStatementNode.whileBody().accept(actionVisitor); if (whileStatementNode.onFailClause().isPresent()) { - OnFailClauseNode onFailClauseNode = whileStatementNode.onFailClause().get(); - OnFailClause onFailClause = new OnFailClause( - onFailClauseNode.typeDescriptor().isPresent() ? - onFailClauseNode.typeDescriptor().get().toString() : "", - onFailClauseNode.failErrorName().isPresent() ? - onFailClauseNode.failErrorName().get().toString() : "", isHidden, - whileStatementNode.onFailClause().get().lineRange()); + OnFailClause onFailClause = generateOnFailClause(whileStatementNode.onFailClause().get(), isHidden); VisitorContext visitorContext1 = new VisitorContext( this.visitorContext.getRootParticipant(), this.visitorContext.getCurrentParticipant(), @@ -826,13 +821,7 @@ public void visit(ForEachStatementNode forEachStatementNode) { forEachStatementNode.blockStatement().accept(actionVisitor); if (forEachStatementNode.onFailClause().isPresent()) { - OnFailClauseNode onFailClauseNode = forEachStatementNode.onFailClause().get(); - OnFailClause onFailClause = new OnFailClause( - onFailClauseNode.typeDescriptor().isPresent() ? - onFailClauseNode.typeDescriptor().get().toString() : "", - onFailClauseNode.failErrorName().isPresent() ? - onFailClauseNode.failErrorName().get().toString() : "", isHidden, - forEachStatementNode.onFailClause().get().lineRange()); + OnFailClause onFailClause = generateOnFailClause(forEachStatementNode.onFailClause().get(), isHidden); VisitorContext visitorContext1 = new VisitorContext( this.visitorContext.getRootParticipant(), this.visitorContext.getCurrentParticipant(), @@ -872,13 +861,7 @@ public void visit(LockStatementNode lockStatementNode) { lockStatementNode.blockStatement().accept(actionVisitor); if (lockStatementNode.onFailClause().isPresent()) { - OnFailClauseNode onFailClauseNode = lockStatementNode.onFailClause().get(); - OnFailClause onFailClause = new OnFailClause( - onFailClauseNode.typeDescriptor().isPresent() ? - onFailClauseNode.typeDescriptor().get().toString() : "", - onFailClauseNode.failErrorName().isPresent() ? - onFailClauseNode.failErrorName().get().toString() : "", isHidden, - lockStatementNode.onFailClause().get().lineRange()); + OnFailClause onFailClause = generateOnFailClause(lockStatementNode.onFailClause().get(), isHidden); VisitorContext visitorContext1 = new VisitorContext( this.visitorContext.getRootParticipant(), this.visitorContext.getCurrentParticipant(), @@ -920,12 +903,7 @@ public void visit(DoStatementNode doStatementNode) { doStatementNode.blockStatement().accept(actionVisitor); if (doStatementNode.onFailClause().isPresent()) { - OnFailClause onFailClause = new OnFailClause( - doStatementNode.onFailClause().get().typeDescriptor().isPresent() ? - doStatementNode.onFailClause().get().typeDescriptor().get().toString() : "", - doStatementNode.onFailClause().get().failErrorName().isPresent() ? - doStatementNode.onFailClause().get().failErrorName().get().toString() : "", - isHidden, doStatementNode.onFailClause().get().lineRange()); + OnFailClause onFailClause = generateOnFailClause(doStatementNode.onFailClause().get(), isHidden); VisitorContext visitorContext1 = new VisitorContext( this.visitorContext.getRootParticipant(), this.visitorContext.getCurrentParticipant(), @@ -1022,4 +1000,14 @@ private boolean isEndpointAbsentInParticipants(String clientID) { } return true; } + + private OnFailClause generateOnFailClause(OnFailClauseNode onFailClauseNode, boolean isHidden) { + return new OnFailClause( + onFailClauseNode.typedBindingPattern().isPresent() ? + onFailClauseNode.typedBindingPattern().get().typeDescriptor().toString() : "", + onFailClauseNode.typedBindingPattern().isPresent() && + onFailClauseNode.typedBindingPattern().get().kind() == SyntaxKind.CAPTURE_BINDING_PATTERN ? + ((CaptureBindingPatternNode) onFailClauseNode.typedBindingPattern().get() + .bindingPattern()).variableName().text() : "", isHidden, onFailClauseNode.lineRange()); + } } From ef52fd510e7b1672a18823d6460beeb1847632eb Mon Sep 17 00:00:00 2001 From: Nipuna Fernando Date: Mon, 8 Apr 2024 10:16:21 +0530 Subject: [PATCH 2/2] Update ballerina lang version --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 7ecf052e5..a97487c04 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,7 +1,7 @@ org.gradle.caching=true group=org.ballerinalang version=1.3.1-SNAPSHOT -ballerinaLangVersion=2201.8.0-20230908-135700-74a59dff +ballerinaLangVersion=2201.9.0-20240405-165800-4b163f78 ballerinaGradlePluginVersion=2.0.1 checkStyleToolVersion=10.12.1