diff --git a/src/org/redkale/boot/Application.java b/src/org/redkale/boot/Application.java index 3be10c4f6..673057583 100644 --- a/src/org/redkale/boot/Application.java +++ b/src/org/redkale/boot/Application.java @@ -690,7 +690,7 @@ public final class Application { agent.init(agent.getConfig()); this.resourceFactory.register(agent.getName(), MessageAgent.class, agent); this.resourceFactory.register(agent.getName(), HttpMessageClient.class, agent.getHttpMessageClient()); - this.resourceFactory.register(agent.getName(), SncpMessageClient.class, agent.getSncpMessageClient()); + //this.resourceFactory.register(agent.getName(), SncpMessageClient.class, agent.getSncpMessageClient()); //不需要给开发者使用 } logger.info("MessageAgent init in " + (System.currentTimeMillis() - s) + " ms"); diff --git a/src/org/redkale/cluster/ClusterAgent.java b/src/org/redkale/cluster/ClusterAgent.java index bb18ceb01..1d1dfdddd 100644 --- a/src/org/redkale/cluster/ClusterAgent.java +++ b/src/org/redkale/cluster/ClusterAgent.java @@ -190,6 +190,10 @@ public abstract class ClusterAgent { return "check-" + generateApplicationServiceId(); } + protected String generateHttpServiceName(String protocol, String module, String resname) { + return protocol.toLowerCase() + ":" + module + (resname == null || resname.isEmpty() ? "" : ("-" + resname)); + } + //格式: protocol:classtype-resourcename protected String generateServiceName(NodeServer ns, String protocol, Service service) { if (protocol.toLowerCase().startsWith("http")) { //HTTP使用RestService.name方式是为了与MessageClient中的module保持一致, 因为HTTP依靠的url中的module,无法知道Service类名 diff --git a/src/org/redkale/mq/HttpSimpleRequestCoder.java b/src/org/redkale/mq/HttpSimpleRequestCoder.java index 4fbde8c06..cefca77d9 100644 --- a/src/org/redkale/mq/HttpSimpleRequestCoder.java +++ b/src/org/redkale/mq/HttpSimpleRequestCoder.java @@ -37,7 +37,7 @@ public class HttpSimpleRequestCoder implements MessageCoder { byte[] params = MessageCoder.getBytes(data.getParams()); byte[] body = MessageCoder.getBytes(data.getBody()); int count = 1 + 4 + requestURI.length + 2 + remoteAddr.length + 2 + sessionid.length - + 2 + contentType.length + headers.length + params.length + 4 + body.length; + + 2 + contentType.length + 4 + headers.length + params.length + 4 + body.length; byte[] bs = new byte[count]; ByteBuffer buffer = ByteBuffer.wrap(bs); buffer.put((byte) (data.isRpc() ? 'T' : 'F')); @@ -49,6 +49,7 @@ public class HttpSimpleRequestCoder implements MessageCoder { if (sessionid.length > 0) buffer.put(sessionid); buffer.putChar((char) contentType.length); if (contentType.length > 0) buffer.put(contentType); + buffer.putInt(data.getCurrentUserid()); buffer.put(headers); buffer.put(params); buffer.putInt(body.length); @@ -66,6 +67,7 @@ public class HttpSimpleRequestCoder implements MessageCoder { req.setRemoteAddr(MessageCoder.getShortString(buffer)); req.setSessionid(MessageCoder.getShortString(buffer)); req.setContentType(MessageCoder.getShortString(buffer)); + req.setCurrentUserid(buffer.getInt()); req.setHeaders(MessageCoder.getMap(buffer)); req.setParams(MessageCoder.getMap(buffer)); int len = buffer.getInt(); diff --git a/src/org/redkale/net/http/HttpRequest.java b/src/org/redkale/net/http/HttpRequest.java index fa5a74bb8..5c59cac95 100644 --- a/src/org/redkale/net/http/HttpRequest.java +++ b/src/org/redkale/net/http/HttpRequest.java @@ -103,6 +103,7 @@ public class HttpRequest extends Request { if (req.getBody() != null) this.array.write(req.getBody()); if (req.getHeaders() != null) this.headers.putAll(req.getHeaders()); if (req.getParams() != null) this.params.putAll(req.getParams()); + if (req.getCurrentUserid() != 0) this.currentUserid = req.getCurrentUserid(); this.contentType = req.getContentType(); this.remoteAddr = req.getRemoteAddr(); this.requestURI = req.getRequestURI(); diff --git a/src/org/redkale/net/http/HttpSimpleRequest.java b/src/org/redkale/net/http/HttpSimpleRequest.java index 3a254e117..fbf865e43 100644 --- a/src/org/redkale/net/http/HttpSimpleRequest.java +++ b/src/org/redkale/net/http/HttpSimpleRequest.java @@ -43,14 +43,17 @@ public class HttpSimpleRequest implements java.io.Serializable { protected String contentType; @ConvertColumn(index = 6) + protected int currentUserid; + + @ConvertColumn(index = 7) @Comment("http header信息") protected Map headers; - @ConvertColumn(index = 7) + @ConvertColumn(index = 8) @Comment("参数信息") protected Map params; - @ConvertColumn(index = 8) + @ConvertColumn(index = 9) @Comment("http body信息") protected byte[] body; //对应HttpRequest.array @@ -92,6 +95,11 @@ public class HttpSimpleRequest implements java.io.Serializable { return this; } + public HttpSimpleRequest currentUserid(int userid) { + this.currentUserid = userid; + return this; + } + public HttpSimpleRequest removeHeader(String name) { if (this.headers != null) this.headers.remove(name); return this; @@ -216,6 +224,14 @@ public class HttpSimpleRequest implements java.io.Serializable { this.remoteAddr = remoteAddr; } + public int getCurrentUserid() { + return currentUserid; + } + + public void setCurrentUserid(int currentUserid) { + this.currentUserid = currentUserid; + } + public String getContentType() { return contentType; }