com.wallstop-studios.dxmessaging 3.2.0 → 3.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +40 -0
- package/Editor/Analyzers/DxMessagingConsoleHarvester.cs +8 -8
- package/Editor/CustomEditors/MessageAwareComponentFallbackEditor.cs +171 -13
- package/Editor/CustomEditors/MessageAwareComponentInspectorOverlay.cs +391 -96
- package/Editor/CustomEditors/MessageAwareComponentInspectorView.cs +279 -0
- package/Editor/CustomEditors/MessageAwareComponentInspectorView.cs.meta +11 -0
- package/Editor/DxMessagingEditorPalette.cs +66 -0
- package/Editor/DxMessagingEditorPalette.cs.meta +11 -0
- package/Editor/DxMessagingEditorTheme.cs +200 -0
- package/Editor/DxMessagingEditorTheme.cs.meta +11 -0
- package/Editor/Icons/dxmessaging-icon-256.png +0 -0
- package/Editor/Icons/dxmessaging-icon-256.png.meta +156 -0
- package/Editor/Icons/dxmessaging-icon-32.png +0 -0
- package/Editor/Icons/dxmessaging-icon-32.png.meta +156 -0
- package/Editor/Icons/dxmessaging-icon-48.png +0 -0
- package/Editor/Icons/dxmessaging-icon-48.png.meta +156 -0
- package/Editor/Icons.meta +8 -0
- package/Editor/Settings/DxMessagingSettingsProvider.cs +368 -33
- package/Editor/Testing/MessagingComponentEditorHarness.cs +11 -4
- package/Editor/Theme/DxMessagingTheme.uss +255 -0
- package/Editor/Theme/DxMessagingTheme.uss.meta +11 -0
- package/Editor/Theme/DxTokens.uss +90 -0
- package/Editor/Theme/DxTokens.uss.meta +11 -0
- package/Editor/Theme.meta +8 -0
- package/Editor/Windows/DxMessagingFlowGraphWindow.cs +5513 -0
- package/Editor/Windows/DxMessagingFlowGraphWindow.cs.meta +11 -0
- package/Editor/Windows/DxMessagingMessageMonitorWindow.cs +2288 -0
- package/Editor/Windows/DxMessagingMessageMonitorWindow.cs.meta +11 -0
- package/Editor/Windows.meta +8 -0
- package/README.md +84 -35
- package/Runtime/AssemblyInfo.cs +1 -0
- package/Runtime/Core/Diagnostics/MessageEmissionData.cs +29 -1
- package/Runtime/Core/Extensions/MessageExtensions.cs +4 -5
- package/Runtime/Core/Helper/MessageCache.cs +56 -23
- package/Runtime/Core/Internal/FlatDispatch.cs +32 -0
- package/Runtime/Core/Internal/TypedSlots.cs +3 -7
- package/Runtime/Core/MessageBus/MessageBus.cs +577 -142
- package/Runtime/Core/MessageBus/RegistrationLog.cs +25 -12
- package/Runtime/Core/MessageHandler.cs +774 -786
- package/Runtime/Core/MessageRegistrationHandle.cs +19 -5
- package/Runtime/Core/MessageRegistrationToken.cs +1080 -520
- package/Samples~/Diagnostics Tooling Exerciser/DiagnosticsToolingExerciser.cs +173 -0
- package/Samples~/Diagnostics Tooling Exerciser/DiagnosticsToolingExerciser.cs.meta +11 -0
- package/Samples~/Diagnostics Tooling Exerciser/DiagnosticsToolingExerciser.unity +424 -0
- package/Samples~/Diagnostics Tooling Exerciser/DiagnosticsToolingExerciser.unity.meta +7 -0
- package/Samples~/Diagnostics Tooling Exerciser/DiagnosticsToolingReceiver.cs +185 -0
- package/Samples~/Diagnostics Tooling Exerciser/DiagnosticsToolingReceiver.cs.meta +11 -0
- package/Samples~/Diagnostics Tooling Exerciser/Messages.cs +46 -0
- package/Samples~/Diagnostics Tooling Exerciser/Messages.cs.meta +11 -0
- package/Samples~/Diagnostics Tooling Exerciser/README.md +53 -0
- package/Samples~/Diagnostics Tooling Exerciser/README.md.meta +7 -0
- package/Samples~/Diagnostics Tooling Exerciser/WallstopStudios.DxMessaging.DiagnosticsToolingExerciser.Sample.asmdef +13 -0
- package/Samples~/Diagnostics Tooling Exerciser/WallstopStudios.DxMessaging.DiagnosticsToolingExerciser.Sample.asmdef.meta +7 -0
- package/Samples~/Diagnostics Tooling Exerciser.meta +8 -0
- package/Samples~/Mini Combat/README.md +1 -1
- package/Samples~/Mini Combat/Walkthrough.md +3 -3
- package/docs/images/DxMessaging-banner.svg +79 -0
- package/docs/images/DxMessaging-banner.svg.meta +53 -0
- package/docs/images.meta +8 -0
- package/docs.meta +8 -0
- package/package.json +13 -4
|
@@ -14,9 +14,10 @@ namespace DxMessaging.Core.MessageBus
|
|
|
14
14
|
/// </remarks>
|
|
15
15
|
public sealed class RegistrationLog
|
|
16
16
|
{
|
|
17
|
-
public IReadOnlyList<MessagingRegistration> Registrations =>
|
|
17
|
+
public IReadOnlyList<MessagingRegistration> Registrations =>
|
|
18
|
+
_finalizedRegistrations ??= new List<MessagingRegistration>();
|
|
18
19
|
|
|
19
|
-
private
|
|
20
|
+
private List<MessagingRegistration> _finalizedRegistrations;
|
|
20
21
|
|
|
21
22
|
public bool Enabled
|
|
22
23
|
{
|
|
@@ -35,7 +36,6 @@ namespace DxMessaging.Core.MessageBus
|
|
|
35
36
|
public RegistrationLog(bool enabled = false)
|
|
36
37
|
{
|
|
37
38
|
_enabled = enabled;
|
|
38
|
-
_finalizedRegistrations = new List<MessagingRegistration>();
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
/// <summary>
|
|
@@ -48,7 +48,7 @@ namespace DxMessaging.Core.MessageBus
|
|
|
48
48
|
{
|
|
49
49
|
return;
|
|
50
50
|
}
|
|
51
|
-
_finalizedRegistrations.Add(registration);
|
|
51
|
+
(_finalizedRegistrations ??= new List<MessagingRegistration>()).Add(registration);
|
|
52
52
|
}
|
|
53
53
|
|
|
54
54
|
/// <summary>
|
|
@@ -58,9 +58,15 @@ namespace DxMessaging.Core.MessageBus
|
|
|
58
58
|
/// <returns>All registrations for the provided InstanceId.</returns>
|
|
59
59
|
public IEnumerable<MessagingRegistration> GetRegistrations(InstanceId instanceId)
|
|
60
60
|
{
|
|
61
|
-
|
|
61
|
+
List<MessagingRegistration> registrations = _finalizedRegistrations;
|
|
62
|
+
if (registrations == null)
|
|
62
63
|
{
|
|
63
|
-
|
|
64
|
+
yield break;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
for (int i = 0; i < registrations.Count; ++i)
|
|
68
|
+
{
|
|
69
|
+
MessagingRegistration registration = registrations[i];
|
|
64
70
|
if (registration.id == instanceId)
|
|
65
71
|
{
|
|
66
72
|
yield return registration;
|
|
@@ -75,7 +81,8 @@ namespace DxMessaging.Core.MessageBus
|
|
|
75
81
|
/// <returns>The string representing all logged MessagingRegistrations.</returns>
|
|
76
82
|
public string ToString(Func<MessagingRegistration, string> serializer)
|
|
77
83
|
{
|
|
78
|
-
|
|
84
|
+
List<MessagingRegistration> finalizedRegistrations = _finalizedRegistrations;
|
|
85
|
+
if (finalizedRegistrations == null || finalizedRegistrations.Count == 0)
|
|
79
86
|
{
|
|
80
87
|
return "[]";
|
|
81
88
|
}
|
|
@@ -84,13 +91,13 @@ namespace DxMessaging.Core.MessageBus
|
|
|
84
91
|
|
|
85
92
|
StringBuilder registrations = new();
|
|
86
93
|
_ = registrations.Append('[');
|
|
87
|
-
for (int i = 0; i <
|
|
94
|
+
for (int i = 0; i < finalizedRegistrations.Count; ++i)
|
|
88
95
|
{
|
|
89
96
|
if (0 < i)
|
|
90
97
|
{
|
|
91
98
|
_ = registrations.Append(", ");
|
|
92
99
|
}
|
|
93
|
-
MessagingRegistration finalizedRegistration =
|
|
100
|
+
MessagingRegistration finalizedRegistration = finalizedRegistrations[i];
|
|
94
101
|
string prettyFinalizedRegistration = serializer(finalizedRegistration);
|
|
95
102
|
_ = registrations.Append(prettyFinalizedRegistration);
|
|
96
103
|
}
|
|
@@ -114,14 +121,20 @@ namespace DxMessaging.Core.MessageBus
|
|
|
114
121
|
/// <returns>Number of MessagingRegistrations removed.</returns>
|
|
115
122
|
public int Clear(Predicate<MessagingRegistration> shouldRemove = null)
|
|
116
123
|
{
|
|
124
|
+
List<MessagingRegistration> finalizedRegistrations = _finalizedRegistrations;
|
|
125
|
+
if (finalizedRegistrations == null)
|
|
126
|
+
{
|
|
127
|
+
return 0;
|
|
128
|
+
}
|
|
129
|
+
|
|
117
130
|
if (shouldRemove == null)
|
|
118
131
|
{
|
|
119
|
-
int currentCount =
|
|
120
|
-
|
|
132
|
+
int currentCount = finalizedRegistrations.Count;
|
|
133
|
+
finalizedRegistrations.Clear();
|
|
121
134
|
return currentCount;
|
|
122
135
|
}
|
|
123
136
|
|
|
124
|
-
return
|
|
137
|
+
return finalizedRegistrations.RemoveAll(shouldRemove);
|
|
125
138
|
}
|
|
126
139
|
}
|
|
127
140
|
}
|