Skip to content
This repository has been archived by the owner on Jan 23, 2021. It is now read-only.

Commit

Permalink
RELEASE v1.1.0
Browse files Browse the repository at this point in the history
  • Loading branch information
Ray-Eldath committed Oct 6, 2017
1 parent 10ed3c3 commit bae6fd3
Show file tree
Hide file tree
Showing 10 changed files with 21 additions and 9 deletions.
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
group 'ray-eldath.avalon'
version '1.0.0'
version '1.1.0'

apply plugin: 'java'
apply plugin: 'kotlin'
Expand Down
2 changes: 2 additions & 0 deletions src/main/java/avalon/group/GroupMessageHandler.java
Original file line number Diff line number Diff line change
Expand Up @@ -197,6 +197,8 @@ private boolean doCheck(Pattern key, GroupMessage groupMessage) {
}

public static void main(String[] args) {
System.setProperty("file.encoding", "UTF-8");

Config.instance();
RunningData.getInstance();
new Constants.Basic();
Expand Down
4 changes: 4 additions & 0 deletions src/main/java/avalon/main/MainServer.java
Original file line number Diff line number Diff line change
Expand Up @@ -52,13 +52,17 @@ public void run() {
}

public static void main(String[] args) throws Exception {
// 字符集处理
System.setProperty("file.encoding", "UTF-8");
// debug检测
if (Constants.Basic.debug)
logger.warn("Avalon is running under DEBUG mode!");
// if (!currentServlet.test()) {
// logger.error("can not connect to servlet " + currentServlet.name() + "! please check this servlet is DO running...");
// System.exit(-1);
// }
// 响应速度太慢。

Config.instance();
RunningData.getInstance();
new Constants.Basic();
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/avalon/tool/pool/Constants.java
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ public static class Address {
}

public static class Version {
public static final String avalon = "1.0.0";
public static final String avalon = "1.1.0";
private static final String servlet = Basic.currentServlet.version();
private static Version instance = null;

Expand Down
3 changes: 2 additions & 1 deletion src/main/java/avalon/util/servlet/CoolQServlet.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
import java.nio.charset.StandardCharsets;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
Expand Down Expand Up @@ -195,7 +196,7 @@ private String sendRequest(String url, Map<String, Object> data) {
URLConnection connection = new URL(url).openConnection();
connection.setReadTimeout(2000);
connection.setConnectTimeout(2000);
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream(), StandardCharsets.UTF_8));
String thisLine;
while ((thisLine = reader.readLine()) != null)
response.append(thisLine);
Expand Down
3 changes: 2 additions & 1 deletion src/main/kotlin/avalon/extend/Hitokoto.kt
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import avalon.tool.system.Config
import org.json.JSONObject
import org.json.JSONTokener
import java.net.URL
import java.nio.charset.StandardCharsets

object Hitokoto {
private val category = Config.instance().getCommandConfig("Hitokoto", "category")
Expand All @@ -12,7 +13,7 @@ object Hitokoto {
var url = "https://sslapi.hitokoto.cn/?encode=json"
if (category != null)
url += "&c=$category"
val obj = JSONTokener(URL(url).openStream()).nextValue() as JSONObject
val obj = JSONTokener(URL(url).openStream().bufferedReader(StandardCharsets.UTF_8)).nextValue() as JSONObject
return "${obj.getString("hitokoto")}\n—「${obj.getString("from")}"
}
}
3 changes: 2 additions & 1 deletion src/main/kotlin/avalon/extend/RSSParser.kt
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import org.apache.commons.lang3.builder.EqualsBuilder
import org.apache.commons.lang3.builder.HashCodeBuilder
import org.jdom2.input.SAXBuilder
import java.net.URL
import java.nio.charset.StandardCharsets
import java.time.LocalDateTime
import java.time.format.DateTimeFormatter

Expand Down Expand Up @@ -40,7 +41,7 @@ object RSSParser {
@JvmStatic
fun get(url: URL): List<RSSItem> {
val sb = SAXBuilder()
val doc = sb.build(url)
val doc = sb.build(url.openConnection().getInputStream().reader(StandardCharsets.UTF_8))
val root = doc.rootElement.getChild("channel")
val items = root.getChildren("item").toList()
val info = RSSInfo(root.getChildTextNormalize("title"),
Expand Down
3 changes: 2 additions & 1 deletion src/main/kotlin/avalon/group/Shutdown.kt
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ object Shutdown : GroupMessageResponder() {
try {
Constants.Basic.currentServlet.shutdown()
} catch (e: UnsupportedOperationException) {
message.response("鸡寄了!\n${e.message}")
e.printStackTrace()
System.exit(0)
}
LoggerFactory.getLogger(Shutdown.javaClass).warn("Avalon is stopped remotely by ${message.senderUid}:${message.senderNickName} on ${message.groupUid}:${message.groupName} at ${message.time.toString().replace("T", " ")}")
System.exit(0)
Expand Down
4 changes: 3 additions & 1 deletion src/main/kotlin/avalon/group/Wolfram.kt
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ import org.jdom2.JDOMException
import org.jdom2.input.SAXBuilder
import org.slf4j.LoggerFactory
import java.io.IOException
import java.net.URL
import java.nio.charset.StandardCharsets
import java.util.regex.Pattern

object Wolfram : GroupMessageResponder() {
Expand All @@ -28,7 +30,7 @@ object Wolfram : GroupMessageResponder() {
message.response(avalon.api.Flag.AT(message) + " 由于消息长度过长,将会将结果私聊给您。请等待网络延迟!^_^#")
try {
val builder = SAXBuilder()
val pods = WolframXMLParser.get(builder.build(url).rootElement)
val pods = WolframXMLParser.get(builder.build(URL(url).openStream().reader(StandardCharsets.UTF_8)).rootElement)
val builder1 = StringBuilder()
pods.filterNot { it.empty() }
.forEach { builder1.append(it.title).append("\n").append("---\n").append(it.plaintext) }
Expand Down
4 changes: 2 additions & 2 deletions src/main/kotlin/avalon/tool/Executive.kt
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ import org.json.JSONObject
import org.json.JSONTokener
import java.io.InputStreamReader
import java.io.OutputStreamWriter
import java.lang.Exception
import java.net.HttpURLConnection
import java.net.URL
import java.nio.charset.StandardCharsets

enum class ExecutiveStatus {
OK, ERROR, STDERR
Expand Down Expand Up @@ -45,7 +45,7 @@ internal object Share {

content?.let {
val stream = connection.outputStream
val writer = OutputStreamWriter(stream)
val writer = OutputStreamWriter(stream, StandardCharsets.UTF_8)
it.write(writer)
writer.close()
stream.close()
Expand Down

0 comments on commit bae6fd3

Please sign in to comment.