public async Task <FriendshipPayload> Load(string id)
        {
            Payload = await _cacheFriendShipPayload.GetOrAddAsync(id,
                                                                  async() => await _puppetService.FriendshipRawPayload(id),
                                                                  () => new DistributedCacheEntryOptions()
            {
                AbsoluteExpiration = DateTimeOffset.Now.AddSeconds(CacheConst.CacheGlobalExpirationTime)
            });

            return(Payload);
        }
        /// <summary>
        /// from json
        /// </summary>
        /// <param name="payload"></param>
        /// <returns></returns>
        public async Task <Friendship> FromJson(FriendshipPayload payload)
        {
            if (Logger.IsEnabled(LogLevel.Trace))
            {
                Logger.LogTrace($"fromJSON{JsonConvert.SerializeObject(payload)}");
            }
            await Puppet.SetFriendshipPayload(payload.Id, payload);

            var instance = WechatyInstance.Friendship.Load(payload.Id);
            await instance.Ready();

            return(instance);
        }
 protected override async Task <FriendshipPayload> FriendshipRawPayloadParser(FriendshipPayload rawPayload)
 {
     return(_ = rawPayload);
 }
Example #4
0
 protected abstract Task <FriendshipPayload> FriendshipRawPayloadParser(FriendshipPayload rawPayload);
Example #5
0
 public FriendshipPayload FriendshipRawPayloadParser(FriendshipPayload payload)
 {
     return(payload);
 }