mirror of
https://github.com/jwdeveloper/TikTokLiveJava.git
synced 2026-02-28 17:29:39 -05:00
Bugs:
Method for listeners was throwing exception TikTokListenersManager.removeListener() was not working
This commit is contained in:
@@ -7,11 +7,10 @@ import java.util.ArrayList;
|
|||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@Value
|
@Getter
|
||||||
public class Picture {
|
public class Picture {
|
||||||
|
|
||||||
List<String> urls;
|
List<String> urls;
|
||||||
|
|
||||||
public Picture(io.github.jwdeveloper.tiktok.messages.Image profilePicture) {
|
public Picture(io.github.jwdeveloper.tiktok.messages.Image profilePicture) {
|
||||||
this.urls = profilePicture.getUrlListList();
|
this.urls = profilePicture.getUrlListList();
|
||||||
}
|
}
|
||||||
@@ -24,15 +23,6 @@ public class Picture {
|
|||||||
this.urls = Arrays.stream(urls).toList();
|
this.urls = Arrays.stream(urls).toList();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void downlaod()
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public void downloadAsync()
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public static Picture Map(io.github.jwdeveloper.tiktok.messages.Image profilePicture)
|
public static Picture Map(io.github.jwdeveloper.tiktok.messages.Image profilePicture)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -44,4 +44,11 @@ public class TikTokEventObserver {
|
|||||||
public <T extends TikTokEvent> void unsubscribeAll(Class<?> clazz) {
|
public <T extends TikTokEvent> void unsubscribeAll(Class<?> clazz) {
|
||||||
events.remove(clazz);
|
events.remove(clazz);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public <T extends TikTokEvent> void unsubscribe(TikTokEventConsumer<T> consumer) {
|
||||||
|
for(var entry : events.entrySet())
|
||||||
|
{
|
||||||
|
entry.getValue().remove(consumer);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ package io.github.jwdeveloper.tiktok.listener;
|
|||||||
import io.github.jwdeveloper.tiktok.annotations.TikTokEventHandler;
|
import io.github.jwdeveloper.tiktok.annotations.TikTokEventHandler;
|
||||||
import io.github.jwdeveloper.tiktok.events.TikTokEvent;
|
import io.github.jwdeveloper.tiktok.events.TikTokEvent;
|
||||||
import io.github.jwdeveloper.tiktok.events.TikTokEventConsumer;
|
import io.github.jwdeveloper.tiktok.events.TikTokEventConsumer;
|
||||||
import io.github.jwdeveloper.tiktok.events.messages.TikTokWebsocketMessageEvent;
|
|
||||||
import io.github.jwdeveloper.tiktok.exceptions.TikTokEventListenerMethodException;
|
import io.github.jwdeveloper.tiktok.exceptions.TikTokEventListenerMethodException;
|
||||||
import io.github.jwdeveloper.tiktok.exceptions.TikTokLiveException;
|
import io.github.jwdeveloper.tiktok.exceptions.TikTokLiveException;
|
||||||
import io.github.jwdeveloper.tiktok.handlers.TikTokEventObserver;
|
import io.github.jwdeveloper.tiktok.handlers.TikTokEventObserver;
|
||||||
@@ -45,6 +44,13 @@ public class TikTokListenersManager implements ListenersManager {
|
|||||||
if (optional.isEmpty()) {
|
if (optional.isEmpty()) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var bindingModel =optional.get();
|
||||||
|
|
||||||
|
for(var consumer : bindingModel.getEvents())
|
||||||
|
{
|
||||||
|
eventObserver.unsubscribe(consumer);
|
||||||
|
}
|
||||||
bindingModels.remove(optional.get());
|
bindingModels.remove(optional.get());
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -61,9 +67,9 @@ public class TikTokListenersManager implements ListenersManager {
|
|||||||
for (var method : methods)
|
for (var method : methods)
|
||||||
{
|
{
|
||||||
var eventClazz = method.getParameterTypes()[1];
|
var eventClazz = method.getParameterTypes()[1];
|
||||||
if(!eventClazz.isAssignableFrom(TikTokEvent.class))
|
if(eventClazz.isAssignableFrom(TikTokEvent.class))
|
||||||
{
|
{
|
||||||
throw new TikTokEventListenerMethodException("Method "+method.getName()+" 2nd parameter must instance of "+TikTokEvent.class.getName());
|
throw new TikTokEventListenerMethodException("Method "+method.getName()+"() 2nd parameter must instance of "+TikTokEvent.class.getName());
|
||||||
}
|
}
|
||||||
var tikTokEventConsumer = new TikTokEventConsumer() {
|
var tikTokEventConsumer = new TikTokEventConsumer() {
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
46
README.md
46
README.md
@@ -27,25 +27,25 @@ Do you prefer other programming languages?
|
|||||||
|
|
||||||
```xml
|
```xml
|
||||||
<repositories>
|
<repositories>
|
||||||
<repository>
|
<repository>
|
||||||
<id>jitpack.io</id>
|
<id>jitpack.io</id>
|
||||||
<url>https://jitpack.io</url>
|
<url>https://jitpack.io</url>
|
||||||
</repository>
|
</repository>
|
||||||
</repositories>
|
</repositories>
|
||||||
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.github.jwdeveloper.TikTok-Live-Java</groupId>
|
<groupId>com.github.jwdeveloper.TikTok-Live-Java</groupId>
|
||||||
<artifactId>Client</artifactId>
|
<artifactId>Client</artifactId>
|
||||||
<version>0.0.14-Release</version>
|
<version>0.0.17-Release</version>
|
||||||
<scope>compile</scope>
|
<scope>compile</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.google.code.gson</groupId>
|
<groupId>com.google.code.gson</groupId>
|
||||||
<artifactId>gson</artifactId>
|
<artifactId>gson</artifactId>
|
||||||
<version>2.10.1</version>
|
<version>2.10.1</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
```
|
```
|
||||||
|
|
||||||
2. Create your first chat connection
|
2. Create your first chat connection
|
||||||
@@ -77,7 +77,7 @@ public class SimpleExample {
|
|||||||
})
|
})
|
||||||
.onComment((client, event) ->
|
.onComment((client, event) ->
|
||||||
{
|
{
|
||||||
System.out.println(event.getUser().getUniqueId() + ": " + event.getText());
|
System.out.println(event.getUser().getUniqueId() + ": " + event.getText());
|
||||||
})
|
})
|
||||||
.onEvent((client, event) ->
|
.onEvent((client, event) ->
|
||||||
{
|
{
|
||||||
@@ -153,6 +153,13 @@ public class ListenerExample
|
|||||||
System.in.read();
|
System.in.read();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
Method in TikTokEventListener should meet 4 requirements to be detected
|
||||||
|
- must have @TikTokEventHandler annotation
|
||||||
|
- must have 2 parameters
|
||||||
|
- first parameter must be LiveClient
|
||||||
|
- second must be class that extending TikTokEvent
|
||||||
|
*/
|
||||||
public static class CustomListener implements TikTokEventListener
|
public static class CustomListener implements TikTokEventListener
|
||||||
{
|
{
|
||||||
|
|
||||||
@@ -165,6 +172,7 @@ public class ListenerExample
|
|||||||
@TikTokEventHandler
|
@TikTokEventHandler
|
||||||
public void onCommentMessage(LiveClient liveClient, TikTokCommentEvent event)
|
public void onCommentMessage(LiveClient liveClient, TikTokCommentEvent event)
|
||||||
{
|
{
|
||||||
|
event.getUser().getProfilePicture().downlaod();
|
||||||
System.out.println(event.getText());
|
System.out.println(event.getText());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -23,6 +23,13 @@ public class ListenerExample
|
|||||||
System.in.read();
|
System.in.read();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
Method in TikTokEventListener should meet 4 requirements to be detected
|
||||||
|
- must have @TikTokEventHandler annotation
|
||||||
|
- must have 2 parameters
|
||||||
|
- first parameter must be LiveClient
|
||||||
|
- second must be class that extending TikTokEvent
|
||||||
|
*/
|
||||||
public static class CustomListener implements TikTokEventListener
|
public static class CustomListener implements TikTokEventListener
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user