/// <summary> /// Builds an IMessage using MethodReturn. /// </summary> /// <param name="methodReturn">Servers return message</param> /// <param name="callMessage">Method an parameters</param> /// <returns>The result of the Message</returns> protected IMessage ToMessage(IMethodResult methodReturn, IMethodCallMessage callMessage) { Logger.Info("Convert method call to String method and send it to the OpenEngSB"); switch (methodReturn.Type) { case ReturnType.Exception: { return(new ReturnMessage(new BridgeException("Received an Excetion from the bridge", new OpenEngSBException(methodReturn.Arg.ToString(), new OpenEngSBException(methodReturn.ToString()))), callMessage)); } case ReturnType.Void: case ReturnType.Object: { return(new ReturnMessage(methodReturn.Arg, null, 0, null, callMessage)); } default: { return(null); } } }