diff --git a/src/main/java/org/rosi_project/model_sync/model_join/representation/parser/antlr/JoinStatementVisitor.java b/src/main/java/org/rosi_project/model_sync/model_join/representation/parser/antlr/JoinStatementVisitor.java index 3fe1c7bd180e24161204ccab4a59d2a557985536..f5ace991f9d26f4391f025d6890ff912a55b3f82 100644 --- a/src/main/java/org/rosi_project/model_sync/model_join/representation/parser/antlr/JoinStatementVisitor.java +++ b/src/main/java/org/rosi_project/model_sync/model_join/representation/parser/antlr/JoinStatementVisitor.java @@ -85,12 +85,12 @@ public class JoinStatementVisitor extends ModelJoinBaseVisitor<JoinExpression> { ClassResource left = ClassResource.fromQualifiedName(thetajoinContext.classres(0).getText()); ClassResource right = ClassResource.fromQualifiedName(thetajoinContext.classres(1).getText()); - ThetaJoinBuilder joinBuilder = JoinFactory.createNew() + ThetaJoinBuilder joinBuilder = (ThetaJoinBuilder)JoinFactory.createNew() .theta() + .where(OCLConstraint.of(thetajoinContext.oclcond().getText())) .join(left) .with(right) - .as(ClassResource.fromQualifiedName(ctx.classres().getText())) - .where(OCLConstraint.of(thetajoinContext.oclcond().getText())); + .as(ClassResource.fromQualifiedName(ctx.classres().getText())); ctx.keepaggregatesexpr().stream() .map(keepStatementVisitor::visitKeepaggregatesexpr) @@ -118,7 +118,7 @@ public class JoinStatementVisitor extends ModelJoinBaseVisitor<JoinExpression> { ClassResource left = ClassResource.fromQualifiedName(naturalJoinContext.classres(0).getText()); ClassResource right = ClassResource.fromQualifiedName(naturalJoinContext.classres(1).getText()); - NaturalJoinBuilder joinBuilder = JoinFactory.createNew() + NaturalJoinBuilder joinBuilder = (NaturalJoinBuilder)JoinFactory.createNew() .natural() .join(left) .with(right) @@ -150,7 +150,7 @@ public class JoinStatementVisitor extends ModelJoinBaseVisitor<JoinExpression> { ClassResource left = ClassResource.fromQualifiedName(outerJoinContext.classres(0).getText()); ClassResource right = ClassResource.fromQualifiedName(outerJoinContext.classres(1).getText()); - OuterJoinBuilder joinBuilder = JoinFactory.createNew() + OuterJoinBuilder joinBuilder = (OuterJoinBuilder)JoinFactory.createNew() .outer() .join(left) .with(right) diff --git a/src/main/java/org/rosi_project/model_sync/model_join/representation/parser/legacy/JoinParser.java b/src/main/java/org/rosi_project/model_sync/model_join/representation/parser/legacy/JoinParser.java index ee32b6167aa20c1785f1671af0ac52f1a2c46b75..2a53a713e345f1b0182ca2e224da77baeda11b6e 100644 --- a/src/main/java/org/rosi_project/model_sync/model_join/representation/parser/legacy/JoinParser.java +++ b/src/main/java/org/rosi_project/model_sync/model_join/representation/parser/legacy/JoinParser.java @@ -231,16 +231,16 @@ class JoinParser { keeps.forEach(outerJoinBuilder::keep); return outerJoinBuilder.done(); case "theta": - ThetaJoinBuilder thetaJoinBuilder = joinFactory // - .theta() // - .join(ClassResource.fromQualifiedName(leftSource)) // - .with(ClassResource.fromQualifiedName(rightSource)) // - .as(ClassResource.fromQualifiedName(target)) // - .where(OCLConstraint.of(thetaPredicate)); + ThetaJoinBuilder thetaJoinBuilder = (ThetaJoinBuilder)joinFactory + .theta() + .where(OCLConstraint.of(thetaPredicate)) + .join(ClassResource.fromQualifiedName(leftSource)) + .with(ClassResource.fromQualifiedName(rightSource)) + .as(ClassResource.fromQualifiedName(target)); keeps.forEach(thetaJoinBuilder::keep); return thetaJoinBuilder.done(); case "natural": - NaturalJoinBuilder naturalJoinBuilder = joinFactory // + NaturalJoinBuilder naturalJoinBuilder = (NaturalJoinBuilder)joinFactory // .natural() // .join(ClassResource.fromQualifiedName(leftSource)) // .with(ClassResource.fromQualifiedName(rightSource)) // diff --git a/src/main/java/org/rosi_project/model_sync/modelrepresentation/ModelJoinCreation.java b/src/main/java/org/rosi_project/model_sync/modelrepresentation/ModelJoinCreation.java index 6db9adf545602863afb2209a577014c7d30c3de4..0e6df61e4d47f680460853d506d720e4beb9ba0b 100644 --- a/src/main/java/org/rosi_project/model_sync/modelrepresentation/ModelJoinCreation.java +++ b/src/main/java/org/rosi_project/model_sync/modelrepresentation/ModelJoinCreation.java @@ -39,6 +39,7 @@ public class ModelJoinCreation { } }*/ + ClassResource library = ClassResource.from("lib", "Library"); ClassResource employee = ClassResource.from("lib", "Employee"); ClassResource person = ClassResource.from("lib", "Person");