コード例 #1
0
 public ServiceProcess ExecuteAsync(object arguments)
 {
     ServiceProcess newProcess = new ServiceProcess();
     ServiceProcessHelper storedProcess = new ServiceProcessHelper(newProcess);
     OperationContext.Current.InstanceContext.Extensions.Add(storedProcess);
     ExecuteData executeData = new ExecuteData { Process = storedProcess.Process, Arguments = arguments };
     ThreadPool.QueueUserWorkItem(WorkerThread, executeData);
     return newProcess;
 }
コード例 #2
0
 public override void Process(ServiceProcess process, object arguments)
 {
     DecommissionParameters parameters = (DecommissionParameters)arguments;
     using (var coreService = Client.GetCoreService())
     {
         process.SetCompletePercentage(25);
         try
         {
             coreService.DecommissionPublicationTarget(parameters.ItemUri);
             process.Complete();
         }
         catch (Exception e)
         {
             process.SetStatus(e.Message);
             process.Failed = true;
         }
     }
 }
コード例 #3
0
 public ServiceProcessHelper(ServiceProcess process)
 {
     Process = process;
 }
コード例 #4
0
 public abstract void Process(ServiceProcess process, object arguments);