Example #1
0
        /// <summary>Notifies that branch was created externally.</summary>
        /// <param name="branchData">Created branch data.</param>
        /// <returns>Created branch.</returns>
        internal Branch NotifyCreated(BranchData branchData)
        {
            var branch = ObjectFactories.CreateBranch(Repository, branchData);

            AddObject(branch);
            return(branch);
        }
Example #2
0
 /// <summary>Perform initial load of branches.</summary>
 /// <param name="branchDataList">List of branch data containers.</param>
 internal void Load(IEnumerable <BranchData> branchDataList)
 {
     ObjectStorage.Clear();
     if (branchDataList != null)
     {
         foreach (var branchData in branchDataList)
         {
             AddObject(ObjectFactories.CreateBranch(Repository, branchData));
         }
     }
 }
Example #3
0
 /// <summary>Updates branch cache.</summary>
 /// <param name="branches">Actual branch data.</param>
 private void RefreshInternal(IEnumerable <BranchData> branches)
 {
     lock (SyncRoot)
     {
         CacheUpdater.UpdateObjectDictionary(
             ObjectStorage,
             null,
             null,
             branches,
             branchData => ObjectFactories.CreateBranch(Repository, branchData),
             ObjectFactories.UpdateBranch,
             InvokeObjectAdded,
             InvokeObjectRemoved,
             true);
     }
 }