/// <inheritdoc cref="IFeaturePage.PostBackProc"/> public virtual string PostBackProc(string data, string user, int userRights) { //TODO user //TODO userRights if (string.IsNullOrWhiteSpace(data)) { return(JsonError.CreateJson($"{Title} - POST error : data is null")); } JsonRequest request; try { var featureJsonData = GenericJsonData.FromJson(data); request = new JsonRequest(featureJsonData); } catch (Exception exception) { //TODO better error catching Console.WriteLine(exception); return(JsonError.CreateJson($"{Title} - POST error : {exception.Message}")); } if (RequestMap == null) { RequestMap = new Dictionary <string, Func <JsonRequest, JsonResponse> >(); } if (!RequestMap.ContainsKey(request.Request)) { return(JsonError.CreateJson($"{Title} - POST error : no request callback registered for the key {request.Request}")); } try { var requestCallback = RequestMap[request.Request]; var response = requestCallback.Invoke(request); return(response.ToJson()); } catch (Exception exception) { //TODO better error catching Console.WriteLine(exception); return(JsonError.CreateJson($"{Title} - POST error : {exception.Message}")); } }