Skip to content

Commit cfa817f

Browse files
committedMay 15, 2021
.
1 parent c459fa1 commit cfa817f

File tree

4 files changed

+17
-30
lines changed

4 files changed

+17
-30
lines changed
 

‎API/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
<dependency>
3737
<groupId>org.inventivetalent</groupId>
3838
<artifactId>reflectionhelper</artifactId>
39-
<version>1.17.0-SNAPSHOT</version>
39+
<version>1.17.1-SNAPSHOT</version>
4040
</dependency>
4141
<dependency>
4242
<groupId>org.inventivetalent</groupId>

‎API/src/org/inventivetalent/packetlistener/channel/ChannelAbstract.java

+6-7
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,11 @@
44
import org.bukkit.entity.Player;
55
import org.inventivetalent.packetlistener.Cancellable;
66
import org.inventivetalent.packetlistener.IPacketListener;
7+
import org.inventivetalent.reflection.accessor.FieldAccessor;
78
import org.inventivetalent.reflection.resolver.FieldResolver;
89
import org.inventivetalent.reflection.resolver.MethodResolver;
910
import org.inventivetalent.reflection.resolver.minecraft.NMSClassResolver;
10-
import org.inventivetalent.reflection.util.AccessUtil;
1111

12-
import java.lang.reflect.Field;
1312
import java.lang.reflect.Method;
1413
import java.util.Collections;
1514
import java.util.List;
@@ -33,10 +32,10 @@ public abstract class ChannelAbstract {
3332
protected static final FieldResolver minecraftServerFieldResolver = new FieldResolver(MinecraftServer);
3433
protected static final FieldResolver serverConnectionFieldResolver = new FieldResolver(ServerConnection);
3534

36-
static final Field networkManager = playerConnectionFieldResolver.resolveSilent("networkManager");
37-
static final Field playerConnection = entityPlayerFieldResolver.resolveSilent("playerConnection");
38-
static final Field serverConnection = minecraftServerFieldResolver.resolveByFirstTypeSilent(ServerConnection);
39-
static final Field connectionList = serverConnectionFieldResolver.resolveByLastTypeSilent(List.class);
35+
static final FieldAccessor networkManager = playerConnectionFieldResolver.resolveAccessor("networkManager");
36+
static final FieldAccessor playerConnection = entityPlayerFieldResolver.resolveAccessor("playerConnection");
37+
static final FieldAccessor serverConnection = minecraftServerFieldResolver.resolveByFirstTypeAccessor(ServerConnection);
38+
static final FieldAccessor connectionList = serverConnectionFieldResolver.resolveByLastTypeAccessor(List.class);
4039

4140
protected static final MethodResolver craftServerFieldResolver = new MethodResolver(Bukkit.getServer().getClass());
4241

@@ -69,7 +68,7 @@ public void addServerChannel() {
6968
if (!currentList.isEmpty()) {
7069
// Try to check if our list is already set
7170
try {
72-
Field superListField = AccessUtil.setAccessible(currentList.getClass().getSuperclass().getDeclaredField("list"));
71+
FieldAccessor superListField = new FieldAccessor(currentList.getClass().getSuperclass().getDeclaredField("list"));
7372
Object list = superListField.get(currentList);
7473
if (IListenerList.class.isAssignableFrom(list.getClass())) { return; }
7574
} catch (Exception e) {

‎API/src/org/inventivetalent/packetlistener/channel/INCChannel.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,15 @@
66
import org.bukkit.entity.Player;
77
import org.inventivetalent.packetlistener.Cancellable;
88
import org.inventivetalent.packetlistener.IPacketListener;
9+
import org.inventivetalent.reflection.accessor.FieldAccessor;
910
import org.inventivetalent.reflection.minecraft.Minecraft;
1011

11-
import java.lang.reflect.Field;
1212
import java.net.SocketAddress;
1313
import java.util.ArrayList;
1414

1515
public class INCChannel extends ChannelAbstract {
1616

17-
private static final Field channelField = networkManagerFieldResolver.resolveByFirstTypeSilent(io.netty.channel.Channel.class);
17+
private static final FieldAccessor channelField = networkManagerFieldResolver.resolveByFirstTypeAccessor(io.netty.channel.Channel.class);
1818

1919
public INCChannel(IPacketListener iPacketListener) {
2020
super(iPacketListener);

‎API/src/org/inventivetalent/packetlistener/handler/PacketAbstract.java

+8-20
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,7 @@ public PacketAbstract(Object packet, Cancellable cancellable, ChannelWrapper cha
4040
* @param value Value to be assigned to the field
4141
*/
4242
public void setPacketValue(String field, Object value) {
43-
try {
44-
fieldResolver.resolve(field).set(getPacket(), value);
45-
} catch (Exception e) {
46-
throw new RuntimeException(e);
47-
}
43+
fieldResolver.resolveAccessor(field).set(getPacket(), value);
4844
}
4945

5046
/**
@@ -55,7 +51,7 @@ public void setPacketValue(String field, Object value) {
5551
*/
5652
public void setPacketValueSilent(String field, Object value) {
5753
try {
58-
fieldResolver.resolve(field).set(getPacket(), value);
54+
setPacketValue(field, value);
5955
} catch (Exception e) {
6056
}
6157
}
@@ -68,7 +64,7 @@ public void setPacketValueSilent(String field, Object value) {
6864
*/
6965
public void setPacketValue(int index, Object value) {
7066
try {
71-
fieldResolver.resolveIndex(index).set(getPacket(), value);
67+
fieldResolver.resolveIndexAccessor(index).set(getPacket(), value);
7268
} catch (Exception e) {
7369
throw new RuntimeException(e);
7470
}
@@ -82,7 +78,7 @@ public void setPacketValue(int index, Object value) {
8278
*/
8379
public void setPacketValueSilent(int index, Object value) {
8480
try {
85-
fieldResolver.resolveIndex(index).set(getPacket(), value);
81+
setPacketValue(index, value);
8682
} catch (Exception e) {
8783
}
8884
}
@@ -94,11 +90,7 @@ public void setPacketValueSilent(int index, Object value) {
9490
* @return current value of the field
9591
*/
9692
public Object getPacketValue(String field) {
97-
try {
98-
return fieldResolver.resolve(field).get(getPacket());
99-
} catch (Exception e) {
100-
throw new RuntimeException(e);
101-
}
93+
return fieldResolver.resolveAccessor(field).get(getPacket());
10294
}
10395

10496
/**
@@ -109,7 +101,7 @@ public Object getPacketValue(String field) {
109101
*/
110102
public Object getPacketValueSilent(String field) {
111103
try {
112-
return fieldResolver.resolve(field).get(getPacket());
104+
return getPacketValue(field);
113105
} catch (Exception e) {
114106
}
115107
return null;
@@ -122,11 +114,7 @@ public Object getPacketValueSilent(String field) {
122114
* @return value of the field
123115
*/
124116
public Object getPacketValue(int index) {
125-
try {
126-
return fieldResolver.resolveIndex(index).get(getPacket());
127-
} catch (Exception e) {
128-
throw new RuntimeException(e);
129-
}
117+
return fieldResolver.resolveIndexAccessor(index).get(getPacket());
130118
}
131119

132120
/**
@@ -137,7 +125,7 @@ public Object getPacketValue(int index) {
137125
*/
138126
public Object getPacketValueSilent(int index) {
139127
try {
140-
return fieldResolver.resolveIndex(index).get(getPacket());
128+
return getPacketValue(index);
141129
} catch (Exception e) {
142130
throw new RuntimeException(e);
143131
}

0 commit comments

Comments
 (0)
Failed to load comments.