Skip to content

Commit 0725491

Browse files
committed
Refactor add behavior for consistency between different usage
Now chain_Chainable a = new CustomChainable(); a.add(new CustomChainable()).add(new CustomChainable()).add(new CustomChainable()) will work the same as chain_Chainable a = new CustomChainable(); a.add(new CustomChainable()); a.add(new CustomChainable()); a.add(new CustomChainable());
1 parent 84dc42f commit 0725491

File tree

3 files changed

+10
-9
lines changed

3 files changed

+10
-9
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1-
.vscode
1+
.vscode
2+
.sfdx

force-app/main/default/classes/chain_Chainable.cls

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,12 @@ public inherited sharing abstract class chain_Chainable {
2828
}*/
2929

3030
public virtual chain_Chainable add(final chain_Chainable aChain) {
31-
this.nextJob = aChain;
32-
chain_Chainable tempChain = aChain;
33-
while(tempChain != null && tempChain.nextJob != null) {
31+
chain_Chainable tempChain = this.nextJob;
32+
while(tempChain != null) {
3433
tempChain = tempChain.nextJob;
3534
}
36-
return tempChain;
35+
tempChain = aChain;
36+
return this;
3737
}
3838

3939
protected void chain() {

force-app/main/default/classes/chain_Chainable_TEST.cls

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,10 @@ private class chain_Chainable_TEST {
2020
.Add(new chain_Schedule_TEST('test','0 0 * * * ?'))
2121
.Add(new chain_Future_TEST())
2222
.Add(new chain_Future_TEST())
23-
.Add(new chain_ScheduleBatch_TEST('test',1,1))
24-
.Add(new chain_Future_TEST())
25-
.Add(new chain_Queue_TEST())
26-
;
23+
.Add(new chain_ScheduleBatch_TEST('test',1,1));
24+
25+
aChainable.Add(new chain_Future_TEST());
26+
aChainable.Add(new chain_Queue_TEST());
2727

2828
test.startTest();
2929
aChainable.executeChain();

0 commit comments

Comments
 (0)