17
17
package org .aero .common .task .count ;
18
18
19
19
import java .util .concurrent .atomic .AtomicLong ;
20
- import java .util .function .Consumer ;
21
20
import java .util .function .Supplier ;
22
21
23
22
@ SuppressWarnings ("MissingJavadocType" )
24
23
public abstract class AbstractCountingRunnable implements CountingRunnable {
25
24
26
25
protected final Supplier <Boolean > condition ;
27
- protected final Consumer < Boolean > callback ;
26
+ protected final Runnable callback ;
28
27
protected final int step ;
29
28
protected final AtomicLong count ;
30
29
31
30
@ SuppressWarnings ("MissingJavadocMethod" )
32
- public AbstractCountingRunnable (final int step , final long count , final Supplier <Boolean > condition , final Consumer < Boolean > callback ) {
31
+ public AbstractCountingRunnable (final int step , final long count , final Supplier <Boolean > condition , final Runnable callback ) {
33
32
this .step = step ;
34
33
this .count = new AtomicLong (count );
35
34
this .condition = condition ;
@@ -39,11 +38,10 @@ public AbstractCountingRunnable(final int step, final long count, final Supplier
39
38
@ SuppressWarnings ("MissingJavadocMethod" )
40
39
@ Override
41
40
public void run () {
42
- final boolean result = this .condition .get ();
43
- if (result ) {
41
+ if (this .condition .get ()) {
44
42
this .count .getAndAdd (this .step );
45
43
}
46
- this .callback .accept ( result );
44
+ this .callback .run ( );
47
45
}
48
46
49
47
@ SuppressWarnings ("MissingJavadocMethod" )
0 commit comments