Version 4.5

Update to Spigot 1.12-pre5
Improved API
This commit is contained in:
Jerom van der Sar 2017-05-26 16:32:25 +02:00
parent eb2bbeaf02
commit da383026e5
10 changed files with 58 additions and 15 deletions

View File

@ -4,7 +4,7 @@
<groupId>me.totalfreedom</groupId>
<artifactId>bukkittelnet</artifactId>
<version>4.4</version>
<version>4.5</version>
<packaging>jar</packaging>
<properties>
@ -45,14 +45,14 @@
<dependency>
<groupId>org.spigotmc</groupId>
<artifactId>spigot-api</artifactId>
<version>1.9-R0.1-SNAPSHOT</version>
<version>1.12-pre5-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.6</version>
<version>1.16.16</version>
<scope>provided</scope>
</dependency>

View File

@ -1,7 +1,9 @@
package me.totalfreedom.bukkittelnet;
import me.totalfreedom.bukkittelnet.api.Server;
import org.bukkit.Bukkit;
import org.bukkit.event.HandlerList;
import org.bukkit.plugin.ServicePriority;
import org.bukkit.plugin.java.JavaPlugin;
public class BukkitTelnet extends JavaPlugin
@ -37,6 +39,8 @@ public class BukkitTelnet extends JavaPlugin
getServer().getPluginManager().registerEvents(listener, plugin);
getServer().getServicesManager().register(Server.class, telnet, this, ServicePriority.Normal);
TelnetLogger.info(plugin.getName() + " v" + plugin.getDescription().getVersion() + " enabled");
}

View File

@ -11,7 +11,6 @@ import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerKickEvent;
import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.scheduler.BukkitRunnable;
import org.bukkit.scheduler.BukkitTask;

View File

@ -7,6 +7,7 @@ import java.net.InetAddress;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
@ -149,4 +150,9 @@ public class SocketListener extends Thread
clientSessions.clear();
}
public List<ClientSession> getSessions()
{
return Collections.unmodifiableList(clientSessions);
}
}

View File

@ -4,9 +4,11 @@ import java.io.IOException;
import java.net.InetAddress;
import java.net.ServerSocket;
import java.net.UnknownHostException;
import java.util.List;
import lombok.Getter;
import me.totalfreedom.bukkittelnet.TelnetConfigLoader.TelnetConfig;
import me.totalfreedom.bukkittelnet.api.Server;
import me.totalfreedom.bukkittelnet.session.ClientSession;
public class TelnetServer implements Server
{
@ -15,7 +17,7 @@ public class TelnetServer implements Server
private final BukkitTelnet plugin;
@Getter
private final TelnetConfig config;
//
@Getter
private SocketListener socketListener;
public TelnetServer(BukkitTelnet plugin, TelnetConfig config)
@ -92,9 +94,9 @@ public class TelnetServer implements Server
}
@Override
public SocketListener getSocketListener()
public List<ClientSession> getSessions()
{
return socketListener;
return socketListener.getSessions();
}
}

View File

@ -1,11 +1,9 @@
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package me.totalfreedom.bukkittelnet.api;
import java.util.List;
import me.totalfreedom.bukkittelnet.SocketListener;
import me.totalfreedom.bukkittelnet.TelnetConfigLoader.TelnetConfig;
import me.totalfreedom.bukkittelnet.session.ClientSession;
public interface Server
{
@ -14,6 +12,11 @@ public interface Server
public void stopServer();
@Deprecated
public SocketListener getSocketListener();
public TelnetConfig getConfig();
public List<ClientSession> getSessions();
}

View File

@ -1,6 +1,7 @@
package me.totalfreedom.bukkittelnet.session;
import java.util.Set;
import net.md_5.bungee.api.chat.BaseComponent;
import org.bukkit.Bukkit;
import org.bukkit.Server;
import org.bukkit.command.ConsoleCommandSender;
@ -156,4 +157,28 @@ public class SessionCommandSender implements ConsoleCommandSender
session.writeRawLine(string);
}
@Override
public Spigot spigot()
{
return new Spigot()
{
@Override
public void sendMessage(BaseComponent component)
{
SessionCommandSender.this.sendMessage(component.toPlainText());
}
@Override
public void sendMessage(BaseComponent... components)
{
for (BaseComponent bc : components)
{
sendMessage(bc);
}
}
};
}
}

View File

@ -2,7 +2,10 @@ package me.totalfreedom.bukkittelnet.thirdparty;
import java.io.File;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.StringWriter;
import org.apache.commons.lang.exception.ExceptionUtils;
import org.apache.logging.log4j.core.util.IOUtils;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.plugin.Plugin;
@ -138,7 +141,8 @@ public class YamlConfig extends YamlConfiguration
final YamlConfiguration DEFAULT_CONFIG = new YamlConfiguration();
try
{
DEFAULT_CONFIG.load(PLUGIN.getResource(CONFIG_FILE.getName()));
final String configString = IOUtils.toString(new InputStreamReader(PLUGIN.getResource(CONFIG_FILE.getName())));
DEFAULT_CONFIG.loadFromString(configString);
}
catch (Throwable ex)
{

View File

@ -1,4 +1,4 @@
# BukkitTelnet v4.2 Configuration File
# BukkitTelnet v4.5 Configuration File
# Address to listen on, leave blank for all
address: ''

View File

@ -1,5 +1,5 @@
name: BukkitTelnet
main: me.totalfreedom.bukkittelnet.BukkitTelnet
version: 4.4
version: 4.5
description: Telnet console access plugin.
authors: [bekvon, Madgeek1450, Prozza]