public PutDataModule(PutDataHandler handler) { this.handler = handler; Put["/servers/{endpoint:url}/info", true] = async(x, _) => { var gameServer = this.Bind <ServerInfo>(); var server = new GameServer { endpoint = x.endpoint, info = gameServer }; var validationResult = this.Validate(server); if (!validationResult.IsValid) { logger.Error($"Cannot bind to GameServerInfo"); return(HttpStatusCode.BadRequest); } return(await AddServerAsync(server)); }; Put["/servers/{endpoint:url}/matches/{timestamp:utc_timestamp}", true] = async(x, _) => { var matchResult = this.Bind <MatchResult>(); var matchInfo = new MatchInfo { endpoint = x.endpoint, timestamp = x.timestamp, result = matchResult }; var validationResult = this.Validate(matchInfo); if (!validationResult.IsValid) { return(HttpStatusCode.BadRequest); } return(await AddMatchInfoAsync(matchInfo)); }; }
public void SetUp() { file = new TempFile(); db = new LiteDbAdapter(file.Filename); handler = new PutDataHandler(db); }