/// <summary> /// Sends the specified endpoint. /// </summary> /// <param name="endpoint">The endpoint.</param> /// <param name="messages">The messages.</param> /// <returns></returns> public override IServiceBusCallback Send(IServiceBusEndpoint endpoint, params object[] messages) { if (messages == null || messages.Length == 0 || messages[0] == null) { throw new ArgumentNullException("messages", "Please include at least one message."); } if (endpoint == null) { endpoint = RhinoServiceBusTransport.EndpointByMessageType(messages[0].GetType()); } try { if (endpoint == null) { Bus.Send(RhinoServiceBusTransport.Wrap(messages)); } else if (endpoint != ServiceBus.SelfEndpoint) { Bus.Send(RhinoServiceBusTransport.Cast(endpoint), RhinoServiceBusTransport.Wrap(messages)); } else { Bus.SendToSelf(RhinoServiceBusTransport.Wrap(messages)); } } catch (Exception ex) { throw new ServiceBusMessageException(messages[0].GetType(), ex); } return(null); }
/// <summary> /// Sends the specified endpoint. /// </summary> /// <param name="endpoint">The endpoint.</param> /// <param name="messages">The messages.</param> /// <returns></returns> public virtual IServiceBusCallback Send(IServiceBusEndpoint endpoint, params object[] messages) { if (messages == null || messages.Length == 0 || messages[0] == null) { throw new ArgumentNullException("messages", "Please include at least one message."); } if (endpoint == null) { endpoint = RhinoServiceBusTransport.EndpointByMessageType(messages[0].GetType()); } try { if (endpoint == null) { Bus.Send(messages); } else { throw new NotSupportedException(); } } catch (Exception ex) { throw new ServiceBusMessageException(messages[0].GetType(), ex); } return(null); }