using System; using System.Collections.Generic; using System.Threading; using Luticate2.Utils.Dbo; using Luticate2.Utils.Dbo.Basic; using Luticate2.Utils.Dbo.Result; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.SignalR.Infrastructure; namespace Luticate2.Utils.Controllers { public abstract class LuController : Controller { protected IConnectionManager ConnectionManager { get; set; } protected IDictionary LuItems => HttpContext.GetLuItems(); protected LuApiWrapperDbo Handle(LuResult result) { if (result) { return new LuApiWrapperDbo { code = 200, data = result.Data, message = null, Version = LuUtilsExtensions.Options.Version }; } throw new LuResultException(result.To()); } protected LuApiWrapperDbo> HandleBoxed(LuResult result) { return Handle(result.To(arg => new LuBoxedValueDbo { Value = arg })); } } }