/// <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);
 }
Example #2
0
 /// <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);
 }