Introduce dependecy injection container

- TikTokLiveClientBuilder this class has been higly modify to support DI container
This commit is contained in:
jacek.wolniewicz
2024-06-29 23:12:24 +02:00
parent 55fcf83870
commit 3f268f3a1a
2 changed files with 6 additions and 8 deletions

View File

@@ -115,18 +115,18 @@ public class TikTokLiveClientBuilder implements LiveClientBuilder {
//config
dependance.registerSingleton(LiveClientSettings.class, clientSettings);
dependance.registerSingleton(Logger.class, LoggerFactory.create(clientSettings.getHostName(), clientSettings));
dependance.registerSingleton(TikTokRoomInfo.class, container ->
{
var roomInfo = new TikTokRoomInfo();
roomInfo.setHostName(clientSettings.getHostName());
return roomInfo;
});
dependance.registerSingleton(Logger.class, LoggerFactory.create(clientSettings.getHostName(), clientSettings));
//messages
dependance.registerSingleton(TikTokLiveEventHandler.class, eventHandler);
dependance.registerSingleton(TikTokLiveMessageHandler.class);
dependance.registerSingleton(TikTokLiveMapper.class, (container) ->
dependance.registerSingleton(TikTokMapper.class, (container) ->
{
var dependace = (DependanceContainer) container.find(DependanceContainer.class);
var mapper = MessagesMapperFactory.create(dependace);
@@ -165,7 +165,7 @@ public class TikTokLiveClientBuilder implements LiveClientBuilder {
//mapper
dependance.registerSingleton(TikTokGenericEventMapper.class);
dependance.registerSingleton(TikTokMapperHelper.class, TikTokLiveMapperHelper.class);
dependance.registerSingleton(TikTokLiveMapper.class);
dependance.registerSingleton(TikTokMapper.class, TikTokLiveMapper.class);
//mapper handlers
dependance.registerSingleton(TikTokCommonEventHandler.class);
@@ -173,9 +173,6 @@ public class TikTokLiveClientBuilder implements LiveClientBuilder {
dependance.registerSingleton(TikTokRoomInfoEventHandler.class);
dependance.registerSingleton(TikTokSocialMediaEventHandler.class);
//client
dependance.registerSingleton(LiveClient.class, TikTokLiveClient.class);

View File

@@ -31,6 +31,7 @@ import io.github.jwdeveloper.tiktok.data.events.websocket.TikTokWebsocketUnhandl
import io.github.jwdeveloper.tiktok.exceptions.TikTokLiveMessageException;
import io.github.jwdeveloper.tiktok.live.LiveClient;
import io.github.jwdeveloper.tiktok.mappers.TikTokLiveMapper;
import io.github.jwdeveloper.tiktok.mappers.TikTokMapper;
import io.github.jwdeveloper.tiktok.messages.webcast.WebcastResponse;
import io.github.jwdeveloper.tiktok.utils.Stopwatch;
@@ -41,9 +42,9 @@ public class TikTokLiveMessageHandler {
private final TikTokLiveEventHandler tikTokEventHandler;
private final TikTokLiveMapper mapper;
public TikTokLiveMessageHandler(TikTokLiveEventHandler tikTokEventHandler, TikTokLiveMapper mapper) {
public TikTokLiveMessageHandler(TikTokLiveEventHandler tikTokEventHandler, TikTokMapper mapper) {
this.tikTokEventHandler = tikTokEventHandler;
this.mapper = mapper;
this.mapper = (TikTokLiveMapper)mapper;
}
public void handle(LiveClient client, WebcastResponse webcastResponse) {