SquidLibs
SquidLibs est l'ensemble d'utilitaire n'étant pas dépendant d'une platforme ou d'un contexte (ex. minecraft)
Connecteurs (HikariCP, Redis, RabbitMQ)
Ces connecteurs sont les seuls disponibles et vous devez impérativement les utiliser ( voir Rivrs - Dev Guideline)
HikariCP
HikariCP est disponible via le HikariStorageSource, cette classe permet facilement d'utiliser HikariCP
Pour se connecter à une base de données, rien de plus simple:
Créer un fichier database.properties avec le bon format
Créer une nouvelle instance de HikariStorageSource puis appelez la méthode
connectavec le chemin d'accès du database.propertiesIntercepter les erreurs et éteignez votre plugin
Exemple:
database.properties:
Votre plugin:
Redis
Redis est disponible via le LettuceStorageSource, elle englobe Lettuce qui est la lib utilisé au sein de rivrs
Récupérer vos informations de connexion
Créer une nouvelle instance de LettuceStorageSource et appelez la méthode
connectavec les bons paramètresIntercepter les erreurs et éteignez votre plugin
Exemple:
Codecs customs: (voir javadoc) Pour utiliser un codec custom, veuilliez le passer en dernier paramètre de la méthode connect
SquidLibs propose une class englobant certain codecs standard RedisCodecs Ex:
RabbitMQ
RabbitMQ est disponible via le RabbitMQMessenger, elle englobe la lib standard RabbitMQ
Récupérer vos informations de connexion
Créer une nouvelle instance de LettuceStorageSource et appelez la méthode
connectavec les bons paramètresIntercepter les erreurs et éteignez votre plugin
Exemple:
Bundle
Le bundle est un objet backé par du json, il permet de facilement récupérer des field ou de les définir
Pair
La pair est un objet plutôt standard représentant deux valeur en une
Les informations corrélé aux serveurs de jeu
MinecraftPlayer
Cet objet représente un joueur avec
uuid
username
texture
proxy actuel
serveur actuel
MinecraftServer
Cet objet représente un serveur avec
nom
type
template
joueurs connectés
extraData
statut (offline, running, ...)
host
port
create time (quand est ce qu'il a été créer)
dernier heartbeat
start time
Il peut aussi être transformé en ServerInformation via asServerInformation()
ServerInformation
Cet objet représente le strict minimum d'un serveur Il contient:
nom
type
template
statut
host
port
createTime
startTime