From 610ae1c232889374b0707678c90c7819194b056f Mon Sep 17 00:00:00 2001 From: Thorsten Sommer Date: Thu, 17 Apr 2025 11:56:35 +0200 Subject: [PATCH] Refactor ApplyFilters to improve parameter clarity. --- app/MindWork AI Studio/Components/MSGComponentBase.cs | 9 +++++++-- app/MindWork AI Studio/Tools/MessageBus.cs | 10 ++++++++-- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/app/MindWork AI Studio/Components/MSGComponentBase.cs b/app/MindWork AI Studio/Components/MSGComponentBase.cs index a70a5257..1a463646 100644 --- a/app/MindWork AI Studio/Components/MSGComponentBase.cs +++ b/app/MindWork AI Studio/Components/MSGComponentBase.cs @@ -109,7 +109,12 @@ public abstract class MSGComponentBase : ComponentBase, IDisposable, IMessageBus return await this.MessageBus.SendMessageUseFirstResult(this, triggeredEvent, data); } - protected void ApplyFilters(ComponentBase[] components, Event[] events) + /// + /// Define for which components and events you want to receive messages. + /// + /// A list of components for which you want to receive messages. Use an empty list to receive messages from all components. + /// A list of events for which you want to receive messages. + protected void ApplyFilters(ComponentBase[] filterComponents, Event[] events) { // Append the color theme changed event to the list of events: var eventsList = new List(events) @@ -118,6 +123,6 @@ public abstract class MSGComponentBase : ComponentBase, IDisposable, IMessageBus Event.PLUGINS_RELOADED, }; - this.MessageBus.ApplyFilters(this, components, eventsList.ToArray()); + this.MessageBus.ApplyFilters(this, filterComponents, eventsList.ToArray()); } } \ No newline at end of file diff --git a/app/MindWork AI Studio/Tools/MessageBus.cs b/app/MindWork AI Studio/Tools/MessageBus.cs index 06a2dfd8..7840ce75 100644 --- a/app/MindWork AI Studio/Tools/MessageBus.cs +++ b/app/MindWork AI Studio/Tools/MessageBus.cs @@ -19,9 +19,15 @@ public sealed class MessageBus { } - public void ApplyFilters(IMessageBusReceiver receiver, ComponentBase[] components, Event[] events) + /// + /// Define for which components and events you want to receive messages. + /// + /// That's you, the receiver. + /// A list of components for which you want to receive messages. Use an empty list to receive messages from all components. + /// A list of events for which you want to receive messages. + public void ApplyFilters(IMessageBusReceiver receiver, ComponentBase[] filterComponents, Event[] events) { - this.componentFilters[receiver] = components; + this.componentFilters[receiver] = filterComponents; this.componentEvents[receiver] = events; }