protected override async ETTask Run(Session session, DBQueryRequest request, DBQueryResponse response, Action reply) { try { DBCacheComponent dbCacheComponent = Game.Scene.GetComponent <DBCacheComponent>(); ComponentWithId component = await dbCacheComponent.Get(request.CollectionName, request.Id); response.Component = component; if (request.NeedCache && component != null) { dbCacheComponent.AddToCache(component, request.CollectionName); } reply(); await ETTask.CompletedTask; } catch (Exception e) { ReplyError(response, e, reply); } }
protected override async void Run(Session session, DBQueryRequest message, Action <DBQueryResponse> reply) { DBQueryResponse response = new DBQueryResponse(); try { DBCacheComponent dbCacheComponent = Game.Scene.GetComponent <DBCacheComponent>(); ComponentWithId component = await dbCacheComponent.Get(message.CollectionName, message.Id); response.Component = component; if (message.NeedCache && component != null) { dbCacheComponent.AddToCache(component, message.CollectionName); } reply(response); } catch (Exception e) { ReplyError(response, e, reply); } }