public IActionResult Sync([FromBody] SyncRequest syncRequest) { try { return(this.PolicyService.SyncPolicy.Execute( () => { using (var session = this.DatabaseService.Database.CreateSession()) { var user = session.GetUser(); var responseBuilder = new SyncResponseBuilder(session, user, syncRequest); var response = responseBuilder.Build(); return this.Ok(response); } })); } catch (Exception e) { this.Logger.LogError(e, "Exception"); return(this.StatusCode(500, e.Message)); } }
public SyncResponseBuilder(ISession session, User user, SyncRequest syncRequest) { this.session = session; this.user = user; this.syncRequest = syncRequest; }