Added Suspicios annotation
This commit is contained in:
parent
6ded5b3a49
commit
e9092e63db
5 changed files with 24 additions and 11 deletions
|
|
@ -0,0 +1,5 @@
|
|||
package ru.nbch.credit_tracker.refactoring;
|
||||
|
||||
public @interface Suspicios {
|
||||
String value();
|
||||
}
|
||||
|
|
@ -2,6 +2,7 @@ package ru.nbch.credit_tracker.service.task;
|
|||
|
||||
import ru.nbch.credit_tracker.model.PipelineContext;
|
||||
import ru.nbch.credit_tracker.model.StagePayload;
|
||||
import ru.nbch.credit_tracker.refactoring.Suspicios;
|
||||
|
||||
public interface Handler<X extends StagePayload, Z extends StagePayload> {
|
||||
Z handle(X taskPayload);
|
||||
|
|
@ -12,9 +13,11 @@ public interface Handler<X extends StagePayload, Z extends StagePayload> {
|
|||
return (PipelineContext<T>) ctx;
|
||||
}
|
||||
|
||||
@Suspicios("Удалить?")
|
||||
default void handleOnPoison(X poison){
|
||||
//do nothing
|
||||
}
|
||||
|
||||
default int preferredConcurrency() {return 10;}
|
||||
|
||||
Z cookPoison();
|
||||
|
|
|
|||
|
|
@ -1,15 +1,16 @@
|
|||
package ru.nbch.credit_tracker.service.task;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.concurrent.ExecutorService;
|
||||
import java.util.concurrent.Future;
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import ru.nbch.credit_tracker.model.PipelineContext;
|
||||
import ru.nbch.credit_tracker.service.task.setup.IPipeLineTerminator;
|
||||
import ru.nbch.credit_tracker.utils.LogUtil;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.concurrent.ExecutorService;
|
||||
import java.util.concurrent.Future;
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
|
||||
public class Pipeline {
|
||||
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||
private Runnable starter;
|
||||
|
|
@ -21,9 +22,6 @@ public class Pipeline {
|
|||
private PipelineContext<?> context;
|
||||
private volatile long startTime;
|
||||
|
||||
public Pipeline() {
|
||||
}
|
||||
|
||||
public void start(ExecutorService executorService) {
|
||||
this.startTime = System.currentTimeMillis();
|
||||
this.starterFuture = executorService.submit(LogUtil.wrap(LogUtil.extractMdcMap(), starter));
|
||||
|
|
|
|||
|
|
@ -1,14 +1,16 @@
|
|||
package ru.nbch.credit_tracker.service.task.setup;
|
||||
|
||||
import java.util.Objects;
|
||||
import java.util.concurrent.BlockingQueue;
|
||||
import java.util.function.Consumer;
|
||||
import ru.nbch.credit_tracker.model.StagePayload;
|
||||
import ru.nbch.credit_tracker.refactoring.Suspicios;
|
||||
import ru.nbch.credit_tracker.service.task.Handler;
|
||||
import ru.nbch.credit_tracker.service.task.Stage;
|
||||
import ru.nbch.credit_tracker.service.task.setup.step.BuildStep;
|
||||
import ru.nbch.credit_tracker.service.task.setup.step.HandlerStep;
|
||||
|
||||
import java.util.Objects;
|
||||
import java.util.concurrent.BlockingQueue;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
/**
|
||||
* Step Builder для Stage:
|
||||
* Обязательная последовательность: handler(...) -> poison(...) -> buildStage()
|
||||
|
|
@ -46,6 +48,7 @@ public class StageBuilderV2<FIRST extends StagePayload, I extends StagePayload,
|
|||
return this;
|
||||
}
|
||||
|
||||
@Suspicios("Удалить?")
|
||||
@Override
|
||||
public BuildStep<FIRST, O> handlerResult(Consumer<O> consumer) {
|
||||
this.consumer = Objects.requireNonNull(consumer, "consumer is required");
|
||||
|
|
|
|||
|
|
@ -1,10 +1,14 @@
|
|||
package ru.nbch.credit_tracker.service.task.setup.step;
|
||||
|
||||
import java.util.function.Consumer;
|
||||
import ru.nbch.credit_tracker.model.StagePayload;
|
||||
import ru.nbch.credit_tracker.refactoring.Suspicios;
|
||||
import ru.nbch.credit_tracker.service.task.setup.PipeLineBuilderV2;
|
||||
|
||||
import java.util.function.Consumer;
|
||||
|
||||
public interface BuildStep<FIRST extends StagePayload, O extends StagePayload> {
|
||||
PipeLineBuilderV2<FIRST, O> andThen();
|
||||
|
||||
@Suspicios("Удалить?")
|
||||
BuildStep<FIRST, O> handlerResult(Consumer<O> consumer);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue