Skip to content

Commit 3afd730

Browse files
authored
Update README.md
1 parent f206932 commit 3afd730

File tree

1 file changed

+33
-32
lines changed

1 file changed

+33
-32
lines changed

README.md

Lines changed: 33 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -123,50 +123,51 @@ PersistentTask<Vehicle> task1(VehicleHttpConnector vehicleHttpConnector) {
123123
### Direct usage of the `TriggerService` or `PersistentTaskService`.
124124

125125
```java
126-
private final TriggerService triggerService;
127-
private final PersistentTaskService persistentTaskService;
128-
129-
public void buildVehicle() {
130-
// Vehicle has to be Serializable
131-
final var v = new Vehicle();
132-
// set any data to v ...
133-
134-
// queue it
135-
triggerService.queue(BuildVehicleTask.ID.newUniqueTrigger(v));
136-
// will queue it and run it if possible.
137-
// if the scheduler service is missing it is same as above
138-
persistentTaskService.runOrQueue(BuildVehicleTask.ID.newUniqueTrigger(v));
139-
}
126+
private final TriggerService triggerService;
127+
private final PersistentTaskService persistentTaskService;
128+
129+
public void buildVehicle() {
130+
// Vehicle has to be Serializable
131+
final var v = new Vehicle();
132+
// set any data to v ...
133+
134+
// EITHER: queue it, will run later
135+
triggerService.queue(BuildVehicleTask.ID.newUniqueTrigger(v));
136+
137+
// OR: will queue it and run it if possible.
138+
// if the scheduler service is missing it is same as using the TriggerService
139+
persistentTaskService.runOrQueue(BuildVehicleTask.ID.newUniqueTrigger(v));
140+
}
140141
```
141142

142-
### Build Trigger
143+
### Build complex Trigger
143144

144145
```java
145-
private final TriggerService triggerService;
146+
private final PersistentTaskService persistentTaskService;
146147

147-
public void buildVehicle() {
148-
var trigger = TaskTriggerBuilder
149-
.<Vehicle>newTrigger("task2")
150-
.id("my-id") // will overwrite existing triggers
151-
.state(new Vehicle("funny"))
152-
.runAfter(Duration.ofHours(2))
153-
.build();
148+
public void buildVehicle() {
149+
var trigger = TaskTriggerBuilder
150+
.<Vehicle>newTrigger("task2")
151+
.id("my-id") // will overwrite existing triggers
152+
.state(new Vehicle("funny"))
153+
.runAfter(Duration.ofHours(2))
154+
.build();
154155

155-
triggerService.queue(trigger);
156-
}
156+
persistentTaskService.runOrQueue(trigger);
157+
}
157158
```
158159

159160
### Use a Spring Event
160161

161162
```java
162-
private final TriggerService triggerService;
163+
private final ApplicationEventPublisher eventPublisher;
163164

164-
public void buildVehicle() {
165-
// Vehicle has to be Serializable
166-
final var v = new Vehicle();
167-
// set any data
168-
triggerService.queue(BuildVehicleTask.ID.newUniqueTrigger(v));
169-
}
165+
public void buildVehicle() {
166+
// Vehicle has to be Serializable
167+
final var v = new Vehicle();
168+
// send an event with the trigger inside - same as calling the PersistentTaskService
169+
eventPublisher.publishEvent(TriggerTaskCommand.of(BuildVehicleTask.ID.newUniqueTrigger(v)));
170+
}
170171
```
171172

172173
### JUnit Tests

0 commit comments

Comments
 (0)