Skip to content

Conversation

javier-aliaga
Copy link
Contributor

@javier-aliaga javier-aliaga commented Jun 20, 2025

Description

This PR allow to register activities with a custom name. This is useful in case you want to reuse activities or want to give more meaningful name to the activity, it also allow using anonymous classes (currently not supported as we are using canonical names to register and anonymous classes return null)

    builder.registerActivity(FirstActivity.class);
    builder.registerActivity("a",FirstActivity.class);
    builder.registerActivity("b",FirstActivity.class);
    builder.registerActivity("d", new WorkflowActivity() {
      @Override
      public Object run(WorkflowActivityContext ctx) {
        TestWorkflowPayload workflowPayload = ctx.getInput(TestWorkflowPayload.class);
        workflowPayload.getPayloads().add("Anonymous Activity");
        return workflowPayload;
      }
    });

Issue reference

We strive to have all PR being opened based on an issue, where the problem or feature have been discussed prior to implementation.

Please reference the issue this PR will close: #[issue number]

Checklist

Please make sure you've completed the relevant tasks for this PR, out of the following list:

  • Code compiles correctly
  • Created/updated tests
  • Extended the documentation

@javier-aliaga javier-aliaga force-pushed the javi-use-name-to-register-activity branch 3 times, most recently from 8a48dec to 28f7d93 Compare June 20, 2025 15:41
@javier-aliaga javier-aliaga marked this pull request as ready for review June 20, 2025 15:42
@javier-aliaga javier-aliaga requested review from a team as code owners June 20, 2025 15:42
@javier-aliaga javier-aliaga force-pushed the javi-use-name-to-register-activity branch from 28f7d93 to 76d1666 Compare June 20, 2025 15:54
@javier-aliaga javier-aliaga changed the title feat: Support register of activities with custom name feat: Support registering activities with custom name Jun 20, 2025
@javier-aliaga javier-aliaga force-pushed the javi-use-name-to-register-activity branch from 76d1666 to 2028f95 Compare June 20, 2025 16:16
@salaboy
Copy link
Collaborator

salaboy commented Jun 21, 2025 via email

@javier-aliaga
Copy link
Contributor Author

Mmmmmm, @salaboy , let me see I think I can go a bit further and do it

@javier-aliaga javier-aliaga force-pushed the javi-use-name-to-register-activity branch from 1a8a517 to cea264a Compare July 31, 2025 11:56
@javier-aliaga
Copy link
Contributor Author

ey @salaboy I am recovering this PR as it introduces new benefits to the sdk. Not only you can name classes it also allows using anonymous classes to register activities.

@javier-aliaga
Copy link
Contributor Author

javier-aliaga commented Aug 4, 2025

ey @dapr/maintainers-java-sdk and @dapr/approvers-java-sdk , what do you think about this one? I find it useful to be able to declare activities with an anonymous class. It also allow registering activities with name

Copy link
Contributor

@cicoyle cicoyle left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

mostly good with this. just a few nits

Signed-off-by: Javier Aliaga <javier@diagrid.io>
Signed-off-by: Javier Aliaga <javier@diagrid.io>
@javier-aliaga javier-aliaga force-pushed the javi-use-name-to-register-activity branch from 50891b6 to c5625c4 Compare August 4, 2025 21:07
@javier-aliaga javier-aliaga requested a review from cicoyle August 5, 2025 13:12
Copy link
Contributor

@cicoyle cicoyle left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@cicoyle cicoyle added this to the v1.16 milestone Aug 19, 2025
@cicoyle cicoyle merged commit 6ee1f59 into dapr:master Aug 26, 2025
10 of 13 checks passed
Copy link

codecov bot commented Aug 26, 2025

Codecov Report

❌ Patch coverage is 90.00000% with 2 lines in your changes missing coverage. Please review.
✅ Project coverage is 78.72%. Comparing base (d759c53) to head (88be309).
⚠️ Report is 202 commits behind head on master.

Files with missing lines Patch % Lines
...orkflows/runtime/WorkflowActivityClassWrapper.java 66.66% 2 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##             master    #1431      +/-   ##
============================================
+ Coverage     76.91%   78.72%   +1.80%     
- Complexity     1592     1922     +330     
============================================
  Files           145      237      +92     
  Lines          4843     5931    +1088     
  Branches        562      610      +48     
============================================
+ Hits           3725     4669     +944     
- Misses          821      939     +118     
- Partials        297      323      +26     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

salaboy pushed a commit to salaboy/java-sdk that referenced this pull request Sep 2, 2025
* feat: Support register of activities with custom name

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* chore: Apply suggestions

Signed-off-by: Javier Aliaga <javier@diagrid.io>

---------

Signed-off-by: Javier Aliaga <javier@diagrid.io>
Co-authored-by: Cassie Coyle <cassie.i.coyle@gmail.com>
Co-authored-by: Dapr Bot <56698301+dapr-bot@users.noreply.github.com>
javier-aliaga added a commit to javier-aliaga/java-sdk that referenced this pull request Sep 2, 2025
* feat: Support register of activities with custom name

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* chore: Apply suggestions

Signed-off-by: Javier Aliaga <javier@diagrid.io>

---------

Signed-off-by: Javier Aliaga <javier@diagrid.io>
Co-authored-by: Cassie Coyle <cassie.i.coyle@gmail.com>
Co-authored-by: Dapr Bot <56698301+dapr-bot@users.noreply.github.com>
javier-aliaga added a commit to javier-aliaga/java-sdk that referenced this pull request Sep 2, 2025
* feat: Support register of activities with custom name

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* chore: Apply suggestions

Signed-off-by: Javier Aliaga <javier@diagrid.io>

---------

Signed-off-by: Javier Aliaga <javier@diagrid.io>
Co-authored-by: Cassie Coyle <cassie.i.coyle@gmail.com>
Co-authored-by: Dapr Bot <56698301+dapr-bot@users.noreply.github.com>
Signed-off-by: Javier Aliaga <javier@diagrid.io>
javier-aliaga added a commit to javier-aliaga/java-sdk that referenced this pull request Sep 2, 2025
* feat: Support register of activities with custom name

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* chore: Apply suggestions

Signed-off-by: Javier Aliaga <javier@diagrid.io>

---------

Signed-off-by: Javier Aliaga <javier@diagrid.io>
Co-authored-by: Cassie Coyle <cassie.i.coyle@gmail.com>
Co-authored-by: Dapr Bot <56698301+dapr-bot@users.noreply.github.com>
Signed-off-by: Javier Aliaga <javier@diagrid.io>
javier-aliaga added a commit to javier-aliaga/java-sdk that referenced this pull request Sep 2, 2025
* feat: Support register of activities with custom name

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* chore: Apply suggestions

Signed-off-by: Javier Aliaga <javier@diagrid.io>

---------

Signed-off-by: Javier Aliaga <javier@diagrid.io>
Co-authored-by: Cassie Coyle <cassie.i.coyle@gmail.com>
Co-authored-by: Dapr Bot <56698301+dapr-bot@users.noreply.github.com>
Signed-off-by: Javier Aliaga <javier@diagrid.io>
salaboy added a commit that referenced this pull request Sep 3, 2025
* process deps too for dapr-spring (#1503)

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>
Signed-off-by: Javier Aliaga <javier@diagrid.io>

* Use camelCase on properties (#1470)

* Use camelCase on properties

Signed-off-by: Matheus Cruz <matheuscruz.dev@gmail.com>

* Add test for cameCalse properties

Signed-off-by: Matheus Cruz <matheuscruz.dev@gmail.com>

* Update daprdocs/content/en/java-sdk-docs/spring-boot/_index.md

Co-authored-by: Cassie Coyle <cassie.i.coyle@gmail.com>
Signed-off-by: Matheus Cruz <56329339+mcruzdev@users.noreply.github.com>

---------

Signed-off-by: Matheus Cruz <matheuscruz.dev@gmail.com>
Signed-off-by: Matheus Cruz <56329339+mcruzdev@users.noreply.github.com>
Co-authored-by: artur-ciocanu <artur.ciocanu@gmail.com>
Co-authored-by: Cassie Coyle <cassie.i.coyle@gmail.com>
Signed-off-by: Javier Aliaga <javier@diagrid.io>

* fix script (#1506)

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>
Signed-off-by: Javier Aliaga <javier@diagrid.io>

* add support for custom status (#1505)

Signed-off-by: salaboy <Salaboy@gmail.com>
Co-authored-by: Siri Varma Vegiraju <siri.varma@outlook.com>
Signed-off-by: Javier Aliaga <javier@diagrid.io>

* try 1.5.7 (#1487)

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>
Co-authored-by: Siri Varma Vegiraju <siri.varma@outlook.com>
Co-authored-by: artur-ciocanu <artur.ciocanu@gmail.com>
Co-authored-by: Dapr Bot <56698301+dapr-bot@users.noreply.github.com>
Signed-off-by: Javier Aliaga <javier@diagrid.io>

* rm protoc cmd from pom.xml (#1498)

* rm protoc cmd bc it uses a local protoc which might be the wrong version and results in a bad error

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* update protoc

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

---------

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>
Co-authored-by: artur-ciocanu <artur.ciocanu@gmail.com>
Co-authored-by: salaboy <Salaboy@gmail.com>
Signed-off-by: Javier Aliaga <javier@diagrid.io>

* feat: Support registering activities with custom name (#1431)

* feat: Support register of activities with custom name

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* chore: Apply suggestions

Signed-off-by: Javier Aliaga <javier@diagrid.io>

---------

Signed-off-by: Javier Aliaga <javier@diagrid.io>
Co-authored-by: Cassie Coyle <cassie.i.coyle@gmail.com>
Co-authored-by: Dapr Bot <56698301+dapr-bot@users.noreply.github.com>
Signed-off-by: Javier Aliaga <javier@diagrid.io>

* Bump codecov/codecov-action from 5.4.3 to 5.5.0 (#1513)

Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 5.4.3 to 5.5.0.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](codecov/codecov-action@v5.4.3...v5.5.0)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-version: 5.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Cassie Coyle <cassie.i.coyle@gmail.com>
Co-authored-by: Dapr Bot <56698301+dapr-bot@users.noreply.github.com>
Signed-off-by: Javier Aliaga <javier@diagrid.io>

* commit: Fix validate job (#1524)

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* chore: New task execution task id test (#1352) (#1526)

* chore: New task execution task id test

test how taskExecutionTaskId can be used for idempotency

* chore: Clean up not used files

* docs: Task execution keys

* test: Modify unit tests

* Remove new lines

---------

Signed-off-by: Javier Aliaga <javier@diagrid.io>
Signed-off-by: artur-ciocanu <artur.ciocanu@gmail.com>
Co-authored-by: Cassie Coyle <cassie.i.coyle@gmail.com>
Co-authored-by: artur-ciocanu <artur.ciocanu@gmail.com>
Signed-off-by: Javier Aliaga <javier@diagrid.io>

* Bump actions/checkout from 4 to 5 (#1504)

Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Siri Varma Vegiraju <siri.varma@outlook.com>
Co-authored-by: Dapr Bot <56698301+dapr-bot@users.noreply.github.com>
Co-authored-by: Cassie Coyle <cassie.i.coyle@gmail.com>
Signed-off-by: Javier Aliaga <javier@diagrid.io>

* Improve CI runs (#1527)

* chore: Wait for dapr script

When running mechanical markdown examples wait for dapr to be running

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* chore: Fix build ci

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* chore: Fix build ci

Signed-off-by: Javier Aliaga <javier@diagrid.io>

---------

Signed-off-by: Javier Aliaga <javier@diagrid.io>
Co-authored-by: salaboy <Salaboy@gmail.com>
Signed-off-by: Javier Aliaga <javier@diagrid.io>

* Fix CVEs (#1529)

* chore: Read test certs from resources folder

This will avoid importing bouncy castle library just for tests

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* ci: Split unit test and integration tests

Signed-off-by: Javier Aliaga <javier@diagrid.io>

---------

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* fix: Use correct snapshot url (#1530)

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* Bump actions/setup-java from 4 to 5 (#1512)

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* chore: Bump dapr version (#1539)

* chore: Bump dapr version

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* chore: Fix conversation tests

Only one response expected

Signed-off-by: Javier Aliaga <javier@diagrid.io>

---------

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* Adding logger to WorkflowActivityContext (#1534)

* Adding logger to WorkflowActivityContext

Signed-off-by: Artur Ciocanu <ciocanu@adobe.com>

* Fixing a styling issue

Signed-off-by: Artur Ciocanu <ciocanu@adobe.com>

* Add unit tests for workflow activity context

Signed-off-by: Artur Ciocanu <ciocanu@adobe.com>

* Add more unit tests to make Codecov happy

Signed-off-by: Artur Ciocanu <ciocanu@adobe.com>

* Add more unit tests

Signed-off-by: Artur Ciocanu <ciocanu@adobe.com>

* Improve code coverage

Signed-off-by: Artur Ciocanu <ciocanu@adobe.com>

* Improve test names

Signed-off-by: Artur Ciocanu <ciocanu@adobe.com>

---------

Signed-off-by: Artur Ciocanu <ciocanu@adobe.com>
Co-authored-by: Artur Ciocanu <ciocanu@adobe.com>
Co-authored-by: salaboy <Salaboy@gmail.com>
Signed-off-by: Javier Aliaga <javier@diagrid.io>

* Use notimestamp in Javadoc Plugin to disable timestamps in Javadocs (#1538)

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* Feat Cross App CallActivity (#1468)

* cross app ex

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* update protoc cmd

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* feedback

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* builder pattern

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* fix protoc

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* debug log levels for test containers

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* update readme and add debugging info

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* add IT test for cross app call activity

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* cleanup test

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* sysout -> ctx.logger

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* reset pom

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* rm debug lines from readme

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* fix header + rm customports

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* use consts

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* rm waitfor call

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* rm pubsub

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* rm timeout

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* reset empty lines added

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* reset appname for daprcontainer

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* reset empty line diff

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* rm constructor info from readme

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* debug -> info

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* rm super.start

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* reset dapr container diff

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* add test for codecov

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* up timeout time to unblock PR

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>

* deps: Update durabletask-client to 1.5.10

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* ci: Revert build timeout

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* review: Use ctx.getLogger

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* chore: Fix review comments

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* chore: more review comments fixes

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* test: Use testcontainers in CrossApp IT test

Signed-off-by: Javier Aliaga <javier@diagrid.io>

* chore: Load classpath for IT with all dependencies

Signed-off-by: Javier Aliaga <javier@diagrid.io>

---------

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>
Signed-off-by: Javier Aliaga <javier@diagrid.io>
Co-authored-by: Javier Aliaga <javier@diagrid.io>
Signed-off-by: Javier Aliaga <javier@diagrid.io>

* Release 1.16.0-rc-1

Signed-off-by: Dapr Bot <daprweb@microsoft.com>
Signed-off-by: Javier Aliaga <javier@diagrid.io>

* process deps too for dapr-spring (#1502)

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>
Signed-off-by: Javier Aliaga <javier@diagrid.io>

* chore: Alpha components to stable

Signed-off-by: Javier Aliaga <javier@diagrid.io>

---------

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>
Signed-off-by: Javier Aliaga <javier@diagrid.io>
Signed-off-by: Matheus Cruz <matheuscruz.dev@gmail.com>
Signed-off-by: Matheus Cruz <56329339+mcruzdev@users.noreply.github.com>
Signed-off-by: salaboy <Salaboy@gmail.com>
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: artur-ciocanu <artur.ciocanu@gmail.com>
Signed-off-by: Artur Ciocanu <ciocanu@adobe.com>
Signed-off-by: Dapr Bot <daprweb@microsoft.com>
Co-authored-by: Cassie Coyle <cassie.i.coyle@gmail.com>
Co-authored-by: Matheus Cruz <56329339+mcruzdev@users.noreply.github.com>
Co-authored-by: artur-ciocanu <artur.ciocanu@gmail.com>
Co-authored-by: salaboy <Salaboy@gmail.com>
Co-authored-by: Siri Varma Vegiraju <siri.varma@outlook.com>
Co-authored-by: Dapr Bot <56698301+dapr-bot@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Artur Ciocanu <ciocanu@adobe.com>
Co-authored-by: Dapr Bot <daprweb@microsoft.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants