From 6c4a83d14d2526e44439a0ceecd68aabce9df2cd Mon Sep 17 00:00:00 2001 From: Redkale <8730487+redkale@users.noreply.github.com> Date: Wed, 27 May 2020 20:32:57 +0800 Subject: [PATCH] --- src/org/redkale/mq/MessageAgent.java | 38 ++++++++++++++++++++-- src/org/redkale/mq/MessageHttpRequest.java | 7 ++++ 2 files changed, 43 insertions(+), 2 deletions(-) diff --git a/src/org/redkale/mq/MessageAgent.java b/src/org/redkale/mq/MessageAgent.java index cb3a32404..5792289be 100644 --- a/src/org/redkale/mq/MessageAgent.java +++ b/src/org/redkale/mq/MessageAgent.java @@ -5,6 +5,10 @@ */ package org.redkale.mq; +import java.util.List; +import java.util.logging.Logger; +import org.redkale.util.AnyValue; + /** * MQ管理 * @@ -15,9 +19,39 @@ package org.redkale.mq; */ public abstract class MessageAgent { + protected String name; + + protected final Logger logger = Logger.getLogger(this.getClass().getSimpleName()); + + public void init(AnyValue config) { + + } + + public void destroy(AnyValue config) { + + } + + public String getName() { + return name; + } + + protected String checkName(String name) { //不能含特殊字符 + if (name.isEmpty()) throw new RuntimeException("name only 0-9 a-z A-Z _ cannot begin 0-9"); + if (name.charAt(0) >= '0' && name.charAt(0) <= '9') throw new RuntimeException("name only 0-9 a-z A-Z _ cannot begin 0-9"); + for (char ch : name.toCharArray()) { + if (!((ch >= '0' && ch <= '9') || ch == '_' || (ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z'))) { //不能含特殊字符 + throw new RuntimeException("name only 0-9 a-z A-Z _ cannot begin 0-9"); + } + } + return name; + } + //创建topic,如果已存在则跳过 - public abstract void createTopic(String... topics); + public abstract boolean createTopic(String... topics); //删除topic,如果不存在则跳过 - public abstract void deleteTopic(String... topics); + public abstract boolean deleteTopic(String... topics); + + //查询所有topic + public abstract List queryTopic(); } diff --git a/src/org/redkale/mq/MessageHttpRequest.java b/src/org/redkale/mq/MessageHttpRequest.java index 8f89e8c9c..2fb799d5a 100644 --- a/src/org/redkale/mq/MessageHttpRequest.java +++ b/src/org/redkale/mq/MessageHttpRequest.java @@ -14,10 +14,17 @@ import org.redkale.net.http.*; */ public class MessageHttpRequest extends HttpRequest { + protected String remoteAddr; + public MessageHttpRequest(HttpContext context) { super(context, null); } + @Override + public String getRemoteAddr() { + return remoteAddr; + } + @Override public int readHeader(ByteBuffer buffer) { return super.readHeader(buffer);