/// <summary> /// Starts process queue /// </summary> public void StartProcess() { try { this.RaiseProcessEvent(ProcessEventTypes.INFO, $"Data transfer process started."); this._IsRunning = true; if (OriginDatasetQueue.Count() > 0) { DataTransferModel nextProcess = OriginDatasetQueue.Dequeue(); switch (nextProcess.TransferMethod) { default: break; case "TRUNCATE_APPEND": TruncateAppendFeatureClass(nextProcess); break; case "COPY": CopyToSDEWorkspace(nextProcess); break; } } } catch { throw; } }
/// <summary> /// Adds a new data transfer object to the process list /// </summary> /// <param name="name">name of dt process</param> /// <param name="origName">name of origin dataset to be copied</param> /// <param name="origWorkspace">name of origin workspace</param> /// <param name="targetName">output target to copy</param> /// <param name="targetWorkspace">name of target workspace to copy to</param> /// <param name="transferMethod">method to use for data transfer operation</param> public void AddDTModel(string name, string origName, string origWorkspace, string targetName, string targetWorkspace, string transferMethod) { DataTransferModel dt = new DataTransferModel(); dt.Name = ""; dt.OriginName = origName; dt.OriginWorkspace = origWorkspace; dt.TargetName = targetName; dt.TargetWorkspace = targetWorkspace; dt.TransferMethod = transferMethod; OriginDatasetQueue.Enqueue(dt); }
/// <summary> /// Adds datasets to data transfer queue /// </summary> /// <param name="eDTModel">IEnumerable container of IDatasets</param> public void AddDTModel(DataTransferModel dtModels) { OriginDatasetQueue.Enqueue(dtModels); }