public ServiceProcess Execute(string selectedUrIs, string referenceComponentUri) { if (string.IsNullOrEmpty(selectedUrIs)) { throw new ArgumentNullException("selectedUrIs"); } if (string.IsNullOrEmpty(referenceComponentUri)) { throw new ArgumentNullException("referenceComponentUri"); } selectedUrIs = selectedUrIs.Replace("[", ""); selectedUrIs = selectedUrIs.Replace("]", ""); selectedUrIs = selectedUrIs.Replace("\"", ""); CompSyncParameters arguments = new CompSyncParameters { SelectedUrIs = selectedUrIs.Split(','), ReferenceComponentUri =referenceComponentUri }; return ExecuteAsync(arguments); }
public ServiceProcess Execute(string selectedUrIs, string referenceComponentUri) { if (string.IsNullOrEmpty(selectedUrIs)) { throw new ArgumentNullException("selectedUrIs"); } if (string.IsNullOrEmpty(referenceComponentUri)) { throw new ArgumentNullException("referenceComponentUri"); } selectedUrIs = selectedUrIs.Replace("[", ""); selectedUrIs = selectedUrIs.Replace("]", ""); selectedUrIs = selectedUrIs.Replace("\"", ""); CompSyncParameters arguments = new CompSyncParameters { SelectedUrIs = selectedUrIs.Split(','), ReferenceComponentUri = referenceComponentUri }; return(ExecuteAsync(arguments)); }
public override void Process(ServiceProcess process, object arguments) { CompSyncParameters parameters = (CompSyncParameters)arguments; if (parameters.SelectedUrIs == null) { throw new BaseServiceException(string.Format(CultureInfo.InvariantCulture, "List '{0}' is null.", parameters.SelectedUrIs)); } var client = Client.GetCoreService(); try { int i = 0; ComponentData ReferenceComponentData = client.Read(parameters.ReferenceComponentUri, new ReadOptions()) as ComponentData; foreach (string uri in parameters.SelectedUrIs) { ComponentData currentComponent = client.Read(uri, new ReadOptions()) as ComponentData; process.SetStatus("Synchronizing: " + currentComponent.Title); _processedItems.Add(uri); process.SetCompletePercentage(++i * 100 / parameters.SelectedUrIs.Length); System.Threading.Thread.Sleep(500); // Temp, until it actually does something :) } process.SetStatus("Synchronization succesfully finished!"); process.Complete(); _processedItems = new ArrayList(); } finally { if (client != null) { client.Close(); } } }