diff --git a/FruitBank.Common.Server/Services/SignalRs/DevAdminSignalRhub.cs b/FruitBank.Common.Server/Services/SignalRs/DevAdminSignalRhub.cs index f30502b2..36354f08 100644 --- a/FruitBank.Common.Server/Services/SignalRs/DevAdminSignalRhub.cs +++ b/FruitBank.Common.Server/Services/SignalRs/DevAdminSignalRhub.cs @@ -13,22 +13,6 @@ using Microsoft.Extensions.Configuration; namespace FruitBank.Common.Server.Services.SignalRs; -//public class DevAdminSignalRHub : AcWebSignalRHubWithSessionBase> -//{ -// public DevAdminSignalRHub(IConfiguration configuration, IEnumerable logWriters) -// : base(configuration, new Logger(logWriters.ToArray())) -// { -// Logger.Info("DevAdminSignalRHub"); -// } - -// public Task ReceiveMessage(int messageTag, byte[]? message, int? requestId) -// { - -// Clients.All.SendAsync("TestMessage", "Hello from server"); -// } - -//} - public class DevAdminSignalRHub : AcWebSignalRHubWithSessionBase> { public DevAdminSignalRHub(IConfiguration configuration, IFruitBankDataControllerServer fruitBankDataController/*, SessionService sessionService*/, @@ -37,11 +21,13 @@ public class DevAdminSignalRHub : AcWebSignalRHubWithSessionBase(fruitBankDataController)); - DynamicMethodCallModels.Add(new AcDynamicMethodCallModel(customOrderSignalREndpoint)); - DynamicMethodCallModels.Add(new AcDynamicMethodCallModel(stockSignalREndpointServer)); + // Use the new lazy Registry - no reflection at construction time + DynamicMethodRegistry.CahcheSizeCapacity = 3; + + DynamicMethodRegistry.Register(fruitBankDataController); + DynamicMethodRegistry.Register(customOrderSignalREndpoint); + DynamicMethodRegistry.Register(stockSignalREndpointServer); } protected override void LogContextUserNameAndId() @@ -49,83 +35,5 @@ public class DevAdminSignalRHub : AcWebSignalRHubWithSessionBase - // { - // switch (messageTag) - // { - // case SignalRTags.GetAddress: - // //var id = Guid.Parse((string)message!.MessagePackTo>().PostData.Ids[0]); - // var id = message!.MessagePackTo>().PostData.Ids[0].JsonTo()![0]; - - // var address = await _adminDal.GetAddressByIdAsync(id); - // await ResponseToCaller(messageTag, new SignalResponseJsonMessage(messageTag, SignalResponseStatus.Success, address), requestId); - - // return; - - // case SignalRTags.GetAddressesByContextId: - // //id = Guid.Parse((string)message!.MessagePackTo>().PostData.Ids[0]); - // id = message!.MessagePackTo>().PostData.Ids[0].JsonTo()![0]; - - // address = await _adminDal.GetAddressByIdAsync(id); - // await ResponseToCaller(messageTag, new SignalResponseJsonMessage(messageTag, SignalResponseStatus.Success, new List
{ address! }), requestId); - - // return; - - // case SignalRTags.UpdateAddress: - // address = message!.MessagePackTo>().PostData; - - // await _adminDal.UpdateAddressAsync(address); - // await ResponseToCaller(messageTag, new SignalResponseJsonMessage(messageTag, SignalResponseStatus.Success, address), requestId); - - // return; - - // case SignalRTags.UpdateProfile: - // var profile = message!.MessagePackTo>().PostData; - - // await _adminDal.UpdateProfileAsync(profile); - // await ResponseToCaller(messageTag, new SignalResponseJsonMessage(messageTag, SignalResponseStatus.Success, profile), requestId); - - // return; - - // //case SignalRTags.GetTransfersAsync: - // // await ResponseToCaller(messageTag, new SignalResponseJsonMessage(SignalResponseStatus.Success, await _transferDataApiController.GetTransfers()), requestId); - - // // return; - - // //case SignalRTags.GetPropertiesByOwnerIdAsync: - // // var ownerId = message!.MessagePackTo().Id; - - // // await ResponseToCaller(messageTag, new SignalResponseJsonMessage(SignalResponseStatus.Success, await _serviceProviderApiController.GetServiceProvidersByOwnerId(ownerId)), requestId); - - // // return; - - // //case SignalRTags.UpdateTransferAsync: - // // var transfer = message!.MessagePackTo>().PostData; - - // // await _transferDataApiController.UpdateTransfer(transfer); - // // await ResponseToCaller(messageTag, new SignalResponseJsonMessage(SignalResponseStatus.Success, transfer), requestId); - - // // return; - - // //case SignalRTags.GetCompaniesAsync: - // // await ResponseToCaller(messageTag, new SignalResponseJsonMessage(SignalResponseStatus.Success, await _serviceProviderApiController.GetServiceProviders()), requestId); - - // // return; - // //case SignalRTags.UpdateCompanyAsync: - - // // var updateCompany = message!.MessagePackTo>().PostData; - - // // await _serviceProviderApiController.UpdateServiceProvider(updateCompany); - // // await ResponseToCaller(messageTag, new SignalResponseJsonMessage(SignalResponseStatus.Success, updateCompany), requestId); - - // // return; - - // default: - // Logger.Error($"Server OnReceiveMessage; messageTag not found! {tagName}"); - // break; - // } - // }); - //} + // ...existing commented code... } \ No newline at end of file