@Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); sb.append("id:" + getId() + ","); sb.append("type:" + type + ","); sb.append("status:" + status + ","); return sb.toString(); }
@Override public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) throws Exception{ if (!(cause instanceof IOException) && !(cause instanceof TooLongFrameException)) { Attribute<Node> nodeAttribute = ctx.channel().attr(NodeAttributeKey.NODE_KEY); Node node = nodeAttribute.get(); Log.error("----------------nodeId:" + node.getId()); Log.error(cause); } ctx.close(); } }
public void nodeConnectSuccess(Node node) { nodesContainer.getConnectedNodes().put(node.getId(), node); nodesContainer.getCanConnectNodes().remove(node.getId()); node.setConnectStatus(NodeConnectStatusEnum.CONNECTED); // Log.info("node {} connect success !", node.getId()); sendHandshakeMessage(node, NetworkConstant.HANDSHAKE_CLIENT_TYPE); }
public boolean connection(Node node) { try { NettyClient client = new NettyClient(node); return client.start(); } catch (Exception e) { Log.error("connect to node {} error : {}", node.getId(), e.getMessage()); return false; } }
private void cacheNode(Node node, SocketChannel channel) { String name = "node-" + node.getId(); boolean exists = AttributeKey.exists(name); AttributeKey attributeKey; if (exists) { attributeKey = AttributeKey.valueOf(name); } else { attributeKey = AttributeKey.newInstance(name); } Attribute<Node> attribute = channel.attr(attributeKey); attribute.set(node); }
private boolean connectionNode(Node node) { node.setConnectStatus(NodeConnectStatusEnum.CONNECTING); node.setRegisterListener(() -> Log.debug("new node {} try connecting!", node.getId())); node.setConnectedListener(() -> nodeManager.nodeConnectSuccess(node)); node.setDisconnectListener(() -> { Log.info("-----------out node disconnect:" + node.getId()); nodeManager.nodeConnectDisconnect(node); }); return connectionManager.connection(node); }
private void sendResponse(BlockHashResponse response, Node fromNode) { BlocksHashMessage event = new BlocksHashMessage(); event.setMsgBody(response); Result result = messageBusService.sendToNode(event, fromNode, true); if (result.isFailed()) { BlockLog.debug("send block hashes to " + fromNode.getId() + " failed!"); } } }
private void sendNotFound(NulsDigestData hash, Node node) { NotFoundMessage message = new NotFoundMessage(); NotFound data = new NotFound(MessageDataType.BLOCKS, hash); message.setMsgBody(data); Result result = this.messageBusService.sendToNode(message, node, true); if (result.isFailed()) { Log.warn("send BLOCK NotFound failed:" + node.getId() + ", hash:" + hash); } }
private void sendNotFound(NulsDigestData hash, Node node) { NotFoundMessage message = new NotFoundMessage(); NotFound data = new NotFound(MessageDataType.BLOCKS, hash); message.setMsgBody(data); Result result = this.messageBusService.sendToNode(message, node, true); if (result.isFailed()) { Log.warn("send BLOCK NotFound failed:" + node.getId() + ", hash:" + hash); } }
public NodePo(Node node) { this.id = node.getId(); this.ip = node.getIp(); this.port = node.getPort(); this.lastTime = node.getLastTime(); this.lastFailTime = node.getLastFailTime(); this.failCount = node.getFailCount(); this.connectStatus = NodeConnectStatusEnum.UNCONNECT; this.status = node.getStatus(); }
private void sendNotFound(NulsDigestData hash, Node node) { NotFoundMessage message = new NotFoundMessage(); NotFound data = new NotFound(MessageDataType.BLOCK, hash); message.setMsgBody(data); Result result = this.messageBusService.sendToNode(message, node, true); if (result.isFailed()) { Log.warn("send BLOCK NotFound failed:" + node.getId() + ", hash:" + hash); } }
private void sendNotFound(Node node, NulsDigestData hash) { NotFoundMessage event = new NotFoundMessage(); NotFound data = new NotFound(MessageDataType.HASHES, hash); event.setMsgBody(data); Result result = this.messageBusService.sendToNode(event, node, true); if (result.isFailed()) { Log.warn("send not found failed:" + node.getId() + ", hash:" + hash); } }
private void sendBlock(Block block, Node fromNode) { BlockMessage blockMessage = new BlockMessage(); blockMessage.setMsgBody(block); Result result = this.messageBusService.sendToNode(blockMessage, fromNode, true); if (result.isFailed()) { Log.warn("send block failed:" + fromNode.getId() + ",height:" + block.getHeader().getHeight()); } } }
private void sendBlock(Block block, Node fromNode) { BlockMessage blockMessage = new BlockMessage(); blockMessage.setMsgBody(block); Result result = this.messageBusService.sendToNode(blockMessage, fromNode, true); if (result.isFailed()) { Log.warn("send block failed:" + fromNode.getId() + ",height:" + block.getHeader().getHeight()); } } }
private void sendBlock(Block block, Node fromNode) { BlockMessage blockMessage = new BlockMessage(); blockMessage.setMsgBody(block); Result result = this.messageBusService.sendToNode(blockMessage, fromNode, true); if (result.isFailed()) { Log.warn("send block failed:" + fromNode.getId() + ",height:" + block.getHeader().getHeight()); } } }
@Override public Result sendToNode(BaseMessage message, Node node, boolean aysn) { BroadcastResult result = networkService.sendToNode(message, node, aysn); if (!result.isSuccess()) { Log.error("send to node fail reason: " + result.getErrorCode().getMsg() + "::::" + node.getId()); } return new Result(result.isSuccess(), result.getErrorCode(), null); }
public static void toPojo(Node node, NodePo po) { po.setId(node.getId()); po.setIp(node.getIp()); po.setPort(node.getPort()); po.setLastTime(node.getLastTime()); po.setLastFailTime(node.getLastFailTime()); po.setFailCount(node.getFailCount()); po.setStatus(node.getStatus()); }
public static NodePo toPojo(Node node) { NodePo po = new NodePo(); po.setId(node.getId()); po.setIp(node.getIp()); po.setPort(node.getPort()); po.setLastTime(node.getLastTime()); po.setLastFailTime(node.getLastFailTime()); po.setFailCount(node.getFailCount()); po.setStatus(node.getStatus()); po.setConnectStatus(node.getConnectStatus()); return po; }