private bool IsOnline(ISubmissionWorker submissionWorker) { try { var result = this.http.Get($"{submissionWorker.Location}/health?p433w0rd=h34lth-m0n1t0r1ng"); return(result == "Healthy"); } catch { return(false); } }
public SubmissionProcessor( string name, IDependencyContainer dependencyContainer, ConcurrentQueue <TSubmission> submissionsForProcessing, object sharedLockObject, ISubmissionsFilteringService submissionsFilteringService, ISubmissionWorker submissionWorker) { this.Name = name; this.Logger = LogManager.GetLogger(typeof(SubmissionProcessor <TSubmission>)); this.Logger.Info($"{nameof(SubmissionProcessor<TSubmission>)} initializing..."); this.stopping = false; this.dependencyContainer = dependencyContainer; this.submissionsForProcessing = submissionsForProcessing; this.sharedLockObject = sharedLockObject; this.submissionsFilteringService = submissionsFilteringService; this.SubmissionWorker = submissionWorker; this.Logger.Info($"{nameof(SubmissionProcessor<TSubmission>)} initialized."); }
protected virtual bool CanProcessSubmissionInternal(IOjsSubmission submission, ISubmissionWorker submissionWorker) => true;
public bool CanProcessSubmission(IOjsSubmission submission, ISubmissionWorker submissionWorker) => submission != null && !this.IsDisabledStrategy(submission) && this.IsEnabledStrategy(submission) && this.CanProcessSubmissionInternal(submission, submissionWorker);
protected override bool CanProcessSubmissionInternal(IOjsSubmission submission, ISubmissionWorker submissionWorker) => this.IsOnline(submissionWorker);