Files
DP44/docs/ai/Common/DTS.Common/Events/Groups/GroupChannelList.md
2026-04-17 14:55:32 -04:00

3.5 KiB

source_files, generated_at, model, schema_version, sha256
source_files generated_at model schema_version sha256
Common/DTS.Common/Events/Groups/GroupChannelList/GroupChannelDeleteRequestEvent.cs
Common/DTS.Common/Events/Groups/GroupChannelList/GroupChannelsChangedEvent.cs
Common/DTS.Common/Events/Groups/GroupChannelList/GroupUpdatedEvent.cs
2026-04-17T16:36:42.587532+00:00 zai-org/GLM-5-FP8 1 9096e4545f2ae1d9

Documentation: DTS.Common.Events.Groups.GroupChannelList

1. Purpose

This module defines three event types used for inter-component communication within the group channel management subsystem. It leverages the Prism.Events pub/sub mechanism to enable loosely-coupled messaging between components that manage group channels. The events facilitate deletion requests, channel list change notifications, and group update status propagation.

2. Public Interface

GroupChannelDeleteRequestEvent

Signature: public class GroupChannelDeleteRequestEvent : PubSubEvent<GroupChannelDeleteRequestEventArgs>

An event used to request deletion of a group channel. Publishers signal intent to delete; subscribers handle the actual deletion logic.


GroupChannelDeleteRequestEventArgs

Signature: public class GroupChannelDeleteRequestEventArgs

Property Type Description
Page object The page/context initiating the delete request
Channel IGroupChannel The channel targeted for deletion

Constructor: GroupChannelDeleteRequestEventArgs(object page, IGroupChannel channel)


GroupChannelsChangedEvent

Signature: public class GroupChannelsChangedEvent : PubSubEvent<GroupChannelsChangedEventArgs>

An event published when the collection of channels associated with a group has changed.


GroupChannelsChangedEventArgs

Signature: public class GroupChannelsChangedEventArgs

Property Type Description
Group object The group whose channels changed
ChannelCount int The updated count of channels in the group

Constructor: GroupChannelsChangedEventArgs(object group, int channelCount)


GroupUpdatedEvent

Signature: public class GroupUpdatedEvent : PubSubEvent<GroupUpdatedEventArgs>

An event published when a group has been updated, with specific status indicating the type of update.


GroupUpdatedEventArgs

Signature: public class GroupUpdatedEventArgs

Property Type Description
Page object The page/context where the update occurred
UpdateStatus Status Enum indicating what type of update occurred

Constructor: GroupUpdatedEventArgs(object page, Status status)

Nested Enum:

public enum Status
{
    ChannelsInserted,
    AssignmentsMade
}

3. Invariants

  • All event argument classes have immutable properties (read-only, set only via constructor).
  • GroupChannelDeleteRequestEventArgs.Channel must be a valid IGroupChannel implementation instance.
  • GroupChannelsChangedEventArgs.ChannelCount is an int; the source does not specify whether negative values are valid or prevented.
  • GroupUpdatedEventArgs.UpdateStatus is constrained to the defined Status enum values (ChannelsInserted, AssignmentsMade).
  • All Page and Group properties are typed as object, allowing any reference type; no type constraints are enforced at compile time.

4. Dependencies

This module depends on:

  • Prism.Events — Provides PubSubEvent<T> base class for all three events.
  • `DTS.Common