protected virtual void RequestFailure(StorageRequest request, int code, string message) { request.Result = false; request.StatusCode = code; request.Message = message; request.HandledBy = this.Name; }
public override void Handle(StorageRequest request) { if (request.Type == RequestType.Check) { this.RequestSeuccess(request); } else { base.Handle(request); } }
public string Handle(object request, RequestType type) { var currentRequest = new StorageRequest(request, type); foreach (var handler in this.Chain) { handler.Handle(currentRequest); if (currentRequest.Result) { break; } } return currentRequest.ToString(); }
public virtual void Handle(StorageRequest request) { try { switch (request.Type) { case RequestType.Add: this.Add(request.Body); this.RequestSeuccess(request); break; case RequestType.Check: if (this.Check(request.Body)) { this.RequestSeuccess(request); } else { this.RequestFailure(request, 404, "Not Found"); } break; case RequestType.Buy: if (this.Remove(request.Body)) { this.RequestSeuccess(request); } else { this.RequestFailure(request, 404, "Not Found"); } break; default: break; } } catch (ApplicationException ex) { this.RequestFailure(request, 403, ex.Message); } }
protected virtual void RequestSeuccess(StorageRequest request) { request.Result = true; request.StatusCode = 200; request.Message = "OK"; request.HandledBy = this.Name; }