Untitled
unknown
csharp
a year ago
3.6 kB
14
Indexable
// Create request body
TartabitApiDeviceReadLwm2mDataRequest outgoingRequest = new TartabitApiDeviceReadLwm2mDataRequest();
// Setup database connection class
VcDatabase VcDatabaseConnection = new VcDatabase(_logger, _cosmosClient);
if (!VcDatabaseConnection.Connect())
{
_logger.LogError("Database could not connect.");
response.StatusCode = HttpStatusCode.InternalServerError;
response.WriteString("{\"errorMessage\" : \"Database could not connect\"}");
return response;
}
// Add content based on incoming request data
string? translatedDeviceIdToTartabitId = await VcDatabaseConnection.TranslateDeviceIdToTartabitId(incomingRequest.id);
if (translatedDeviceIdToTartabitId is null)
{
switch (VcDatabaseConnection.lastReturnStatus)
{
case (VcDatabase.VcDatabaseReturnStatusCode.ItemNotFound):
_logger.LogInformation("Device not found while reading by DeviceID");
response.StatusCode = HttpStatusCode.NotFound;
response.WriteString("{\"errorMessage\" : \"Device not found in database\"}");
return response;
case (VcDatabase.VcDatabaseReturnStatusCode.DatabaseFailure):
_logger.LogError("Could not connect to database while reading by DeviceID");
response.StatusCode = HttpStatusCode.InternalServerError;
response.WriteString("{\"errorMessage\" : \"Could not connect to database while reading by DeviceID\"}");
return response;
case (VcDatabase.VcDatabaseReturnStatusCode.ContainerFailure):
_logger.LogError("Could not connect to container while reading by DeviceID");
response.StatusCode = HttpStatusCode.InternalServerError;
response.WriteString("{\"errorMessage\" : \"Could not connect to container while reading by DeviceID\"}");
return response;
case (VcDatabase.VcDatabaseReturnStatusCode.NotConnected):
_logger.LogError("Not connected to database while reading by DeviceID");
response.StatusCode = HttpStatusCode.InternalServerError;
response.WriteString("{\"errorMessage\" : \"Not connected to database while reading by DeviceID\"}");
return response;
case (VcDatabase.VcDatabaseReturnStatusCode.BadInput):
_logger.LogError("Bad input while reading by DeviceID");
response.StatusCode = HttpStatusCode.BadRequest;
response.WriteString("{\"errorMessage\" : \"Bad input while reading by DeviceID\"}");
return response;
default:
_logger.LogError("Unknown error occurred while reading by DeviceID.");
response.StatusCode = HttpStatusCode.InternalServerError;
response.WriteString("{\"errorMessage\" : \"Unknown error occurred while reading by DeviceID.\"}");
return response;
}
}
outgoingRequest.id = translatedDeviceIdToTartabitId;
_logger.LogInformation("Successfully translated DeviceId to TartabitId through GET method.");Editor is loading...
Leave a Comment