本文整理了Java中akka.stream.javadsl.Flow.toMat()
方法的一些代码示例,展示了Flow.toMat()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Flow.toMat()
方法的具体详情如下:
包路径:akka.stream.javadsl.Flow
类名称:Flow
方法名:toMat
暂无
代码示例来源:origin: com.typesafe.play/play_2.12
@Override
public Accumulator<ByteString, F.Either<Result, A>> apply(Http.RequestHeader request) {
Flow<ByteString, ByteString, Future<MaxSizeStatus>> takeUpToFlow = Flow.fromGraph(play.api.mvc.BodyParsers$.MODULE$.takeUpTo(maxLength));
Sink<ByteString, CompletionStage<F.Either<Result, A>>> result = apply1(request).toSink();
return Accumulator.fromSink(takeUpToFlow.toMat(result, (statusFuture, resultFuture) ->
FutureConverters.toJava(statusFuture).thenCompose(status -> {
if (status instanceof MaxSizeNotExceeded$) {
return resultFuture;
} else {
return errorHandler.onClientError(request, Status$.MODULE$.REQUEST_ENTITY_TOO_LARGE(), "Request entity too large")
.thenApply(F.Either::<Result, A>Left);
}
})
));
}
代码示例来源:origin: com.typesafe.play/play
@Override
public Accumulator<ByteString, F.Either<Result, A>> apply(Http.RequestHeader request) {
Flow<ByteString, ByteString, Future<MaxSizeStatus>> takeUpToFlow = Flow.fromGraph(play.api.mvc.BodyParsers$.MODULE$.takeUpTo(maxLength));
Sink<ByteString, CompletionStage<F.Either<Result, A>>> result = apply1(request).toSink();
return Accumulator.fromSink(takeUpToFlow.toMat(result, (statusFuture, resultFuture) ->
FutureConverters.toJava(statusFuture).thenCompose(status -> {
if (status instanceof MaxSizeNotExceeded$) {
return resultFuture;
} else {
return errorHandler.onClientError(request, Status$.MODULE$.REQUEST_ENTITY_TOO_LARGE(), "Request entity too large")
.thenApply(F.Either::<Result, A>Left);
}
})
));
}
代码示例来源:origin: com.typesafe.play/play_2.11
@Override
public Accumulator<ByteString, F.Either<Result, A>> apply(Http.RequestHeader request) {
Flow<ByteString, ByteString, Future<MaxSizeStatus>> takeUpToFlow = Flow.fromGraph(play.api.mvc.BodyParsers$.MODULE$.takeUpTo(maxLength));
Sink<ByteString, CompletionStage<F.Either<Result, A>>> result = apply1(request).toSink();
return Accumulator.fromSink(takeUpToFlow.toMat(result, (statusFuture, resultFuture) ->
FutureConverters.toJava(statusFuture).thenCompose(status -> {
if (status instanceof MaxSizeNotExceeded$) {
return resultFuture;
} else {
return errorHandler.onClientError(request, Status$.MODULE$.REQUEST_ENTITY_TOO_LARGE(), "Request entity too large")
.thenApply(F.Either::<Result, A>Left);
}
})
));
}
代码示例来源:origin: com.typesafe.play/play-streams_2.11
public <D> Accumulator<D, A> through(Flow<D, E, ?> flow) {
return new SinkAccumulator<>(flow.toMat(toSink, Keep.right()));
}
代码示例来源:origin: com.typesafe.play/play-streams_2.12
public <D> Accumulator<D, A> through(Flow<D, E, ?> flow) {
return new SinkAccumulator<>(flow.toMat(toSink, Keep.right()));
}
代码示例来源:origin: com.typesafe.play/play-streams_2.11
public <D> Accumulator<D, A> through(Flow<D, E, ?> flow) {
return new SinkAccumulator<>(flow.toMat(sink, Keep.right()));
}
代码示例来源:origin: com.typesafe.play/play-streams_2.12
public <D> Accumulator<D, A> through(Flow<D, E, ?> flow) {
return new SinkAccumulator<>(flow.toMat(sink, Keep.right()));
}
内容来源于网络,如有侵权,请联系作者删除!