public static bool CanSend(SampleRequest request) { if (request.EmailAddress.Contains("blocked")) { return(false); } return(true); }
public static bool CheckIfExist(SampleRequest request) { return(requestStore.Any(r => r.Id == request.Id)); }
public static void AddToStore(SampleRequest request) { requestStore.Add(request); }
public static void Send(SampleRequest request) { }
static void Main(string[] args) { // --- First Request var firstRequest = new SampleRequest() { Id = 1, FirstName = "abcd", LastName = "azxsdf", EmailAddress = "*****@*****.**" }; var firstRequestStatus = new SampleRequestHandler(firstRequest) .Validate() .Persist() .SendEmail(); PrintStatus(firstRequestStatus); // --- Second request var secondRequest = new SampleRequest() { Id = 2, FirstName = "abrakadabra", EmailAddress = "*****@*****.**" }; var secondRequestStatus = new SampleRequestHandler(secondRequest) .Validate() .Persist() .SendEmail(); PrintStatus(secondRequestStatus); // --- Third request var thirdRequest = new SampleRequest() { Id = 3, EmailAddress = "*****@*****.**" }; var thirdRequestStatus = new SampleRequestHandler(thirdRequest) .Validate() .Persist() .SendEmail(); PrintStatus(thirdRequestStatus); // --- Fourth request var fourthRequest = new SampleRequest() { Id = 1, FirstName = "qqqqqq", LastName = "aaaaaaa", EmailAddress = "*****@*****.**" }; var fourthRequestStatus = new SampleRequestHandler(fourthRequest) .Validate() .Persist() .SendEmail(); PrintStatus(fourthRequestStatus); // --- Fifth request var fifthRequest = new SampleRequest() { Id = 5, FirstName = "qqqqqq", LastName = "aaaaaaa", EmailAddress = "*****@*****.**" }; var fifthRequestStatus = new SampleRequestHandler(fifthRequest) .Validate() .Persist() .SendEmail(); PrintStatus(fifthRequestStatus); Console.WriteLine("Finished... Press a key."); Console.ReadKey(); }