incubator-seata-go
incubator-seata-go copied to clipboard
Expression integration with CEL in seata-go Saga
This is a subtask under the #618
Description:
Currently, in the Java implementation, SpEL (Spring Expression Language) serves as the default expression language. For seata-go, we aim to integrate CEL (Common Expression Language) as a supported expression type.
Implementation Details:
1. Expression Components Implementation:
- Implement key expression-related components such as
ExpressionFactoryManager
andExpressionResolver
tailored for CEL.
2. Implement CEL Type Expression in seata-go:
- Develop and implement CEL type expressions within the seata-go codebase. This involves creating an
Expression
module specific to CEL.
3. Extend seata for CEL Type Expression:
- Modify the seata framework to support CEL type expressions. Adapt the existing codebase to handle and evaluate expressions written in CEL.
Next Steps:
-
Expression Components Implementation:
- Implement the necessary components like
ExpressionFactoryManager
andExpressionResolver
to manage CEL expressions.
- Implement the necessary components like
-
Implement CEL Type Expression in seata-go:
- Develop a CEL type expression module within seata-go, ensuring compatibility with the chosen expression language.
-
Extend seata for CEL Type Expression:
- Adapt the seata framework to recognize and handle CEL type expressions. This includes modifications to allow the seamless integration of CEL as a supported expression language.
By completing these steps, we aim to integrate CEL as a supported expression type in seata-go, with the necessary components and modifications in both seata-go and seata frameworks to handle and evaluate CEL expressions effectively.
Assign to me