You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Similar to the Python SDK's decorators we can offer annotations in Java for customers who prefer an annotation-driven programming style rather than imperative/functional programming style when implementing durable operations.
For example, @durable_step from Python can become @DurableStep in Java. The customer would be able to annotate an arbitrary method with such a (configurable) annotation and call it. The SDK will take care of the internal wiring to wrap the method logic in a context.step(...).
This issue tracks the creation of a design document for such an annotation processors.
Some technical implementation options include:
Using reflection at runtime and proxies to implement annotation.
Using annotation processors (similar to Dagger). Technical feasibility unclear.
Using maven/gradle plugins at build time to manipulate bytecode weaving in the logic of the processed annotation
Some libraries in the bytecode manipulation space include ASM, ByteBuddy, Gizmo, Java 24+ Classfile API
This discussion was converted from issue #66 on July 20, 2026 03:33.
Heading
Bold
Italic
Quote
Code
Link
Numbered list
Unordered list
Task list
Attach files
Mention
Reference
Menu
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
What would you like?
Similar to the Python SDK's decorators we can offer annotations in Java for customers who prefer an annotation-driven programming style rather than imperative/functional programming style when implementing durable operations.
For example,
@durable_stepfrom Python can become@DurableStepin Java. The customer would be able to annotate an arbitrary method with such a (configurable) annotation and call it. The SDK will take care of the internal wiring to wrap the method logic in acontext.step(...).This issue tracks the creation of a design document for such an annotation processors.
Some technical implementation options include:
Possible Implementation
No response
Is this a breaking change?
No
Does this require an RFC?
Yes
Additional Context
No response
All reactions