public static WonMessage forwardReceivedNodeToNodeMessageAsNodeToNodeMessage(final URI newMessageUri, final WonMessage wonMessage,
final URI connectionURI, final URI needURI, final URI wonNodeUri,
final URI remoteConnectionURI, final URI remoteNeedURI, final URI remoteWonNodeUri) {
WonMessageBuilder builder = new WonMessageBuilder(newMessageUri)
.setWonMessageType(wonMessage.getMessageType())
.forward(wonMessage)
.setForwardedMessageURI(wonMessage.getMessageURI())
.setSenderNeedURI(needURI)
.setSenderURI(connectionURI)
.setSenderNodeURI(wonNodeUri)
.setSentTimestamp(System.currentTimeMillis())
.setReceiverURI(remoteConnectionURI)
.setReceiverNeedURI(remoteNeedURI)
.setReceiverNodeURI(remoteWonNodeUri)
.setIsRemoteResponseToMessageURI(wonMessage.getIsRemoteResponseToMessageURI())
.setIsResponseToMessageURI(wonMessage.getIsResponseToMessageURI())
.setIsResponseToMessageType(wonMessage.getIsResponseToMessageType())
.setWonMessageDirection(WonMessageDirection.FROM_SYSTEM);
return builder.build();
}