public async Task SendMessageAsync(TMessage message) { PutRecordRequest requestRecord = new PutRecordRequest(); requestRecord.StreamName = streamName; requestRecord.Data = new MemoryStream(serializer.SerializeToArray(message)); requestRecord.PartitionKey = partitionKeyFunc(message); await kinesisClient.PutRecordAsync(requestRecord); }
public override void SendMessageToTopic <TContent>(string topicName, TContent messageContent, string correlationId = null) { try { using (var msg = ContextFactory.Instance.CreateMessage()) { msg.CorrelationId = correlationId; msg.DeliveryMode = MessageDeliveryMode.Persistent; msg.Destination = ContextFactory.Instance.CreateTopic(topicName); msg.SetBinaryAttachment((sbyte[])(Array)serializer.SerializeToArray(messageContent)); var returnCode = session.Send(msg); if (returnCode != ReturnCode.SOLCLIENT_OK) { throw new SendFailedException($"Response from Send Function = {returnCode}"); } } }catch (SolaceSystems.Solclient.Messaging.OperationErrorException ex) { log.Error(ex, $"Error sending a message. Error Info:{ex.ErrorInfo}"); throw; } }
public void SendMessageToTopic <TMessage>(string topicName, TMessage messageContent, string correlationId = null) { var client = new TopicClient(asbConnectionString, topicName); client.SendAsync(new Message(serializer.SerializeToArray(messageContent))).Wait(); }
public void SendMessageToTopic <TMessage>(string topicName, TMessage messageContent, string correlationId = null) { var model = rabbitMQ.CreateModel(); var props = model.CreateBasicProperties(); props.AppId = connectionDetails.ClientId; props.CorrelationId = correlationId ?? Guid.NewGuid().ToString(); props.Type = typeof(TMessage).Name; model.BasicPublish(new PublicationAddress(ExchangeType.Topic, topicName, ""), props, serializer.SerializeToArray(messageContent)); }