0

在批处理数据加载器中,我正在调用 api 以获取基于项目 id 的一些数据,但我还需要将一些额外的标头传递给数据加载器以调用该 api

public class CustomDataLoader implements BatchLoader<Integer, Content> {
    private final RequestProcessor requestProcessor;

    @Autowired
    public CustomDataLoader(RequestProcessor requestProcessor) {
        this.requestProcessor = requestProcessor;
    }

    @Override
    public CompletionStage<List<Content>> load(List<Integer> keys) {
        return requestProcessor.processRequest(new ProcessingUnit<>(new CustomRequest(keys)), CustomResponse.class)
                .map(customResponse -> customResponse.getBody()
                        .getResults().getMap().values().stream().collect(Collectors.toList()))
                .toFuture();
    }
}
4

0 回答 0