mirror of
https://github.com/jwdeveloper/TikTokLiveJava.git
synced 2026-02-27 16:59:39 -05:00
-- tests improvement
This commit is contained in:
@@ -78,17 +78,6 @@ public class TikTokLiveClient implements LiveClient
|
||||
this.logger = logger;
|
||||
}
|
||||
|
||||
public void connectAsync(Consumer<LiveClient> onConnection) {
|
||||
connectAsync().thenAccept(onConnection);
|
||||
}
|
||||
|
||||
public CompletableFuture<LiveClient> connectAsync() {
|
||||
return CompletableFuture.supplyAsync(() -> {
|
||||
connect();
|
||||
return this;
|
||||
});
|
||||
}
|
||||
|
||||
public void connect() {
|
||||
try {
|
||||
tryConnect();
|
||||
@@ -199,4 +188,15 @@ public class TikTokLiveClient implements LiveClient
|
||||
messageHandler.handleSingleMessage(this, message);
|
||||
}
|
||||
|
||||
|
||||
public void connectAsync(Consumer<LiveClient> onConnection) {
|
||||
connectAsync().thenAccept(onConnection);
|
||||
}
|
||||
|
||||
public CompletableFuture<LiveClient> connectAsync() {
|
||||
return CompletableFuture.supplyAsync(() -> {
|
||||
connect();
|
||||
return this;
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -70,6 +70,12 @@ public class TikTokLiveClientBuilder implements LiveClientBuilder {
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public LiveClientBuilder onMappings(Consumer<LiveMapper> onCustomMappings) {
|
||||
mappings(onCustomMappings);
|
||||
return this;
|
||||
}
|
||||
|
||||
public TikTokLiveClientBuilder configure(Consumer<LiveClientSettings> onConfigure) {
|
||||
onConfigure.accept(clientSettings);
|
||||
return this;
|
||||
|
||||
@@ -25,6 +25,7 @@ package io.github.jwdeveloper.tiktok.listener;
|
||||
|
||||
import io.github.jwdeveloper.dependance.api.DependanceContainer;
|
||||
import io.github.jwdeveloper.tiktok.annotations.TikTokEventObserver;
|
||||
import io.github.jwdeveloper.tiktok.data.events.TikTokErrorEvent;
|
||||
import io.github.jwdeveloper.tiktok.data.events.common.TikTokEvent;
|
||||
import io.github.jwdeveloper.tiktok.exceptions.TikTokEventListenerMethodException;
|
||||
import io.github.jwdeveloper.tiktok.exceptions.TikTokLiveException;
|
||||
@@ -40,14 +41,14 @@ import java.util.concurrent.atomic.AtomicReference;
|
||||
public class TikTokListenersManager implements ListenersManager {
|
||||
|
||||
private final Map<Object, List<ListenerMethodInfo>> listeners;
|
||||
private final LiveEventsHandler eventObserver;
|
||||
private final LiveEventsHandler eventsHandler;
|
||||
private final ExecutorService executorService;
|
||||
private final DependanceContainer dependanceContainer;
|
||||
|
||||
|
||||
public TikTokListenersManager(LiveEventsHandler tikTokEventHandler,
|
||||
DependanceContainer dependanceContainer) {
|
||||
this.eventObserver = tikTokEventHandler;
|
||||
this.eventsHandler = tikTokEventHandler;
|
||||
this.dependanceContainer = dependanceContainer;
|
||||
this.listeners = new HashMap<>();
|
||||
executorService = Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors());
|
||||
@@ -66,7 +67,7 @@ public class TikTokListenersManager implements ListenersManager {
|
||||
|
||||
var methodsInfo = getMethodsInfo(listener);
|
||||
for (var methodInfo : methodsInfo) {
|
||||
eventObserver.subscribe(methodInfo.getEventType(), methodInfo.getAction());
|
||||
eventsHandler.subscribe(methodInfo.getEventType(), methodInfo.getAction());
|
||||
}
|
||||
listeners.put(listener, methodsInfo);
|
||||
}
|
||||
@@ -78,7 +79,7 @@ public class TikTokListenersManager implements ListenersManager {
|
||||
}
|
||||
var methodsInfo = listeners.get(listener);
|
||||
for (var methodInfo : methodsInfo) {
|
||||
eventObserver.unsubscribe(methodInfo.getEventType(), methodInfo.getAction());
|
||||
eventsHandler.unsubscribe(methodInfo.getEventType(), methodInfo.getAction());
|
||||
}
|
||||
listeners.remove(listener);
|
||||
}
|
||||
@@ -149,7 +150,7 @@ public class TikTokListenersManager implements ListenersManager {
|
||||
var parameters = methodContainer.resolveParameters(method);
|
||||
method.invoke(listener, parameters);
|
||||
} catch (Exception e) {
|
||||
throw new TikTokEventListenerMethodException(e);
|
||||
eventsHandler.publish(liveClient, new TikTokErrorEvent(new TikTokEventListenerMethodException(e)));
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user