protected override IGetOperationResult PerformTryGet(string key, out ulong cas, out object value) { string str = base.KeyTransformer.Transform(key); IMemcachedNode startNode = base.Pool.Locate(str); IGetOperationResult source = base.GetOperationResultFactory.Create(); if (startNode != null) { IGetOperation op = base.Pool.OperationFactory.Get(str); IOperationResult result2 = this.ExecuteWithRedirect(startNode, op); if (result2.Success) { source.Value = value = op.Result.Data; // base.Transcoder.Deserialize(op.Result); source.Cas = cas = op.CasValue; if (base.PerformanceMonitor != null) { base.PerformanceMonitor.Get(1, true); } source.Pass(null); return(source); } value = null; cas = 0L; result2.Combine(source); return(source); } value = null; cas = 0L; if (base.PerformanceMonitor != null) { base.PerformanceMonitor.Get(1, false); } source.Fail("Unable to locate node", null); return(source); }