protected override IGetOperationResult CreateResult(BinaryResponse response) { var retval = new GetOperationResult(); if (response == null) { return(retval.NotFound(this)); } if (response.StatusCode == 0) { var flags = NetworkOrderConverter.DecodeUInt32(response.Extra.Array, 0); retval.Value = new CacheItem((uint)flags, response.Data.Clone()); } return(retval.WithResponse(response)); }
protected override IGetOperationResult CreateResult(BinaryResponse response) { var retval = new GetOperationResult(); if (response == null) { return(retval.NotFound(this)); } if (response.StatusCode == 0) { var flags = NetworkOrderConverter.DecodeInt32(response.Extra.Array, 0); // HACK var copy = new PooledSegment(Allocator, response.Data.Count); Buffer.BlockCopy(response.Data.Array, response.Data.Offset, copy.Array, 0, copy.Count); retval.Value = new CacheItem((uint)flags, copy); } return(retval.WithResponse(response)); }