Files

45 lines
1.5 KiB
C#
Raw Permalink Normal View History

2026-08-27 10:57:58 -06:00
using System;
using System.Collections.Generic;
using System.Linq;
namespace Pulsar.Common.Messages
{
/// <summary>
/// Legacy TypeRegistry - no longer needed with MessagePack serialization.
/// Kept for compatibility during migration.
/// </summary>
public static class TypeRegistry
{
/// <summary>
/// Legacy method - no longer needed with MessagePack.
/// </summary>
/// <param name="parent">The parent type</param>
/// <param name="type">Type to be added</param>
public static void AddTypeToSerializer(Type parent, Type type)
{
// No-op: MessagePack handles polymorphism through custom resolvers
}
/// <summary>
/// Legacy method - no longer needed with MessagePack.
/// </summary>
/// <param name="parent">The parent type</param>
/// <param name="types">Types to add</param>
public static void AddTypesToSerializer(Type parent, params Type[] types)
{
// No-op: MessagePack handles polymorphism through custom resolvers
}
/// <summary>
/// Gets all types that implement the specified interface.
/// Still used by legacy code during migration.
/// </summary>
public static IEnumerable<Type> GetPacketTypes(Type type)
{
return AppDomain.CurrentDomain.GetAssemblies()
.SelectMany(s => s.GetTypes())
.Where(p => type.IsAssignableFrom(p) && !p.IsInterface);
}
}
}