public virtual IActionResult ThingPost([FromBody] Thing name, [FromHeader][Required] string Authorization) { if (!ModelState.IsValid) { var error = ModelState.SelectMany(x => x.Value.Errors).First(); if (error.ErrorMessage != null && error.ErrorMessage != String.Empty) { return(BadRequest(error.ErrorMessage)); } else if (error.Exception?.Message != null) { return(BadRequest("Faulty input")); } else { return(BadRequest(ModelState)); } } if (Authorization != settings.testToken) { return(BadRequest("Not allowed")); } long newThingID = 0; string errorMessage = ""; try { DatabaseInterface.DBThing dBThing = new DatabaseInterface.DBThing(); if (!dBThing.AddThing(name.Name, name.ThingTemplate, name.Description, name.Status, name.Lat, name.Lon, ref errorMessage, ref newThingID)) { return(BadRequest("Internal Server Error:" + errorMessage)); } } catch (Exception e) { return(BadRequest("Internal Server Error:" + e.Message)); } //TODO: Uncomment the next line to return response 200 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(200, default(GeneralResponse)); //TODO: Uncomment the next line to return response 0 or use other options such as return this.NotFound(), return this.BadRequest(..), ... // return StatusCode(0, default(ErrorResponse)); string exampleJson = null; exampleJson = "{\n \"success\" : true,\n \"newid\" : " + newThingID.ToString() + "\n}"; var example = exampleJson != null ? JsonConvert.DeserializeObject <GeneralPostResponse>(exampleJson) : default(GeneralPostResponse); //TODO: Change the data returned return(new ObjectResult(example)); }
public virtual IActionResult ThingsIdDelete([FromRoute][Required] string id, [FromHeader] string Authorization) { if (!ModelState.IsValid) { var error = ModelState.SelectMany(x => x.Value.Errors).First(); if (error.ErrorMessage != null && error.ErrorMessage != String.Empty) { return(BadRequest(error.ErrorMessage)); } else if (error.Exception?.Message != null) { return(BadRequest("Faulty input")); } else { return(BadRequest(ModelState)); } } if (Authorization != settings.testToken) { return(BadRequest("Not allowed")); } long newZoneID = 0; string errorMessage = ""; try { DatabaseInterface.DBThing dBThing = new DatabaseInterface.DBThing(); if (!dBThing.DeleteThing(id, ref errorMessage)) { return(BadRequest("Internal Server Error:" + errorMessage)); } } catch (Exception e) { return(BadRequest("Internal Server Error:" + e.Message)); } string exampleJson = null; exampleJson = "{\n \"success\" : true,\n \"description\" : \" Thing " + id.ToString() + "deleted \"\n}"; var example = exampleJson != null ? JsonConvert.DeserializeObject <GeneralResponse>(exampleJson) : default(GeneralResponse); //TODO: Change the data returned return(new ObjectResult(example)); }
public virtual IActionResult ThingsWithObservationIdGet([FromRoute][Required] string id, [FromQuery] int?noOfObservations, [FromHeader][Required] string Authorization) { if (!ModelState.IsValid) { var error = ModelState.SelectMany(x => x.Value.Errors).First(); if (error.ErrorMessage != null && error.ErrorMessage != String.Empty) { return(BadRequest(error.ErrorMessage)); } else if (error.Exception?.Message != null) { return(BadRequest("Faulty input")); } else { return(BadRequest(ModelState)); } } if (Authorization != settings.testToken) { return(BadRequest("Not allowed")); } long newZoneID = 0; string errorMessage = ""; ThingsWithObservation result = null; try { DatabaseInterface.DBThing dBThing = new DatabaseInterface.DBThing(); if (!dBThing.FindThingFromIdWithObs(id, noOfObservations, ref errorMessage, ref result)) { return(BadRequest("Internal Server Error:" + errorMessage)); } } catch (Exception e) { return(BadRequest("Internal Server Error:" + e.Message)); } string exampleJson = null; return(new ObjectResult(result)); }
public virtual IActionResult ThingsGet([FromQuery][Required] string thingType, [FromHeader] string Authorization) { if (!ModelState.IsValid) { var error = ModelState.SelectMany(x => x.Value.Errors).First(); if (error.ErrorMessage != null && error.ErrorMessage != String.Empty) { return(BadRequest(error.ErrorMessage)); } else if (error.Exception?.Message != null) { return(BadRequest("Faulty input")); } else { return(BadRequest(ModelState)); } } if (Authorization != settings.testToken) { return(BadRequest("Not allowed")); } long newZoneID = 0; string errorMessage = ""; List <Thing> results = new List <Thing>(); try { DatabaseInterface.DBThing dBThing = new DatabaseInterface.DBThing(); if (!dBThing.ListThings(thingType, ref errorMessage, ref results)) { return(BadRequest("Internal Server Error:" + errorMessage)); } } catch (Exception e) { return(BadRequest("Internal Server Error:" + e.Message)); } string exampleJson = null; return(new ObjectResult(results)); }