Beispiel #1
0
 /// <summary>
 /// Reads all SordType objects from IndexServer and update the cache.
 /// </summary>
 protected override void ProtectedLoadAllObjectsUnsync()
 {
     SordType[] sordTypes = ix.checkoutSordTypes(null, readMembersZVal, LockC.NO);
     Items              = sordTypes;
     itemArrayFolders   = null;
     itemArrayDocuments = null;
     imageListsValue    = null;
 }
Beispiel #2
0
        /// <summary>
        /// Clear cache.
        /// </summary>
        public override void Invalidate()
        {
            rwl.AcquireWriterLock(Timeout.Infinite);

            base.Invalidate();
            try
            {
                itemArrayFolders   = null;
                itemArrayDocuments = null;
                imageListsValue    = null;
            }
            finally
            {
                rwl.ReleaseWriterLock();
            }
        }
Beispiel #3
0
        /// <summary>
        /// Adds or replaces SordType objects in the cache.
        /// </summary>
        /// <param name="ts">Array of SordType objects</param>
        internal override void AddItems(SordType[] ts)
        {
            rwl.AcquireWriterLock(Timeout.Infinite);
            try
            {
                itemArrayFolders   = null;
                itemArrayDocuments = null;
                imageListsValue    = null;

                foreach (SordType sordType in ts)
                {
                    ProtectedAddUnsync(sordType);
                }
            }
            finally
            {
                rwl.ReleaseWriterLock();
            }
        }