mirror of
https://github.com/LamGC/ContentGrabbingJi.git
synced 2025-04-30 06:37:36 +00:00
[Delete] BufferMessageEvent 移除缓冲消息事件;
[Add] BufferedMessageSender 增加缓冲消息发送器, 用于替代BufferMessageEvent; [Change] BotCommandProcess 将Random命令中所使用的BufferMessageEvent替换成BufferedMessageSender;
This commit is contained in:
parent
c4ce18d37a
commit
cf351074cc
@ -8,7 +8,7 @@ import net.lamgc.cgj.bot.boot.BotGlobal;
|
|||||||
import net.lamgc.cgj.bot.cache.CacheStore;
|
import net.lamgc.cgj.bot.cache.CacheStore;
|
||||||
import net.lamgc.cgj.bot.cache.CacheStoreCentral;
|
import net.lamgc.cgj.bot.cache.CacheStoreCentral;
|
||||||
import net.lamgc.cgj.bot.cache.JsonRedisCacheStore;
|
import net.lamgc.cgj.bot.cache.JsonRedisCacheStore;
|
||||||
import net.lamgc.cgj.bot.event.BufferMessageEvent;
|
import net.lamgc.cgj.bot.event.BufferedMessageSender;
|
||||||
import net.lamgc.cgj.bot.sort.PreLoadDataAttribute;
|
import net.lamgc.cgj.bot.sort.PreLoadDataAttribute;
|
||||||
import net.lamgc.cgj.bot.sort.PreLoadDataAttributeComparator;
|
import net.lamgc.cgj.bot.sort.PreLoadDataAttributeComparator;
|
||||||
import net.lamgc.cgj.pixiv.PixivDownload;
|
import net.lamgc.cgj.pixiv.PixivDownload;
|
||||||
@ -282,12 +282,12 @@ public class BotCommandProcess {
|
|||||||
return "参数无效, 请查看帮助信息";
|
return "参数无效, 请查看帮助信息";
|
||||||
}
|
}
|
||||||
|
|
||||||
BufferMessageEvent event = new BufferMessageEvent();
|
BufferedMessageSender bufferedSender = new BufferedMessageSender();
|
||||||
RandomRankingArtworksSender artworksSender =
|
RandomRankingArtworksSender artworksSender =
|
||||||
new RandomRankingArtworksSender(event, fromGroup, 1, 200, mode, type,
|
new RandomRankingArtworksSender(bufferedSender, fromGroup, 1, 200, mode, type,
|
||||||
PageQuality.ORIGINAL);
|
PageQuality.ORIGINAL);
|
||||||
artworksSender.send();
|
artworksSender.send();
|
||||||
return event.getBufferMessage();
|
return bufferedSender.getBufferContent();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1,70 +0,0 @@
|
|||||||
package net.lamgc.cgj.bot.event;
|
|
||||||
|
|
||||||
import java.util.Objects;
|
|
||||||
|
|
||||||
public class BufferMessageEvent extends MessageEvent {
|
|
||||||
|
|
||||||
private final StringBuffer buffer = new StringBuffer();
|
|
||||||
|
|
||||||
private final MessageEvent parent;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 以空消息空Id生成BufferMessageEvent
|
|
||||||
*/
|
|
||||||
public BufferMessageEvent() {
|
|
||||||
super(0, 0, "");
|
|
||||||
parent = null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 提供消息内容构造BufferMessageEvent
|
|
||||||
* @param message 传入的消息内容
|
|
||||||
*/
|
|
||||||
public BufferMessageEvent(String message) {
|
|
||||||
super(0, 0, message);
|
|
||||||
parent = null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 提供消息内容构和Id信息造BufferMessageEvent
|
|
||||||
* @param groupId 群组Id
|
|
||||||
* @param qqId 发送者Id
|
|
||||||
* @param message 传入的消息内容
|
|
||||||
*/
|
|
||||||
public BufferMessageEvent(int groupId, int qqId, String message) {
|
|
||||||
super(groupId, qqId, message);
|
|
||||||
parent = null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 使用事件构造BufferMessageEvent
|
|
||||||
* @param parentEvent 父级消息事件对象
|
|
||||||
*/
|
|
||||||
public BufferMessageEvent(MessageEvent parentEvent) {
|
|
||||||
super(parentEvent.getFromGroup(), parentEvent.getFromQQ(), parentEvent.getMessage());
|
|
||||||
parent = parentEvent;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public int sendMessage(String message) {
|
|
||||||
buffer.append(message);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 当提供了父级消息事件时, 本方法调用父级消息事件对象的{@code getImageUrl(String)}, 如果没有, 返回{@code null}
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public String getImageUrl(String image) {
|
|
||||||
return Objects.isNull(this.parent) ? null : this.parent.getImageUrl(image);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取缓冲区消息内容
|
|
||||||
* @return 消息内容
|
|
||||||
*/
|
|
||||||
public String getBufferMessage() {
|
|
||||||
return buffer.toString();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -0,0 +1,23 @@
|
|||||||
|
package net.lamgc.cgj.bot.event;
|
||||||
|
|
||||||
|
import net.lamgc.cgj.bot.message.MessageSender;
|
||||||
|
|
||||||
|
public class BufferedMessageSender implements MessageSender {
|
||||||
|
|
||||||
|
private final StringBuffer buffer = new StringBuffer();
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int sendMessage(String message) {
|
||||||
|
buffer.append(message);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 从缓冲区中取出消息内容.
|
||||||
|
* @return 返回事件发送的消息内容.
|
||||||
|
*/
|
||||||
|
public String getBufferContent() {
|
||||||
|
return buffer.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user