From ee6a0534a8fd6b436a4926796c0b84cfd0bb1cc8 Mon Sep 17 00:00:00 2001 From: Andrea Cavalli Date: Sat, 22 Jan 2022 23:22:04 +0100 Subject: [PATCH] Add disableLog --- .../reactiveapi/transformer/DisableLogs.java | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 src/main/java/it/tdlight/reactiveapi/transformer/DisableLogs.java diff --git a/src/main/java/it/tdlight/reactiveapi/transformer/DisableLogs.java b/src/main/java/it/tdlight/reactiveapi/transformer/DisableLogs.java new file mode 100644 index 0000000..f30e5f0 --- /dev/null +++ b/src/main/java/it/tdlight/reactiveapi/transformer/DisableLogs.java @@ -0,0 +1,26 @@ +package it.tdlight.reactiveapi.transformer; + +import it.tdlight.jni.TdApi; +import it.tdlight.jni.TdApi.OptionValueBoolean; +import it.tdlight.reactiveapi.ResultingEvent; +import it.tdlight.reactiveapi.ResultingEvent.TDLibBoundResultingEvent; +import it.tdlight.reactiveapi.ResultingEventTransformer; +import java.util.List; +import reactor.core.publisher.Flux; + +public class DisableLogs implements ResultingEventTransformer { + + @Override + public Flux transform(boolean isBot, Flux events) { + return events.concatMapIterable(event -> { + + // Append SetVerbosityLevel after SetTDLibParameters + if (event instanceof TDLibBoundResultingEvent tdLibBoundResultingEvent + && tdLibBoundResultingEvent.action() instanceof TdApi.SetTdlibParameters) { + return List.of(event, new TDLibBoundResultingEvent<>(new TdApi.SetLogVerbosityLevel(0))); + } + + return List.of(event); + }); + } +}