Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update for D4Science dev release #7

Open
wants to merge 783 commits into
base: main
Choose a base branch
from
Open
Changes from 1 commit
Commits
Show all changes
783 commits
Select commit Hold shift + click to select a range
76921a7
correct dependency
manan164 Jan 10, 2023
c38ef47
test fix
manan164 Jan 10, 2023
0908c00
fixed task card open in chrome and firefox
sourabh30 Jan 16, 2023
0c30109
Remove tasks from Elasticsearch when workflow is removed (#3300)
RemcoBuddelmeijer Jan 23, 2023
7bb2792
Merge pull request #3336 from paescuj/patch-1
apanicker-nflx Jan 23, 2023
c0e1527
Merge pull request #3363 from hanyf/main
apanicker-nflx Jan 23, 2023
bfb5430
doc updates.md (#3364)
RizaFarheen Jan 23, 2023
e8b5719
Use AmazonSQS instead of AmazonSQSClient #3398 #3390
ctlove0523 Jan 23, 2023
b13fbc8
Update README.md (#3452)
Ishaan2053 Jan 23, 2023
7db23d7
add support compilation on m1 mac (#3376)
v1r3n Jan 23, 2023
5d94791
Improve Java Worker documentation (#3418)
yuri1969 Jan 23, 2023
1fb6098
Update the config properties for external payload storage (#3441)
bjpirt Jan 23, 2023
06c25e7
Add option to add payloadBytes into getLocation method (#3383)
SimonMisencik Jan 23, 2023
58707e2
Fix unused version in Running Workflows metric (#3386)
james-deee Jan 24, 2023
eba3fc3
Task details not showing in UI
ceisen1 Jan 23, 2023
f052e35
Bump decode-uri-component from 0.2.0 to 0.2.2 in /ui
dependabot[bot] Dec 8, 2022
c8c825d
Rerun spotlessApply
Jan 26, 2023
b88c27d
Allow for an upgrade of log4j2 versions by loosening constraint (#3321)
james-deee Jan 26, 2023
719677d
Documentation - minor issue fixes (#3462)
ropereraLK Jan 26, 2023
e241f84
Update fork-task.md
ropereraLK Jan 27, 2023
2e4cb04
Update inline-task.md
ropereraLK Jan 27, 2023
2da4edb
Bump com.thoughtworks.xstream:xstream from 1.4.19 to 1.4.20
dependabot[bot] Feb 6, 2023
05f5577
Enable the endpoint to be configured for SQS
bjpirt Feb 3, 2023
ef403ff
removed task ref name when processing event queue
astelmashenko Feb 16, 2023
a72599f
fixed formatting
astelmashenko Feb 16, 2023
5bdb4ac
use spring events to initialize workers and added tests
v1r3n Feb 15, 2023
ab7e052
Update switch-task.md
Feb 22, 2023
00ee66e
[docs]: update join-task.md
Feb 22, 2023
a5ce1e1
Updated to make it work on Apple Mac M1
sandeep540 Feb 23, 2023
d377a7b
Improve Elasticsearch-related problems description (#3417)
yuri1969 Feb 24, 2023
13e433c
support for unit and integration tests of the workflows
v1r3n Feb 24, 2023
6d6d1c1
disable tests
v1r3n Feb 24, 2023
d14c915
Merge branch 'main' of https://github.com/Netflix/conductor
manan164 Mar 2, 2023
db51392
Update README.md (#3514)
v1r3n Mar 3, 2023
ca18e94
update formatting
v1r3n Mar 3, 2023
34a6cff
Merge branch 'main' into jq_execute_method
v1r3n Mar 4, 2023
eb55096
Make LocalOnlyLock reentrant
marosmars Feb 28, 2023
ad1c785
Merge pull request #3513 from marosmars/reentrant_local_lock
v1r3n Mar 11, 2023
b3d4390
Add `ownerEmail` to eventhandlers.md
bdparrish Mar 12, 2023
b5125d2
Merge pull request #3479 from bjpirt/configure-sqs-endpoint
v1r3n Mar 13, 2023
cc7495c
Merge pull request #3492 from v1r3n/sdk_worker_enhancements
v1r3n Mar 13, 2023
588d616
Merge pull request #3495 from astelmashenko/feature/wait-complete-ins…
v1r3n Mar 13, 2023
972092b
Merge pull request #3498 from tantommy/patch-1
v1r3n Mar 13, 2023
1e515a6
Merge pull request #3375 from v1r3n/jq_execute_method
v1r3n Mar 13, 2023
445a05c
Merge pull request #3529 from bdparrish/patch-1
v1r3n Mar 13, 2023
a4500f1
Merge pull request #3507 from v1r3n/testing_framework
v1r3n Mar 13, 2023
6113dcd
Merge pull request #3503 from sandeep540/patch-2
v1r3n Mar 13, 2023
0128833
Merge pull request #3499 from tantommy/patch-3
v1r3n Mar 13, 2023
ce5e0d0
Merge pull request #3466 from ropereraLK/ropereraLK-doc-fixes
v1r3n Mar 13, 2023
5aa3f06
Merge branch 'main' into orkes_queue_default
manan164 Mar 14, 2023
5db9bd2
Added missing property
manan164 Mar 14, 2023
51a01f2
Merge branch 'main' of https://github.com/Netflix/conductor into orke…
manan164 Mar 14, 2023
3f81d3f
Merge pull request #3435 from manan164/orkes_queue_default
v1r3n Mar 14, 2023
67d87c2
Add in a default AWS credentials provider
bjpirt Feb 3, 2023
ec81ad5
Curl is not available in the rabbitmq image
dragorosson Mar 15, 2023
960ed05
Merge pull request #3535 from dragorosson/fix_healthcheck
v1r3n Mar 16, 2023
f8cae81
Merge pull request #3371 from AvitalOfstein/main
v1r3n Mar 16, 2023
9fd1990
Merge pull request #3480 from Netflix/dependabot/gradle/com.thoughtwo…
v1r3n Mar 16, 2023
17ac903
Merge pull request #3478 from bjpirt/aws-credentials
v1r3n Mar 16, 2023
a8102db
apply spotless
v1r3n Mar 16, 2023
8c65ec1
Merge pull request #3537 from Netflix/spotless
v1r3n Mar 16, 2023
2a47620
fix docker builds
v1r3n Mar 20, 2023
9465a46
support task domains in the worker spring configuration
v1r3n Mar 27, 2023
5443798
apply formatting
v1r3n Mar 27, 2023
c241ab4
Update handling-errors.md
davebarda Mar 28, 2023
09f2aca
elastic search with postgres.
manan164 Apr 4, 2023
84edf7a
Merge pull request #3565 from manan164/docker_postgres_with_Es
v1r3n Apr 5, 2023
92ad530
Merge pull request #3543 from Netflix/fix_docker
v1r3n Apr 5, 2023
b7e9b2e
Merge branch 'main' into patch-1
davebarda Apr 9, 2023
43a9e4f
Handling message loose case-
Apr 9, 2023
5cbc53c
Add configurable connection settings for Redis Locking through Redisson
james-deee Apr 10, 2023
902a863
Run Spotless
james-deee Apr 10, 2023
2285531
Fix disappearing outputs from long running tasks
marosmars Apr 11, 2023
3d9b27f
Merge pull request #3573 from marosmars/fixMissingOutputs
v1r3n Apr 11, 2023
19c1d7b
Pass complete workflow as input to failure workflow.
manan164 Apr 12, 2023
0a180ac
test fix
manan164 Apr 12, 2023
8e54b19
Merge pull request #3572 from james-deee/jtd/add-redislocking-connect…
v1r3n Apr 14, 2023
e9a9dbc
Update SwitchTaskMapper.java
v1r3n Apr 15, 2023
a058727
add an output as "selectedCase"
v1r3n Apr 15, 2023
fe3593f
fix typo in clojure-sdk.md
eltociear Apr 18, 2023
b1e2df6
Merge pull request #3554 from davebarda/patch-1
v1r3n Apr 19, 2023
cf3518a
Merge branch 'main' into taskOpenNotWorking
sourabh30 Apr 19, 2023
78dd06c
Remove line break
Apr 19, 2023
cafb898
Remove line break
Apr 19, 2023
e8f1bbe
Merge pull request #3583 from eltociear/patch-1
v1r3n Apr 19, 2023
bd1b0dc
run spotlessApply
Apr 19, 2023
42616b8
run spotlessApply
Apr 19, 2023
f6d6e95
Fix queue publish mock called - shouldn't be called when no errors oc…
Apr 19, 2023
1f2cdce
Apply Spotless
Apr 19, 2023
3981a15
Merge pull request #3585 from AvitalOfstein/feature/nackMessagesCantB…
v1r3n Apr 19, 2023
351243e
Merge pull request #3577 from manan164/failure_workflow_input_fix
v1r3n Apr 19, 2023
aa75b1c
Merge branch 'main' into taskOpenNotWorking
sourabh30 Apr 20, 2023
56acc35
Merge pull request #3580 from v1r3n/add_inputs_in_switch
v1r3n Apr 20, 2023
d39b4bf
Merge pull request #3553 from v1r3n/support_domains
v1r3n Apr 20, 2023
368e6db
inherit task to domains if not specified
v1r3n Apr 23, 2023
31f9a7e
allow terminated as a valid status
v1r3n Apr 23, 2023
7f1f1e0
update the constraints for the wait task
v1r3n Apr 23, 2023
a938c6d
Sample working changes
manan164 Apr 26, 2023
a86eba7
spotless
manan164 Apr 26, 2023
f29657b
fix.
manan164 Apr 26, 2023
34e37ef
Fix NPE for verify and repair if workflow not found
james-deee May 2, 2023
e131870
spotless
james-deee May 2, 2023
01c40fe
Merge pull request #3447 from sourabh30/taskOpenNotWorking
v1r3n May 3, 2023
2908a64
update the link of Main Documentation Site
Q-Bug4 May 5, 2023
5bcd22a
Merge pull request #3598 from james-deee/jtd/fix-npe-if-no-workflow-f…
v1r3n May 8, 2023
c698dc0
Issue-3611: Print actual value that is being validated
charybr May 11, 2023
b81a5cc
Merge pull request #3612 from charybr/patch-1
v1r3n May 16, 2023
4e70d59
Merge pull request #3605 from Q-Bug4/docs-http-to-https
v1r3n May 16, 2023
ee94b89
Merge pull request #3593 from v1r3n/start_workflow_task_domain
v1r3n May 16, 2023
e49a868
Added TaskStatusListener interface - for notifying when a task is
May 23, 2023
9dcb730
Apply spotless.
May 23, 2023
9627d6b
Updated CHANGELOG.md with for conductor.task-status-listener.type.
May 23, 2023
8c58cf1
Fix unit test compilation.
May 24, 2023
f9f14bf
Fix unit test compilation.
May 24, 2023
18319c1
Fix spotlessJavaCheck in conductor-client.
May 24, 2023
2b4cfa0
Fix spotlessJavaCheck.
May 24, 2023
5303036
Fix spotlessJavaCheck.
May 24, 2023
f4f3426
Avoid exception message set to 'null'
marosmars May 15, 2023
4ff8a49
TaskStatusListener interface generalized to include all statuses so that
May 26, 2023
7035276
Added notify TaskStatusListener method in updateTask. Added methods
May 26, 2023
815109f
Added exception handling while notifying TaskStatusListener.
May 26, 2023
4fb9806
Merge pull request #3625 from marosmars/main
v1r3n May 27, 2023
c5343ac
Add property for the timeout of sweeper polling
lsfe87 Jun 1, 2023
5c78a08
Merge branch 'Netflix:main' into feature/task_status_listener
charybr Jun 2, 2023
3d02f22
Assign the value in seconds to postponeDurationSeconds in WAIT
yohanyflores Jun 4, 2023
dc798dd
Fix Fix WAIT task is not working properly (after v3.13.0) #3402
yohanyflores Jun 5, 2023
04b8747
Merge pull request #3633 from lsfe87/sweeper_timeout_config
v1r3n Jun 8, 2023
1fea8d7
removing dead tasks from queue message
astelmashenko Jun 8, 2023
a709ad2
fixed formatting
astelmashenko Jun 8, 2023
e11a3e7
Merge pull request #3594 from manan164/join_task_fix
v1r3n Jun 8, 2023
878fcd9
Merge pull request #3644 from astelmashenko/bugfix/message-queue-dead…
v1r3n Jun 8, 2023
ca6717e
Support Wait with waittimeout = 0
yohanyflores Jun 9, 2023
ca1830c
Merge branch 'main' into fix-task-not-working-properly
yohanyflores Jun 10, 2023
62ee65a
Merge branch 'Netflix:main' into feature/task_status_listener
charybr Jun 13, 2023
21e22bf
Added a new workflow metadata endpoint for latest versions
Jun 13, 2023
5d32287
Fix Wait one second more
yohanyflores Jun 15, 2023
bcf9641
Refactoring Long Literal
yohanyflores Jun 15, 2023
48e23ef
Lazy evaluate workflow only in case of task is successful.
manan164 Jun 15, 2023
73e3e66
spotless
manan164 Jun 15, 2023
15b2298
unit test
manan164 Jun 15, 2023
e68dee6
Merge pull request #3623 from charybr/feature/task_status_listener
v1r3n Jun 17, 2023
3920aee
Merge pull request #3639 from yohanyflores/fix-task-not-working-properly
v1r3n Jun 19, 2023
f07dc36
Merge pull request #3655 from manan164/join_task_fix2
v1r3n Jun 21, 2023
476ff3b
Merge branch 'main' into alexmay48/new-workflow-metadata-endpoint
alexmay48 Jun 23, 2023
acdce55
revert nashorn back to java 11 compatibility
alexmay48 Jun 26, 2023
d3c7807
make method name clearer
alexmay48 Jun 26, 2023
1d5b4ca
FIX: Switch Task remains in PENDING state when evalutor throws exception
supriyanta Jun 27, 2023
728370b
Update WhosUsing.md with ReliaQuest
rq-dbrady Jun 27, 2023
0685331
Adding Clari as user of the Conductor
hchepey-clari Jun 28, 2023
e8328a1
Merge pull request #3676 from hchepey-clari/Clari-Whoisusing
v1r3n Jun 28, 2023
fdc03dc
Merge branch 'main' into dalebrady/UpdateWhosUsing
v1r3n Jun 28, 2023
631a04d
Merge pull request #3675 from rq-dbrady/dalebrady/UpdateWhosUsing
v1r3n Jun 28, 2023
ebf3919
add new endpoint to conductor-client
alexmay48 Jun 30, 2023
cfa0f69
Fixed Docker issues
JCHacking Jul 1, 2023
8e4de4f
Merge pull request #3673 from supriyanta/switchTask_fix
v1r3n Jul 2, 2023
fb0eaf7
update to add star and fork count
v1r3n Jul 4, 2023
9c8f184
Merge pull request #3681 from v1r3n/update_readme_v2
v1r3n Jul 4, 2023
cb39e12
Fix timeline does not show when using the DO_WHILE loop.
ppolxda Jul 5, 2023
1d3de77
updates to readme with resources
v1r3n Jul 7, 2023
7a36c21
Merge branch 'main' into fixed-docker-issues-build
JCHacking Jul 7, 2023
3c32045
updated slack link
v1r3n Jul 7, 2023
690968b
Merge pull request #3686 from v1r3n/readme_update_v3
v1r3n Jul 7, 2023
f013a53
Merge pull request #3670 from alexmay48/alexmay48/new-workflow-metada…
v1r3n Jul 8, 2023
c290346
Merge branch 'main' into fixed-docker-issues-build
JCHacking Jul 10, 2023
0afdef1
Fix docker builds.
manan164 Jul 11, 2023
c0048e3
Added the ability to inject a custom AmazonS3 client
Jul 18, 2023
a469abd
Added the ability to inject a custom AmazonS3 client
Jul 19, 2023
5d40a20
Update to Java 17
alexmay48 Jul 20, 2023
fdcdf51
Update google protobuf
alexmay48 Jul 21, 2023
625bbf3
generateLock saveLock
alexmay48 Jul 21, 2023
fc8a206
Merge pull request #3705 from alexmay48/alexmay48/update-protobuf
v1r3n Jul 23, 2023
728925f
Merge pull request #3699 from PavelShahoiko/feature/make-s3-as-depend…
v1r3n Jul 23, 2023
f4c95a4
Merge pull request #3682 from ppolxda/merge
v1r3n Jul 23, 2023
d0a5883
Merge pull request #3680 from JCHacking/fixed-docker-issues-build
v1r3n Jul 25, 2023
e8d3f55
Removing TaskDef retryCount cap of 10.
hchepey-clari Aug 10, 2023
a32acec
Merge pull request #3729 from hchepey-clari/RemoveRetryCountCap
v1r3n Aug 11, 2023
e4b2e11
Merge remote-tracking branch 'origin/main' into alexmay48/java17-update
alexmay48 Aug 14, 2023
a801052
Use nashorn explicitly
alexmay48 Aug 14, 2023
e482185
Add nashorn to dependency locks
alexmay48 Aug 14, 2023
4d99ff5
Merge pull request #3692 from manan164/fix_docker_build
v1r3n Aug 29, 2023
878a512
issue-3719: Fix for http task stuck due to NPE
saksham2105 Sep 1, 2023
46dd3df
issue-3719: Fix format violations
saksham2105 Sep 1, 2023
4e993d3
issue-3719: Added disk based approach to prevent oom
saksham2105 Sep 2, 2023
13a689d
issue-3719: Added unit testcases to verify download functionality
saksham2105 Sep 5, 2023
1480ac3
feature support nested jsonpath expressions
Sep 6, 2023
1735708
issue-3719: removed any from location in test setup
saksham2105 Sep 7, 2023
253ef0e
Update WHOSUSING.md
LuisLainez Sep 11, 2023
6359617
Merge pull request #3766 from LuisLainez/patch-1
v1r3n Sep 11, 2023
cad289c
update github workflows to use Java 17
alexmay48 Sep 11, 2023
43fe39e
update script engine initialization
alexmay48 Sep 12, 2023
76c20bc
Merge branch 'main' into alexmay48/java17-update
alexmay48 Sep 12, 2023
d1642ca
Added logging to test scripting. Will remove
alexmay48 Sep 12, 2023
449241f
Merge branch 'main' into feature/nestedJsonpathExpressions
ryanmurf Sep 12, 2023
2de0534
different logging place for testing scripting engine compatibility
alexmay48 Sep 13, 2023
a723f16
spotlessApply
alexmay48 Sep 13, 2023
64d98c0
different logging for testing
alexmay48 Sep 13, 2023
cf9c72a
remove test logging
alexmay48 Sep 13, 2023
0ee6396
try this again
alexmay48 Sep 13, 2023
d0ae084
fix github actions
alexmay48 Sep 13, 2023
b76c659
test logs again
alexmay48 Sep 13, 2023
cfa1591
use nashorn differently
alexmay48 Sep 13, 2023
19c3c70
Fix: terminateReason in TERMINATE Task can use JSONPath expression to…
Young-Zen Sep 14, 2023
ac50271
Merge pull request #3772 from Young-Zen/fix-terminateReason-in-TERMIN…
v1r3n Sep 14, 2023
8416241
Make wait task async
manan164 Sep 15, 2023
0af0f19
spotless
manan164 Sep 15, 2023
6c44599
tests
manan164 Sep 15, 2023
5056dab
spotless in tests
manan164 Sep 15, 2023
0e153f6
Test fix
manan164 Sep 15, 2023
4d0060b
fix test
manan164 Sep 15, 2023
50b6fd4
Merge pull request #3775 from manan164/wait_tasks_fix
v1r3n Sep 16, 2023
013e820
Merge pull request #3733 from alexmay48/alexmay48/java17-update
v1r3n Sep 16, 2023
8850219
Merge pull request #3764 from ryanmurf/feature/nestedJsonpathExpressions
v1r3n Sep 16, 2023
5f688d7
fix test runs
v1r3n Sep 23, 2023
1c899db
Merge pull request #3782 from v1r3n/update_test_runs
v1r3n Sep 23, 2023
a68016e
Fix validation error handling in workflow/task editor
Young-Zen Sep 21, 2023
ee190d5
Wait until calculation fix.
manan164 Sep 27, 2023
3492e6e
Introducing a Noop task to allow for switch decision branches to have…
Sep 27, 2023
4c14bb7
Merge pull request #3786 from manan164/wait_task_test_fix
v1r3n Sep 27, 2023
22ad050
Merge pull request #3779 from Young-Zen/ui-fix-validation-error-handling
v1r3n Sep 27, 2023
5ed77fb
Merge pull request #3756 from saksham2105/http-task-stuck-fix
v1r3n Sep 27, 2023
a5f3188
Merge pull request #3787 from wildMythicWest/main
v1r3n Sep 28, 2023
8cd8d27
Docker updates (#3790)
v1r3n Sep 28, 2023
d164531
Remove log4j constraints for downstream users of client and common (#…
james-deee Sep 29, 2023
8981878
Fix JSONPath replace failed with line terminator (#3810)
Young-Zen Nov 3, 2023
be790a4
Bugfix/Data inconsistency caused by updateEventHandler (#3843)
wy-hua Nov 12, 2023
de2ca10
Fix WorkflowRepairService and AsyncSystemTaskExecutor race condition …
VerstraeteBert Nov 12, 2023
f9b7e5c
Update versions (#3792)
meggarr Nov 12, 2023
b3a1196
Fix: include monaco sources into bundle (#3796)
Young-Zen Nov 12, 2023
9669d46
Optimizing reading from datastore during WorkflowSweeper#sweep (#3816)
wildMythicWest Nov 13, 2023
03cf0c1
Update and rename WHOSUSING.md to USERS.md (#3850)
sandipanpanda Nov 21, 2023
3afe0b5
Update WorkflowExecutor.java (#3852)
youngledo Nov 24, 2023
07fd73a
Fix typo in build-a-golang-task-worker.md (#3860)
gearcog Nov 24, 2023
fc3657a
Adding Redis db index to not have default db index of 0 always and us…
Anupchat Nov 25, 2023
aaa46b5
Fix taskToDomain field not being echoed (#3806)
Young-Zen Nov 25, 2023
921981f
Add support for building on windows (#3831)
Robban1980 Nov 25, 2023
43316a5
ISICO-15108: javascript validation done on updating w/d (#3805)
sarmuru2 Nov 25, 2023
c32d730
Update links in README to match conductor-docs changes (#3811)
mattheimer Nov 25, 2023
52dbb92
Upgrading OSS libraries with known open CVEs (#3778)
scottcarter87 Nov 25, 2023
fb70f49
fix formatting
v1r3n Nov 26, 2023
0f187bf
Feat: Enable hosting app in any route, with easy config (#3722)
haricane8133 Nov 29, 2023
41d4334
[Hot-fix] fix: remove redundant slash that cause proxy fail (#3873)
nhandt2021 Nov 30, 2023
ca422db
Make it more in line with the REST pattern. (#3879)
youngledo Dec 4, 2023
4385356
Added announcement
aravindanr Dec 13, 2023
fce3a93
Update README.md
peterlau Dec 13, 2023
d9a489d
Update README.md
peterlau Dec 13, 2023
efc7082
Update README.md
peterlau Dec 13, 2023
ecc6b5b
Update README.md
peterlau Dec 13, 2023
6dd8478
Update README.md
peterlau Dec 13, 2023
68bb395
Update README.md
aravindanr Dec 13, 2023
548f386
Update README.md
aravindanr Dec 13, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Improve Java Worker documentation (Netflix#3418)
* Heal the Java Worker doc page

* Fixed MD formatting issues
* Fixed broken stylig
* Improved spelling/grammar

* Add missing 'conductor-common' dependency

The `Task`-related classes are located in the 'conductor-common' lib.

* Bumped the lib version
  • Loading branch information
yuri1969 authored Jan 23, 2023
commit 5d94791294ede0480b4776429afc34185b92d81b
65 changes: 43 additions & 22 deletions docs/docs/how-tos/Workers/build-a-java-task-worker.md
Original file line number Diff line number Diff line change
@@ -3,27 +3,39 @@ sidebar_position: 1
---

# Build a Java Task Worker
This guide provides introduction to building Task Workers in Java.

This guide provides introduction to building Task Workers in Java.

## Dependencies
Conductor provides java client libraries, which we will use to build a simple task worker.

Conductor provides Java client libraries, which we will use to build a simple task worker.

### Maven Dependency

```xml
<dependency>
<groupId>com.netflix.conductor</groupId>
<artifactId>conductor-client</artifactId>
<version>3.3.4</version>
<version>3.13.2</version>
</dependency>
<dependency>
<groupId>com.netflix.conductor</groupId>
<artifactId>conductor-common</artifactId>
<version>3.13.2</version>
</dependency>
```

### Gradle

```groovy
implementation group: 'com.netflix.conductor', name: 'conductor-client', version: '3.3.4'
implementation group: 'com.netflix.conductor', name: 'conductor-client', version: '3.13.2'
implementation group: 'com.netflix.conductor', name: 'conductor-common', version: '3.13.2'
```

## Implementing a Task a Worker
## Implementing a Task Worker

To create a worker, implement the `Worker` interface.

```java
public class SampleWorker implements Worker {

@@ -52,20 +64,24 @@ public class SampleWorker implements Worker {
}
}
```

### Implementing worker's logic
Worker's core implementation logic goes in the `execute` method. Upon completion, set the `TaskResult` with status as one of the following:

Worker's core implementation logic goes in the `execute` method. Upon completion, set the `TaskResult` with status as one of the following:

1. **COMPLETED**: If the task has completed successfully.
2. **FAILED**: If there are failures - business or system failures. Based on the task's configuration, when a task fails, it maybe retried.
2. **FAILED**: If there are failures - business or system failures. Based on the task's configuration, when a task fails, it may be retried.

`getTaskDefName()` method returns the name of the task for which this worker provides the execution logic.
The `getTaskDefName()` method returns the name of the task for which this worker provides the execution logic.

See [SampleWorker.java](https://github.com/Netflix/conductor/blob/main/client/src/test/java/com/netflix/conductor/client/sample/SampleWorker.java) for the complete example.

## Configuring polling using TaskRunnerConfigurer
The TaskRunnerConfigurer can be used to register the worker(s) and initialize the polling loop.
Manages the task workers thread pool and server communication (poll and task update).

Use the [Builder](https://github.com/Netflix/conductor/blob/main/client/src/main/java/com/netflix/conductor/client/automator/TaskRunnerConfigurer.java#L64) to create an instance of the TaskRunnerConfigurer. The builder accepts the following parameters:
The `TaskRunnerConfigurer` can be used to register the worker(s) and initialize the polling loop.
It manages the task workers thread pool and server communication (poll and task update).

Use the [Builder](https://github.com/Netflix/conductor/blob/main/client/src/main/java/com/netflix/conductor/client/automator/TaskRunnerConfigurer.java#L64) to create an instance of the `TaskRunnerConfigurer`. The builder accepts the following parameters:

```java
TaskClient taskClient = new TaskClient();
@@ -84,37 +100,42 @@ Use the [Builder](https://github.com/Netflix/conductor/blob/main/client/src/main
// Start the polling and execution of tasks
configurer.init();
```
See [Sample](https://github.com/Netflix/conductor/blob/main/client/src/test/java/com/netflix/conductor/client/sample/Main.java) for full example.

### Configuration Details
Initialize the Builder with the following:
TaskClient | TaskClient used to communicate to the Conductor server |
| Workers | Workers that will be used for polling work and task execution. |
See [Sample](https://github.com/Netflix/conductor/blob/main/client/src/test/java/com/netflix/conductor/client/sample/Main.java) for full example.

### Configuration Details

Initialize the `Builder` with the following:

| Parameter | Description |
| --- | --- |
| TaskClient | TaskClient used to communicate with the Conductor server |
| Workers | Workers that will be used for polling work and task execution. |

| Parameter | Description | Default |
| --- | --- | --- |
| withEurekaClient | EurekaClient is used to identify if the server is in discovery or not. When the server goes out of discovery, the polling is stopped unless `pollOutOfDiscovery` is set to true. If passed null, discovery check is not done. | provided by platform |
| withEurekaClient | EurekaClient is used to identify if the server is in discovery or not. When the server goes out of discovery, the polling is stopped unless `pollOutOfDiscovery` is set to true. If passed null, discovery check is not done. | provided by platform |
| withThreadCount | Number of threads assigned to the workers. Should be at-least the size of taskWorkers to avoid starvation in a busy system. | Number of registered workers |
| withSleepWhenRetry | Time in milliseconds, for which the thread should sleep when task update call fails, before retrying the operation. | 500 |
| withUpdateRetryCount | Number of attempts to be made when updating task status when update status call fails. | 3 |
| withWorkerNamePrefix | String prefix that will be used for all the workers. | workflow-worker- |

Once an instance is created, call `init()` method to initialize the TaskPollExecutor and begin the polling and execution of tasks.
Once an instance is created, call `init()` method to initialize the `TaskPollExecutor` and begin the polling and execution of tasks.

!!! tip "Note"
To ensure that the TaskRunnerConfigurer stops polling for tasks when the instance becomes unhealthy, call the provided `shutdown()` hook in a `PreDestroy` block.
To ensure that the `TaskRunnerConfigurer` stops polling for tasks when the instance becomes unhealthy, call the provided `shutdown()` hook in a `PreDestroy` block.

#### Properties

**Properties**
The worker behavior can be further controlled by using these properties:

| Property | Type | Description | Default |
| --- | --- | --- | --- |
| paused | boolean | If set to true, the worker stops polling.| false |
| pollInterval | int | Interval in milliseconds at which the server should be polled for tasks. | 1000 |
| pollOutOfDiscovery | boolean | If set to true, the instance will poll for tasks regardless of the discovery <br/> status. This is useful while running on a dev machine. | false |
| pollOutOfDiscovery | boolean | If set to true, the instance will poll for tasks regardless of the discovery status. This is useful while running on a dev machine. | false |

Further, these properties can be set either by Worker implementation or by setting the following system properties in the JVM:
Further, these properties can be set either by a `Worker` implementation or by setting the following system properties in the JVM:

| Name | Description |
| --- | --- |