Comments (1)
To implement a feature that marks workflow variables as readonly in Elsa Workflows, you would need to extend the workflow engine's capabilities. As of my knowledge cutoff in early 2023, Elsa Workflows does not natively support marking variables as readonly. However, you can achieve similar functionality through custom development.
Here's a general approach you could take:
-
Custom Activity: Create a custom activity that sets a variable and marks it as readonly. This activity would register the variable in a special list or dictionary that tracks readonly variables.
-
Variable Interceptor: Implement a variable interceptor that checks if a variable is marked as readonly before allowing it to be set. If a variable is readonly and an attempt is made to modify it, the interceptor would throw an exception or ignore the change.
-
Workflow Behavior: Introduce a custom workflow behavior that integrates with the variable interceptor to enforce the readonly rule throughout the workflow execution.
-
Design-Time Support: If you're using a visual designer, you might need to extend the designer to allow marking variables as readonly.
-
Documentation and Testing: Update your project documentation to explain how to use the readonly feature and create test cases to ensure it works as expected.
-
Contribution to Elsa: If this is a feature that could benefit others, consider contributing it back to the Elsa project.
Remember to follow the Elsa Workflows documentation and guidelines for extending the workflow engine and creating custom activities. You may also want to engage with the Elsa community for support and to discuss the potential for including this feature in future releases.
Since this is a custom feature, there is no direct documentation link to provide. However, you can refer to the Elsa Workflows documentation for creating custom activities and extending the workflow engine:
- Custom Activities: https://elsa-workflows.github.io/elsa-core/docs/next/guides/guides-custom-activities
- Extending Elsa: https://elsa-workflows.github.io/elsa-core/docs/next/extensibility/extensibility-overview
Please note that the URLs provided are based on the documentation structure as of my knowledge cutoff date, and they may have changed since then. You should check the latest Elsa Workflows documentation for the most up-to-date information.
This comment was generated by Glime.
from elsa-core.
Related Issues (20)
- [BUG] Workflow Import ID Discrepancy HOT 2
- [BUG] How activity retrieve variable within published workflow HOT 1
- [CHORE] Elsa 3.0在设计器中如何使用Switch(flow)? HOT 1
- [BUG] Restore variables values after resume from a bookmark. HOT 4
- [BUG]curl 如何调用在Elsa 3.0设计器中的创建的工作流? HOT 1
- Expired messages in Workflow Inbox should be ignored HOT 2
- [BUG] There is a BUG when Api project cooperates with swagger. HOT 1
- [BUG] Issues with POST and GET Execute APIs HOT 1
- [ENH] MongoDB storage for alterations HOT 4
- [FEAT] Postgresql adapter for Hangfire
- [ENH] Optimize Workflow Import by Storing Raw JSON to Avoid Unnecessary Serialization
- [ENH] Enable and Disable MassTransit Consumers HOT 1
- Third-Party Integration Activities HOT 1
- [CHORE] Configure CI/CD with Renovate Bot HOT 1
- Make `Newtonsoft.Json` private? HOT 1
- What is the best place to implement clean-up logic for ActivityExecutionContext HOT 1
- ELSA 3.1.3 Getting Error when i call get /workflow-definitions endpoint HOT 2
- [BUG] MassTransit DisableConsumers Fails to Properly Disable Consumers and Disables Necessary Consumers HOT 1
- [CHORE] Elsa 3.0 设计器中 Fork的属性Branches如何设置? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from elsa-core.