/// <summary> /// Tidy-up the state after a transfer has been completed or when an /// error has occurred. /// </summary> private void GoIdle() { Phase1Payload = null; UploadTree = null; Task = MetaDataTask.None; Status = MetaDataManagerStatus.Idle; CommitIDSet.Clear(); WantedCommitID = 0; Share.NotifyIfKfsIdle(); }
/// <summary> /// Queue a meta-data operation for execution. /// </summary> public void QueueOperation(KfsPhase1Payload payload, SortedDictionary<UInt64, KfsFileUpload> uploadTree, MetaDataTask task) { Debug.Assert(Status == MetaDataManagerStatus.Idle); Phase1Payload = payload; if (uploadTree == null) UploadTree = new SortedDictionary<UInt64, KfsFileUpload>(); else UploadTree = uploadTree; Task = task; Status = MetaDataManagerStatus.Queued; }