setup ffsaf server
This commit is contained in:
25
src/main/java/fr/titionfire/ffsaf/net2/packet/CIA.java
Normal file
25
src/main/java/fr/titionfire/ffsaf/net2/packet/CIA.java
Normal file
@@ -0,0 +1,25 @@
|
||||
package fr.titionfire.ffsaf.net2.packet;
|
||||
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.databind.JsonNode;
|
||||
import fr.titionfire.ffsaf.net2.Client_Thread;
|
||||
import fr.titionfire.ffsaf.net2.Message;
|
||||
|
||||
import java.util.function.BiConsumer;
|
||||
|
||||
import static fr.titionfire.ffsaf.net2.Client_Thread.MAPPER;
|
||||
|
||||
public class CIA<T> implements IAction{
|
||||
private final Class<T> clazz;
|
||||
private final BiConsumer<Client_Thread, Message<T>> iAction;
|
||||
|
||||
public CIA(Class<T> clazz, BiConsumer<Client_Thread, Message<T>> iAction){
|
||||
this.clazz = clazz;
|
||||
this.iAction = iAction;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void dataIn(Client_Thread client_Thread, Message<JsonNode> message) throws JsonProcessingException {
|
||||
iAction.accept(client_Thread, new Message<>(message.uuid(), message.code(), message.type(), MAPPER.treeToValue(message.data(), clazz)));
|
||||
}
|
||||
}
|
||||
14
src/main/java/fr/titionfire/ffsaf/net2/packet/IAction.java
Normal file
14
src/main/java/fr/titionfire/ffsaf/net2/packet/IAction.java
Normal file
@@ -0,0 +1,14 @@
|
||||
package fr.titionfire.ffsaf.net2.packet;
|
||||
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.databind.JsonNode;
|
||||
import fr.titionfire.ffsaf.net2.Client_Thread;
|
||||
import fr.titionfire.ffsaf.net2.Message;
|
||||
|
||||
public interface IAction {
|
||||
void dataIn(Client_Thread client_Thread, Message<JsonNode> message) throws JsonProcessingException;
|
||||
|
||||
default void castAndCall (Client_Thread client_Thread, Message<JsonNode> message) throws JsonProcessingException {
|
||||
this.dataIn(client_Thread, message);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
package fr.titionfire.ffsaf.net2.packet;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
public class RegisterAction {
|
||||
|
||||
public static void register(HashMap<String, IAction> iMap) {
|
||||
iMap.clear();
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user