Archived
0

Избавляемся от Google Guava EventBus

This commit is contained in:
2019-01-12 18:57:41 +03:00
parent e192a40a69
commit 169af20f74
15 changed files with 14 additions and 122 deletions

View File

@@ -1,8 +1,6 @@
package mc.core;
import com.google.common.eventbus.Subscribe;
import lombok.extern.slf4j.Slf4j;
import mc.core.eventbus.EventBusGetter;
import mc.core.eventbus.events.CS_PlayerMoveEvent;
import mc.core.eventbus.events.SC_ChunkLoadEvent;
import mc.core.eventbus.events.SC_ChunkUnloadEvent;
@@ -16,10 +14,9 @@ import java.util.Iterator;
public class CoreEventListener {
@PostConstruct
public void registerEventHandlers() {
EventBusGetter.getInstance().register(this);
// EventBusGetter.getInstance().register(this);
}
@Subscribe
public void handlerPlayerMoveEvent(CS_PlayerMoveEvent event) {
log.trace("(GameLoop) playerMoveEventHandler()");
@@ -50,7 +47,7 @@ public class CoreEventListener {
}
if (!eventChunkUnload.getNeedUnloadChunks().isEmpty()) {
EventBusGetter.getInstance().post(eventChunkUnload);
// EventBusGetter.getInstance().post(eventChunkUnload);
}
SC_ChunkLoadEvent eventChunkLoad = new SC_ChunkLoadEvent(event.getPlayer());
@@ -67,7 +64,7 @@ public class CoreEventListener {
}
if (!eventChunkLoad.getNeedLoadChunks().isEmpty()) {
EventBusGetter.getInstance().post(eventChunkLoad);
// EventBusGetter.getInstance().post(eventChunkLoad);
}
}

View File

@@ -1,6 +1,4 @@
package mc.core.eventbus;
public interface Event {
void setCanceled(boolean value);
boolean isCanceled();
}

View File

@@ -1,10 +0,0 @@
package mc.core.eventbus;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public abstract class EventBase implements Event {
private boolean canceled;
}

View File

@@ -1,16 +0,0 @@
/*
* DmitriyMX <dimon550@gmail.com>
* 2018-05-02
*/
package mc.core.eventbus;
import com.google.common.eventbus.EventBus;
import lombok.Getter;
public final class EventBusGetter {
@Getter
private static final EventBus instance = new EventBus();
private EventBusGetter() {
}
}

View File

@@ -1,18 +1,14 @@
/*
* DmitriyMX <dimon550@gmail.com>
* 2018-05-02
*/
package mc.core.eventbus.events;
import lombok.Getter;
import lombok.Setter;
import mc.core.EntityLocation;
import mc.core.ImmutableEntityLocation;
import mc.core.eventbus.EventBase;
import mc.core.eventbus.Event;
import mc.core.player.Player;
@Getter
public class CS_PlayerMoveEvent extends EventBase {
public class CS_PlayerMoveEvent implements Event {
private final Player player;
private final ImmutableEntityLocation oldLocation;
@Setter

View File

@@ -2,14 +2,14 @@ package mc.core.eventbus.events;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import mc.core.eventbus.EventBase;
import mc.core.eventbus.Event;
import mc.core.player.Player;
import java.util.ArrayList;
import java.util.List;
@RequiredArgsConstructor
public class SC_ChunkLoadEvent extends EventBase {
public class SC_ChunkLoadEvent implements Event {
@Getter
private final Player player;
@Getter

View File

@@ -2,14 +2,14 @@ package mc.core.eventbus.events;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import mc.core.eventbus.EventBase;
import mc.core.eventbus.Event;
import mc.core.player.Player;
import java.util.ArrayList;
import java.util.List;
@RequiredArgsConstructor
public class SC_ChunkUnloadEvent extends EventBase {
public class SC_ChunkUnloadEvent implements Event {
@Getter
private final Player player;
@Getter

View File

@@ -1,22 +0,0 @@
/*
* DmitriyMX <dimon550@gmail.com>
* 2018-05-02
*/
package mc.core.eventbus.events;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import lombok.Setter;
import mc.core.eventbus.EventBase;
import java.net.SocketAddress;
@RequiredArgsConstructor
@Getter
@Setter
public class SC_LoginEvent extends EventBase {
private String playerName;
private final SocketAddress remoteAddress;
private boolean deny;
private String denyReason;
}

View File

@@ -1,20 +0,0 @@
/*
* DmitriyMX <dimon550@gmail.com>
* 2018-05-02
*/
package mc.core.eventbus.events;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import lombok.Setter;
import mc.core.EntityLocation;
import mc.core.eventbus.EventBase;
import mc.core.player.Player;
@RequiredArgsConstructor
@Getter
@Setter
public class SC_PlayerLookEvent extends EventBase {
private final Player player;
private EntityLocation newLook;
}

View File

@@ -4,12 +4,12 @@ import lombok.Getter;
import lombok.RequiredArgsConstructor;
import lombok.Setter;
import mc.core.EntityLocation;
import mc.core.eventbus.EventBase;
import mc.core.eventbus.Event;
import mc.core.player.Player;
@RequiredArgsConstructor
@Getter
public class SC_PlayerMoveEvent extends EventBase {
public class SC_PlayerMoveEvent implements Event {
private final Player player;
@Setter
private EntityLocation newLocation;

View File

@@ -1,22 +0,0 @@
/*
* DmitriyMX <dimon550@gmail.com>
* 2018-05-02
*/
package mc.core.eventbus.events;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import lombok.Setter;
import mc.core.eventbus.EventBase;
import java.net.SocketAddress;
@RequiredArgsConstructor
@Getter
@Setter
public class SC_ServerPingEvent extends EventBase {
private final SocketAddress remoteAddress;
private String description;
private int online;
private int maxOnline;
}

View File

@@ -11,7 +11,6 @@ import io.netty.channel.socket.nio.NioServerSocketChannel;
import io.netty.util.AttributeKey;
import lombok.Setter;
import lombok.extern.slf4j.Slf4j;
import mc.core.eventbus.EventBusGetter;
import mc.core.network.Server;
import mc.core.network.StartServerException;
import mc.core.network.proto_1_12_2.State;
@@ -65,7 +64,7 @@ public class NettyServer implements Server {
public void start() throws StartServerException {
log.info("Use protocol {}", StatusResponsePacket.NAME);
EventBusGetter.getInstance().register(new PlayerEventListener());
// EventBusGetter.getInstance().register(new PlayerEventListener());
bossGroup = new NioEventLoopGroup(1);
workerGroup = new NioEventLoopGroup(workerGroupCount);

View File

@@ -1,6 +1,5 @@
package mc.core.network.proto_1_12_2.netty;
import com.google.common.eventbus.Subscribe;
import lombok.extern.slf4j.Slf4j;
import mc.core.eventbus.events.SC_ChunkLoadEvent;
import mc.core.eventbus.events.SC_ChunkUnloadEvent;
@@ -14,7 +13,6 @@ import mc.core.world.chunk.Chunk;
@Slf4j
class PlayerEventListener {
@Subscribe
public void playerMoveEventHandler(SC_PlayerMoveEvent event) {
log.debug("(SC) playerMoveEventHandler()");
PlayerPositionAndLookPacket packet = new PlayerPositionAndLookPacket();
@@ -25,7 +23,6 @@ class PlayerEventListener {
event.getPlayer().getChannel().writeAndFlush(packet);
}
@Subscribe
public void playerChunkLoadHandler(SC_ChunkLoadEvent event) {
for(Integer compressXZ : event.getNeedLoadChunks()) {
int[] xz = CompactedCoords.uncompressXZ(compressXZ);
@@ -41,7 +38,6 @@ class PlayerEventListener {
}
}
@Subscribe
public void playerChunkUnloadHandler(SC_ChunkUnloadEvent event) {
for(Integer compressXZ : event.getNeedUnloadChunks()) {
int[] xz = CompactedCoords.uncompressXZ(compressXZ);

View File

@@ -2,7 +2,6 @@ package mc.core.network.proto_1_12_2.netty.handlers;
import io.netty.channel.Channel;
import io.netty.channel.ChannelFutureListener;
import mc.core.eventbus.EventBusGetter;
import mc.core.eventbus.events.CS_PlayerMoveEvent;
import mc.core.network.proto_1_12_2.State;
import mc.core.network.proto_1_12_2.TeleportManager;
@@ -15,9 +14,7 @@ import mc.core.player.PlayerMode;
import mc.core.text.Text;
import mc.core.text.TextColor;
import mc.core.text.TextStyle;
import mc.core.utils.CompactedCoords;
import mc.core.world.World;
import mc.core.world.chunk.Chunk;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@@ -123,7 +120,7 @@ public class LoginHandler extends AbstractStateHandler implements LoginStateHand
CS_PlayerMoveEvent event = new CS_PlayerMoveEvent(player, player.getLocation());
event.setNewLocation(player.getLocation());
event.setRecalcChunk(true);
EventBusGetter.getInstance().post(event);
// EventBusGetter.getInstance().post(event);
}
}
}

View File

@@ -8,7 +8,6 @@ import io.netty.channel.Channel;
import lombok.extern.slf4j.Slf4j;
import mc.core.EntityLocation;
import mc.core.chat.ChatProcessor;
import mc.core.eventbus.EventBusGetter;
import mc.core.eventbus.events.CS_PlayerMoveEvent;
import mc.core.network.proto_1_12_2.TeleportManager;
import mc.core.network.proto_1_12_2.packets.*;
@@ -83,7 +82,7 @@ public class PlayHandler extends AbstractStateHandler implements PlayStateHandle
player.getLocation().getYaw(),
player.getLocation().getPitch()
));
EventBusGetter.getInstance().post(event);
// EventBusGetter.getInstance().post(event);
}
@Handler