move to elytra namespace and rename to matterlink

This commit is contained in:
Nikky Ai 2018-01-27 04:08:17 +01:00
rodzic 7d44539b91
commit 0f82a1ad24
17 zmienionych plików z 99 dodań i 105 usunięć

Wyświetl plik

@ -1,27 +0,0 @@
language: java
jdk:
- openjdk8
before_install:
- chmod +x gradlew
install: ./gradlew setupCIWorkspace -S
script: ./gradlew build -S
notifications:
email: false
irc:
channels:
- "irc.esper.net#ruby"
template:
- "%{repository}#%{build_number} (%{branch} - %{commit} : %{commit_message} by %{author}): %{message} Details: %{build_url} Changes: %{compare_url}"
use_notice: true
# nick: travis-ci
before_cache:
- rm -f $HOME/.gradle/caches/modules-2/modules-2.lock
- rm -fr $HOME/.gradle/caches/*/plugin-resolution/
cache:
directories:
- $HOME/.gradle/caches/
- $HOME/.gradle/wrapper/

Wyświetl plik

@ -1,5 +1,28 @@
# CivilEngineering # MatterLink
[![Build Status](https://travis-ci.org/NikkyAI/CivilEngineering.svg?branch=master)](https://travis-ci.org/NikkyAI/CivilEngineering)
matterbridge for MC servers matterbridge for MC servers
https://github.com/42wim/matterbridge
requires api section to be setup along these lines
```
[api]
[api.local]
BindAddress="0.0.0.0:4343" # or listen only to localhost
#Bearer token used for authentication
#curl -H "Authorization: Bearer testtoken" http://localhost:4343/api/messages
#OPTIONAL (no authorization if token is empty)
Token="testtoken"
Buffer=1000
RemoteNickFormat="{NICK}"
ShowJoinPart = true
```
values you need to remember are obviously the IP, port and token
MatterLInk will need them in the configuration

Wyświetl plik

@ -18,7 +18,7 @@ apply plugin: 'com.github.johnrengelman.shadow'
version = "0.2.0" version = "0.2.0"
group = "civilengineering" // http://maven.apache.org/guides/mini/guide-naming-conventions.html group = "matterlink" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
archivesBaseName = "CivilEngineering" archivesBaseName = "CivilEngineering"
sourceCompatibility = targetCompatibility = '1.8' // Need this here so eclipse task generates correctly. sourceCompatibility = targetCompatibility = '1.8' // Need this here so eclipse task generates correctly.

Wyświetl plik

@ -1,10 +1,9 @@
package civilengineering package matterlink
import civilengineering.bridge.MessageHandler import matterlink.bridge.MessageHandler
import civilengineering.bridge.ServerChatHelper import matterlink.bridge.ServerChatHelper
import civilengineering.command.BridgeCommand import matterlink.command.BridgeCommand
import civilengineering.eventhandlers.* import matterlink.eventhandlers.*
import net.minecraft.advancements.Advancement
import net.minecraftforge.common.MinecraftForge import net.minecraftforge.common.MinecraftForge
import net.minecraftforge.fml.common.Mod import net.minecraftforge.fml.common.Mod
import net.minecraftforge.fml.common.event.* import net.minecraftforge.fml.common.event.*
@ -15,8 +14,8 @@ import org.apache.logging.log4j.simple.SimpleLogger
import org.apache.logging.log4j.util.PropertiesUtil import org.apache.logging.log4j.util.PropertiesUtil
import java.util.* import java.util.*
const val MODID = "civilengineering" const val MODID = "matterlink"
const val NAME = "Civil Engineering" const val NAME = "MatterLink"
const val VERSION = "0.2.0" const val VERSION = "0.2.0"
@Mod( @Mod(
@ -27,7 +26,7 @@ const val VERSION = "0.2.0"
acceptableRemoteVersions = "*", acceptableRemoteVersions = "*",
modLanguageAdapter = "net.shadowfacts.forgelin.KotlinAdapter" modLanguageAdapter = "net.shadowfacts.forgelin.KotlinAdapter"
) )
object CivilEngineering { object MatterLink {
//create fake logger to get around Nullability //create fake logger to get around Nullability
var logger: Logger = SimpleLogger("", var logger: Logger = SimpleLogger("",
Level.OFF, Level.OFF,
@ -45,7 +44,7 @@ object CivilEngineering {
logger = event.modLog logger = event.modLog
logger.info("Building bridge!") logger.info("Building bridge!")
CivilEngineeringConfig(event.modConfigurationDirectory) MatterLinkConfig()
} }
@Mod.EventHandler @Mod.EventHandler

Wyświetl plik

@ -1,11 +1,11 @@
package civilengineering package matterlink
import net.minecraftforge.common.config.Configuration import net.minecraftforge.common.config.Configuration
import java.io.File import java.io.File
var cfg: CivilEngineeringConfig? = null var cfg: MatterLinkConfig? = null
class CivilEngineeringConfig(file: File) { class MatterLinkConfig() {
private val CATEGORY_RELAY_OPTIONS = "relay" private val CATEGORY_RELAY_OPTIONS = "relay"
private val CATEGORY_FORMATTING = "formatting" private val CATEGORY_FORMATTING = "formatting"
private val CATEGORY_CONNECTION = "connection" private val CATEGORY_CONNECTION = "connection"
@ -34,8 +34,8 @@ class CivilEngineeringConfig(file: File) {
) )
init { init {
CivilEngineering.logger.info("Reading bridge blueprints...") MatterLink.logger.info("Reading bridge blueprints...")
val config = Configuration(file.resolve("CivilEngineering.cfg")) val config = Configuration()
config.addCustomCategoryComment(CATEGORY_RELAY_OPTIONS, "Relay options") config.addCustomCategoryComment(CATEGORY_RELAY_OPTIONS, "Relay options")
relay = RelayOptions( relay = RelayOptions(

Wyświetl plik

@ -1,4 +1,4 @@
package civilengineering package matterlink
private const val ZWSP: Char = '\u200b' private const val ZWSP: Char = '\u200b'

Wyświetl plik

@ -1,7 +1,7 @@
package civilengineering.bridge package matterlink.bridge
import civilengineering.cfg import matterlink.cfg
import civilengineering.antiping import matterlink.antiping
import com.google.gson.Gson import com.google.gson.Gson
data class ApiMessage( data class ApiMessage(

Wyświetl plik

@ -1,6 +1,6 @@
package civilengineering.bridge; package matterlink.bridge;
import civilengineering.CivilEngineering import matterlink.MatterLink
import org.apache.http.client.methods.HttpGet import org.apache.http.client.methods.HttpGet
import org.apache.http.impl.client.HttpClients import org.apache.http.impl.client.HttpClients
import java.io.InputStream import java.io.InputStream
@ -30,7 +30,7 @@ class HttpStreamConnection(private val getClosure: () -> HttpGet, private val mh
if (chars > 0) { if (chars > 0) {
buffer += String(buf.dropLast(buf.count() - chars).toByteArray()) buffer += String(buf.dropLast(buf.count() - chars).toByteArray())
CivilEngineering.logger.debug(buffer) MatterLink.logger.debug(buffer)
while (buffer.contains("\n")) { while (buffer.contains("\n")) {
val line = buffer.substringBefore("\n") val line = buffer.substringBefore("\n")
@ -42,11 +42,11 @@ class HttpStreamConnection(private val getClosure: () -> HttpGet, private val mh
} }
} }
} catch (e: SocketException) { } catch (e: SocketException) {
// CivilEngineering.logger.error("Bridge Connection interrupted...") // MatterLink.logger.error("Bridge Connection interrupted...")
} }
CivilEngineering.logger.debug("closing stream") MatterLink.logger.debug("closing stream")
content.close() content.close()
CivilEngineering.logger.debug("thread finished") MatterLink.logger.debug("thread finished")
onClose() onClose()
return return
} }

Wyświetl plik

@ -1,7 +1,7 @@
package civilengineering.bridge package matterlink.bridge
import civilengineering.CivilEngineering import matterlink.MatterLink
import civilengineering.cfg import matterlink.cfg
import org.apache.http.client.methods.HttpGet import org.apache.http.client.methods.HttpGet
import org.apache.http.client.methods.HttpPost import org.apache.http.client.methods.HttpPost
import org.apache.http.client.methods.HttpRequestBase import org.apache.http.client.methods.HttpRequestBase
@ -30,7 +30,7 @@ object MessageHandler {
} }
private fun createThread(): HttpStreamConnection { private fun createThread(): HttpStreamConnection {
CivilEngineering.logger.info("Attempting to open bridge connection.") MatterLink.logger.info("Attempting to open bridge connection.")
return HttpStreamConnection( return HttpStreamConnection(
{ {
HttpGet(cfg!!.connect.url + "/api/stream").apply { HttpGet(cfg!!.connect.url + "/api/stream").apply {
@ -41,10 +41,10 @@ object MessageHandler {
rcvQueue.add( rcvQueue.add(
ApiMessage.decode(it) ApiMessage.decode(it)
) )
CivilEngineering.logger.debug("Received: " + it) MatterLink.logger.debug("Received: " + it)
}, },
{ {
CivilEngineering.logger.info("Bridge connection closed!") MatterLink.logger.info("Bridge connection closed!")
connected = false connected = false
} }
) )
@ -52,13 +52,13 @@ object MessageHandler {
fun transmit(msg: ApiMessage) { fun transmit(msg: ApiMessage) {
if (connected && streamConnection.isAlive) { if (connected && streamConnection.isAlive) {
CivilEngineering.logger.debug("Transmitting: " + msg) MatterLink.logger.debug("Transmitting: " + msg)
transmitMessage(msg) transmitMessage(msg)
} }
} }
fun stop() { fun stop() {
CivilEngineering.logger.info("Closing bridge connection...") MatterLink.logger.info("Closing bridge connection...")
// MessageHandler.transmit(ApiMessage(text="bridge closing", username="Server")) // MessageHandler.transmit(ApiMessage(text="bridge closing", username="Server"))
streamConnection.close() streamConnection.close()
} }
@ -87,14 +87,14 @@ object MessageHandler {
val response = client.execute(post) val response = client.execute(post)
val code = response.statusLine.statusCode val code = response.statusLine.statusCode
if (code != 200) { if (code != 200) {
CivilEngineering.logger.error("Server returned $code for $post") MatterLink.logger.error("Server returned $code for $post")
} }
sendErrors = 0 sendErrors = 0
} catch (e: IOException) { } catch (e: IOException) {
CivilEngineering.logger.error("sending message caused $e") MatterLink.logger.error("sending message caused $e")
sendErrors++ sendErrors++
if (sendErrors > 5) { if (sendErrors > 5) {
CivilEngineering.logger.error("caught too many errors, closing bridge") MatterLink.logger.error("caught too many errors, closing bridge")
stop() stop()
} }
} }

Wyświetl plik

@ -1,7 +1,7 @@
package civilengineering.bridge package matterlink.bridge
import civilengineering.CivilEngineering import matterlink.MatterLink
import civilengineering.cfg import matterlink.cfg
import net.minecraft.util.text.TextComponentString import net.minecraft.util.text.TextComponentString
import net.minecraftforge.fml.common.FMLCommonHandler import net.minecraftforge.fml.common.FMLCommonHandler
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
@ -11,7 +11,7 @@ class ServerChatHelper {
@SubscribeEvent @SubscribeEvent
fun onServerUpdate(event: TickEvent.ServerTickEvent) { fun onServerUpdate(event: TickEvent.ServerTickEvent) {
if (MessageHandler.rcvQueue.isNotEmpty()) if (MessageHandler.rcvQueue.isNotEmpty())
CivilEngineering.logger.debug("incoming: " + MessageHandler.rcvQueue.toString()) MatterLink.logger.debug("incoming: " + MessageHandler.rcvQueue.toString())
val nextMessage = MessageHandler.rcvQueue.poll() val nextMessage = MessageHandler.rcvQueue.poll()
if (nextMessage != null && nextMessage.gateway == cfg!!.connect.gateway) { if (nextMessage != null && nextMessage.gateway == cfg!!.connect.gateway) {
@ -25,11 +25,11 @@ class ServerChatHelper {
val user = nextMessage.username val user = nextMessage.username
val text = nextMessage.text val text = nextMessage.text
val json = nextMessage.encode() val json = nextMessage.encode()
CivilEngineering.logger.debug("Threw out message with unhandled event: $event") MatterLink.logger.debug("Threw out message with unhandled event: $event")
CivilEngineering.logger.debug(" Message contents:") MatterLink.logger.debug(" Message contents:")
CivilEngineering.logger.debug(" User: $user") MatterLink.logger.debug(" User: $user")
CivilEngineering.logger.debug(" Text: $text") MatterLink.logger.debug(" Text: $text")
CivilEngineering.logger.debug(" JSON: $json") MatterLink.logger.debug(" JSON: $json")
return return
} }
} }

Wyświetl plik

@ -1,8 +1,8 @@
package civilengineering.command package matterlink.command
import civilengineering.* import matterlink.*
import civilengineering.CivilEngineering.logger import matterlink.MatterLink.logger
import civilengineering.bridge.MessageHandler import matterlink.bridge.MessageHandler
import com.google.common.collect.Lists import com.google.common.collect.Lists
import net.minecraft.command.CommandBase import net.minecraft.command.CommandBase
import net.minecraft.command.ICommandSender import net.minecraft.command.ICommandSender

Wyświetl plik

@ -1,9 +1,9 @@
package civilengineering.eventhandlers package matterlink.eventhandlers
import civilengineering.bridge.ApiMessage import matterlink.bridge.ApiMessage
import civilengineering.bridge.MessageHandler import matterlink.bridge.MessageHandler
import civilengineering.cfg import matterlink.cfg
import civilengineering.antiping import matterlink.antiping
import net.minecraftforge.event.entity.player.AdvancementEvent import net.minecraftforge.event.entity.player.AdvancementEvent
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent import net.minecraftforge.fml.common.eventhandler.SubscribeEvent

Wyświetl plik

@ -1,7 +1,7 @@
package civilengineering.eventhandlers package matterlink.eventhandlers
import civilengineering.bridge.ApiMessage import matterlink.bridge.ApiMessage
import civilengineering.bridge.MessageHandler import matterlink.bridge.MessageHandler
import net.minecraftforge.event.ServerChatEvent import net.minecraftforge.event.ServerChatEvent
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent import net.minecraftforge.fml.common.eventhandler.SubscribeEvent

Wyświetl plik

@ -1,8 +1,7 @@
package civilengineering.eventhandlers package matterlink.eventhandlers
import civilengineering.CivilEngineering import matterlink.bridge.ApiMessage
import civilengineering.bridge.ApiMessage import matterlink.bridge.MessageHandler
import civilengineering.bridge.MessageHandler
import net.minecraft.command.server.CommandBroadcast import net.minecraft.command.server.CommandBroadcast
import net.minecraft.command.server.CommandEmote import net.minecraft.command.server.CommandEmote
import net.minecraft.entity.player.EntityPlayer import net.minecraft.entity.player.EntityPlayer

Wyświetl plik

@ -1,9 +1,9 @@
package civilengineering.eventhandlers package matterlink.eventhandlers
import civilengineering.bridge.ApiMessage import matterlink.bridge.ApiMessage
import civilengineering.bridge.MessageHandler import matterlink.bridge.MessageHandler
import civilengineering.cfg import matterlink.cfg
import civilengineering.antiping import matterlink.antiping
import net.minecraft.entity.player.EntityPlayer import net.minecraft.entity.player.EntityPlayer
import net.minecraftforge.event.entity.living.LivingDeathEvent import net.minecraftforge.event.entity.living.LivingDeathEvent
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent import net.minecraftforge.fml.common.eventhandler.SubscribeEvent

Wyświetl plik

@ -1,9 +1,9 @@
package civilengineering.eventhandlers package matterlink.eventhandlers
import civilengineering.bridge.ApiMessage import matterlink.bridge.ApiMessage
import civilengineering.bridge.MessageHandler import matterlink.bridge.MessageHandler
import civilengineering.cfg import matterlink.cfg
import civilengineering.antiping import matterlink.antiping
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
import net.minecraftforge.fml.common.gameevent.PlayerEvent import net.minecraftforge.fml.common.gameevent.PlayerEvent

Wyświetl plik

@ -1,8 +1,8 @@
[{ [{
"modid": "civilengineering", "modid": "matterlink",
"name": "Civil Engineering", "name": "MatterLink",
"description": "Minecraft Server Matterbridge link", "description": "Minecraft Server Matterbridge link",
"version": "0.2.0", "version": "1.0",
"mcversion": "1.12.2", "mcversion": "1.12.2",
"authorList":["Arcanitor", "NikkyAi"], "authorList":["Arcanitor", "NikkyAi"],
"credits": "Blame Nikky for talking me into this." "credits": "Blame Nikky for talking me into this."