mirror of
https://github.com/jwdeveloper/TikTokLiveJava.git
synced 2026-02-28 01:09:40 -05:00
Introduce dependecy injection container
- TikTokLiveClientBuilder this class has been higly modify to support DI container
This commit is contained in:
@@ -115,18 +115,18 @@ public class TikTokLiveClientBuilder implements LiveClientBuilder {
|
|||||||
|
|
||||||
//config
|
//config
|
||||||
dependance.registerSingleton(LiveClientSettings.class, clientSettings);
|
dependance.registerSingleton(LiveClientSettings.class, clientSettings);
|
||||||
|
dependance.registerSingleton(Logger.class, LoggerFactory.create(clientSettings.getHostName(), clientSettings));
|
||||||
dependance.registerSingleton(TikTokRoomInfo.class, container ->
|
dependance.registerSingleton(TikTokRoomInfo.class, container ->
|
||||||
{
|
{
|
||||||
var roomInfo = new TikTokRoomInfo();
|
var roomInfo = new TikTokRoomInfo();
|
||||||
roomInfo.setHostName(clientSettings.getHostName());
|
roomInfo.setHostName(clientSettings.getHostName());
|
||||||
return roomInfo;
|
return roomInfo;
|
||||||
});
|
});
|
||||||
dependance.registerSingleton(Logger.class, LoggerFactory.create(clientSettings.getHostName(), clientSettings));
|
|
||||||
|
|
||||||
//messages
|
//messages
|
||||||
dependance.registerSingleton(TikTokLiveEventHandler.class, eventHandler);
|
dependance.registerSingleton(TikTokLiveEventHandler.class, eventHandler);
|
||||||
dependance.registerSingleton(TikTokLiveMessageHandler.class);
|
dependance.registerSingleton(TikTokLiveMessageHandler.class);
|
||||||
dependance.registerSingleton(TikTokLiveMapper.class, (container) ->
|
dependance.registerSingleton(TikTokMapper.class, (container) ->
|
||||||
{
|
{
|
||||||
var dependace = (DependanceContainer) container.find(DependanceContainer.class);
|
var dependace = (DependanceContainer) container.find(DependanceContainer.class);
|
||||||
var mapper = MessagesMapperFactory.create(dependace);
|
var mapper = MessagesMapperFactory.create(dependace);
|
||||||
@@ -165,7 +165,7 @@ public class TikTokLiveClientBuilder implements LiveClientBuilder {
|
|||||||
//mapper
|
//mapper
|
||||||
dependance.registerSingleton(TikTokGenericEventMapper.class);
|
dependance.registerSingleton(TikTokGenericEventMapper.class);
|
||||||
dependance.registerSingleton(TikTokMapperHelper.class, TikTokLiveMapperHelper.class);
|
dependance.registerSingleton(TikTokMapperHelper.class, TikTokLiveMapperHelper.class);
|
||||||
dependance.registerSingleton(TikTokLiveMapper.class);
|
dependance.registerSingleton(TikTokMapper.class, TikTokLiveMapper.class);
|
||||||
|
|
||||||
//mapper handlers
|
//mapper handlers
|
||||||
dependance.registerSingleton(TikTokCommonEventHandler.class);
|
dependance.registerSingleton(TikTokCommonEventHandler.class);
|
||||||
@@ -173,9 +173,6 @@ public class TikTokLiveClientBuilder implements LiveClientBuilder {
|
|||||||
dependance.registerSingleton(TikTokRoomInfoEventHandler.class);
|
dependance.registerSingleton(TikTokRoomInfoEventHandler.class);
|
||||||
dependance.registerSingleton(TikTokSocialMediaEventHandler.class);
|
dependance.registerSingleton(TikTokSocialMediaEventHandler.class);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//client
|
//client
|
||||||
dependance.registerSingleton(LiveClient.class, TikTokLiveClient.class);
|
dependance.registerSingleton(LiveClient.class, TikTokLiveClient.class);
|
||||||
|
|
||||||
|
|||||||
@@ -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.exceptions.TikTokLiveMessageException;
|
||||||
import io.github.jwdeveloper.tiktok.live.LiveClient;
|
import io.github.jwdeveloper.tiktok.live.LiveClient;
|
||||||
import io.github.jwdeveloper.tiktok.mappers.TikTokLiveMapper;
|
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.messages.webcast.WebcastResponse;
|
||||||
import io.github.jwdeveloper.tiktok.utils.Stopwatch;
|
import io.github.jwdeveloper.tiktok.utils.Stopwatch;
|
||||||
|
|
||||||
@@ -41,9 +42,9 @@ public class TikTokLiveMessageHandler {
|
|||||||
private final TikTokLiveEventHandler tikTokEventHandler;
|
private final TikTokLiveEventHandler tikTokEventHandler;
|
||||||
private final TikTokLiveMapper mapper;
|
private final TikTokLiveMapper mapper;
|
||||||
|
|
||||||
public TikTokLiveMessageHandler(TikTokLiveEventHandler tikTokEventHandler, TikTokLiveMapper mapper) {
|
public TikTokLiveMessageHandler(TikTokLiveEventHandler tikTokEventHandler, TikTokMapper mapper) {
|
||||||
this.tikTokEventHandler = tikTokEventHandler;
|
this.tikTokEventHandler = tikTokEventHandler;
|
||||||
this.mapper = mapper;
|
this.mapper = (TikTokLiveMapper)mapper;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void handle(LiveClient client, WebcastResponse webcastResponse) {
|
public void handle(LiveClient client, WebcastResponse webcastResponse) {
|
||||||
|
|||||||
Reference in New Issue
Block a user