public JobSync(Guid jobId, ISyncWhen[] syncWheners) { SyncJobId = Guid.NewGuid(); JobId = jobId; _syncWheners = syncWheners; }
private void SetupSyncJob(ISyncWhen whenItem) { AttachCommonEvents(whenItem); TryStarting(whenItem); }
private void TryStarting(ISyncWhen whenItem) { try { whenItem.Start(); } catch (Exception ex) { OnError?.Invoke( new SenderInfo { SyncWhenName = whenItem.Name, SyncWhenType = whenItem.GetType(), SyncInfo = whenItem.SyncInfo }, new JobSyncException(whenItem.SyncInfo, "Problems starting up sync item", ex)); } }
private void AttachCommonEvents(ISyncWhen whenItem) { whenItem.OnRunStart += JobSyncOnRunStart; whenItem.OnRunComplete += JobSyncOnRunComplete; whenItem.OnError += JobSyncOnError; if ((whenItem as ISyncWhenStartup) != null) ((ISyncWhenStartup)whenItem).OnStartup += JobSyncOnStartup; }