Skip to content
This repository was archived by the owner on Jun 17, 2022. It is now read-only.

Commit e8219a7

Browse files
committed
Added redemption event and a reconnect event.
1 parent 7a5ebe0 commit e8219a7

File tree

6 files changed

+94
-26
lines changed

6 files changed

+94
-26
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
package me.limeglass.streamelements.api.events;
2+
3+
import java.time.Instant;
4+
5+
import me.limeglass.streamelements.api.objects.Channel;
6+
import me.limeglass.streamelements.api.objects.User;
7+
8+
public class RedemptionEvent extends ActivityEvent {
9+
10+
private final String redemption;
11+
private final Number amount;
12+
private final User user;
13+
14+
/**
15+
* Called when someone uses a redemption.
16+
*/
17+
public RedemptionEvent(String type, Instant instant, String provider, Channel channel, Number amount, String redemption, User user) {
18+
super(type, instant, provider, channel);
19+
this.redemption = redemption;
20+
this.amount = amount;
21+
this.user = user;
22+
}
23+
24+
/**
25+
* @return The redemption item's name.
26+
*/
27+
public String getRedemption() {
28+
return redemption;
29+
}
30+
31+
/**
32+
* @return The amount the redemption item cost.
33+
*/
34+
public Number getAmount() {
35+
return amount;
36+
}
37+
38+
/**
39+
* @return The User that initiated the redemption.
40+
*/
41+
public User getUser() {
42+
return user;
43+
}
44+
45+
}

src/main/java/me/limeglass/streamelements/internals/events/emitters/EventEmitter.java

+1
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ public EventEmitter(String type) {
4141
@Override
4242
public void call(Socket socket, Object... args) {
4343
JSONObject object = (JSONObject)args[0];
44+
System.out.println("Event: " + object.toString());
4445
provider = object.getString("provider");
4546
instant = Instant.parse(object.getString("createdAt"));
4647
channel = new ChannelImp(Long.parseLong(object.getString("channel")));
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
package me.limeglass.streamelements.internals.events.emitters;
2+
3+
import io.socket.client.Socket;
4+
import me.limeglass.streamelements.api.events.ReconnectEvent;
5+
import me.limeglass.streamelements.internals.events.EventDispatcher;
6+
7+
public class ReconnectEmitter extends ElementsEmitter {
8+
9+
public ReconnectEmitter() {
10+
super(Socket.EVENT_RECONNECT);
11+
}
12+
13+
@Override
14+
public void call(Socket socket, Object... args) {
15+
EventDispatcher.dispatch(new ReconnectEvent());
16+
}
17+
18+
}

src/main/java/me/limeglass/streamelements/internals/events/emitters/types/RaidEmitter.java

-25
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
package me.limeglass.streamelements.internals.events.emitters.types;
2+
3+
import org.json.JSONObject;
4+
5+
import io.socket.client.Socket;
6+
import me.limeglass.streamelements.api.events.RedemptionEvent;
7+
import me.limeglass.streamelements.api.objects.User;
8+
import me.limeglass.streamelements.internals.events.EventDispatcher;
9+
import me.limeglass.streamelements.internals.events.emitters.EventEmitter;
10+
import me.limeglass.streamelements.internals.objects.UserImp;
11+
12+
public class RedemptionEmitter extends EventEmitter {
13+
14+
public RedemptionEmitter() {
15+
super("redemption");
16+
}
17+
18+
@Override
19+
protected void call(Socket socket, JSONObject data) {
20+
long amount = data.getLong("amount");
21+
String avatar = data.getString("avatar");
22+
String username = data.getString("name");
23+
String redemption = data.getString("redemption");
24+
User user = new UserImp(username, avatar);
25+
RedemptionEvent event = new RedemptionEvent(type, instant, provider, channel, amount, redemption, user);
26+
EventDispatcher.dispatch(event);
27+
}
28+
29+
}

src/test/java/me/limeglass/streamelements/EventListenerExample.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ public void onAuthenticated(AuthenticatedEvent event) {
3131

3232
@EventListener
3333
public void onHost(HostEvent event) {
34-
System.out.println("Host from " + " USER " + " at " + event.getInstant().toString());
34+
System.out.println("Host from " + event.getUser().getName() + " at " + event.getInstant() + " with " + event.getViewerCount() + " viewers!");
3535
}
3636

3737
@EventListener

0 commit comments

Comments
 (0)