Initial commit
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
using RobotNet.VDA5050.InstantAction;
|
||||
|
||||
namespace RobotNet10.RobotApp.Events.Events;
|
||||
|
||||
public class InstantActionChangedEvent : EventArgs
|
||||
{
|
||||
public InstantActionsMsg InstantActionMessage { get; set; } = new();
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
using RobotNet.VDA5050.Order;
|
||||
|
||||
namespace RobotNet10.RobotApp.Events.Events;
|
||||
|
||||
public class OrderChangedEvent : EventArgs
|
||||
{
|
||||
public OrderMsg OrderMessage { get; set; } = new();
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
using RobotNet.VDA5050.InstantAction;
|
||||
using RobotNet.VDA5050.Order;
|
||||
using RobotNet10.RobotApp.Events.Events;
|
||||
|
||||
namespace RobotNet10.RobotApp.Events;
|
||||
|
||||
/// <summary>
|
||||
/// In-memory event bus for VDA5050 robot messages and domain events
|
||||
/// </summary>
|
||||
public interface IRobotEventBus
|
||||
{
|
||||
// VDA5050 Events
|
||||
event EventHandler<OrderChangedEvent>? OrderMessageReceived;
|
||||
event EventHandler<InstantActionChangedEvent>? InstantActionReceived;
|
||||
|
||||
// VDA5050 Event Publishers
|
||||
void PublishOrderMessageReceived(OrderMsg orderMsg);
|
||||
void PublishInstantActionMessageReceived(InstantActionsMsg instantActionMsg);
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
using RobotNet.VDA5050.InstantAction;
|
||||
using RobotNet.VDA5050.Order;
|
||||
using RobotNet10.RobotApp.Events;
|
||||
using RobotNet10.RobotApp.Events.Events;
|
||||
|
||||
namespace RobotNet10.FleetManager.Events;
|
||||
|
||||
/// <summary>
|
||||
/// In-memory event bus implementation for VDA5050 robot messages
|
||||
/// </summary>
|
||||
public class RobotEventBus : IRobotEventBus
|
||||
{
|
||||
public event EventHandler<OrderChangedEvent>? OrderMessageReceived;
|
||||
public event EventHandler<InstantActionChangedEvent>? InstantActionReceived;
|
||||
|
||||
public void PublishInstantActionMessageReceived(InstantActionsMsg instantActionMsg)
|
||||
{
|
||||
InstantActionReceived?.Invoke(this, new InstantActionChangedEvent {InstantActionMessage = instantActionMsg });
|
||||
}
|
||||
|
||||
public void PublishOrderMessageReceived(OrderMsg orderMsg)
|
||||
{
|
||||
OrderMessageReceived?.Invoke(this, new OrderChangedEvent {OrderMessage = orderMsg });
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user