PettingZoo/PettingZoo.Core/Connection/ISubscriber.cs

30 lines
680 B
C#

using System;
using System.Collections.Generic;
namespace PettingZoo.Core.Connection
{
public interface ISubscriber : IDisposable
{
string? QueueName { get; }
string? Exchange {get; }
string? RoutingKey { get; }
event EventHandler<MessageReceivedEventArgs>? MessageReceived;
IEnumerable<ReceivedMessageInfo> GetInitialMessages();
void Start();
}
public class MessageReceivedEventArgs : EventArgs
{
public ReceivedMessageInfo MessageInfo { get; }
public MessageReceivedEventArgs(ReceivedMessageInfo messageInfo)
{
MessageInfo = messageInfo;
}
}
}