Exemple #1
0
        protected void RemoveNotFoundObjRefs(IObjRef[] objRefsToRemove)
        {
            hardRefObjRefsToLoad.RemoveAll(objRefsToRemove);
            objRefsToLoad.RemoveAll(objRefsToRemove);

            for (int a = childNodes.Count; a-- > 0;)
            {
                CacheDependencyNode childNode = childNodes[a];
                childNode.RemoveNotFoundObjRefs(objRefsToRemove);

                // Hold cache values as hard ref to prohibit cache loss due to GC
                IList <IObjRef> hardRefRequest = childNode.hardRefObjRefsToLoad.ToList();
                childNode.privilegedHardRefResult = childNode.rootCache.GetObjects(hardRefRequest, failInCacheHierarchyAndCacheValueResult);
            }
        }