Ignore:
Timestamp:
Feb 16, 2023, 3:50:53 PM (21 months ago)
Author:
alloc
Message:

Latest state including reworking to the permissions system

File:
1 edited

Legend:

Unmodified
Added
Removed
  • binary-improvements2/WebServer/src/WebAPI/AbsRestApi.cs

    r402 r404  
    9595                }
    9696
    97                 protected void SendErrorResult (RequestContext _context, HttpStatusCode _statusCode, byte[] _jsonInputData = null, string _errorCode = null, Exception _exception = null) {
    98                         PrepareEnvelopedResult (out JsonWriter writer);
    99                         writer.WriteRaw (JsonEmptyData);
    100                         SendEnvelopedResult (_context, ref writer, _statusCode, _jsonInputData, _errorCode, _exception);
    101                 }
    102 
    10397                static AbsRestApi () {
    10498                        JsonWriter writer = new JsonWriter ();
     
    108102                }
    109103
     104                protected virtual void HandleRestGet (RequestContext _context) {
     105                        SendErrorResult (_context, HttpStatusCode.MethodNotAllowed, null, "Unsupported");
     106                }
     107
     108                protected virtual void HandleRestPost (RequestContext _context, IDictionary<string, object> _jsonInput, byte[] _jsonInputData) {
     109                        SendErrorResult (_context, HttpStatusCode.MethodNotAllowed, _jsonInputData, "Unsupported");
     110                }
     111
     112                protected virtual void HandleRestPut (RequestContext _context, IDictionary<string, object> _jsonInput, byte[] _jsonInputData) {
     113                        SendErrorResult (_context, HttpStatusCode.MethodNotAllowed, _jsonInputData, "Unsupported");
     114                }
     115
     116                protected virtual void HandleRestDelete (RequestContext _context) {
     117                        SendErrorResult (_context, HttpStatusCode.MethodNotAllowed, null, "Unsupported");
     118                }
     119
     120
     121#region Helpers
     122
    110123                protected static readonly byte[] JsonEmptyData;
    111124               
    112                 protected void PrepareEnvelopedResult (out JsonWriter _writer) {
     125                protected static void PrepareEnvelopedResult (out JsonWriter _writer) {
    113126                        WebUtils.PrepareEnvelopedResult (out _writer);
    114127                }
    115128
    116                 protected void SendEnvelopedResult (RequestContext _context, ref JsonWriter _writer, HttpStatusCode _statusCode = HttpStatusCode.OK,
     129                protected static void SendEnvelopedResult (RequestContext _context, ref JsonWriter _writer, HttpStatusCode _statusCode = HttpStatusCode.OK,
    117130                        byte[] _jsonInputData = null, string _errorCode = null, Exception _exception = null) {
    118131                       
     
    120133                }
    121134
    122                 protected bool TryGetJsonField (IDictionary<string, object> _jsonObject, string _fieldName, out int _value) {
     135                protected static void SendErrorResult (RequestContext _context, HttpStatusCode _statusCode, byte[] _jsonInputData = null, string _errorCode = null, Exception _exception = null) {
     136                        PrepareEnvelopedResult (out JsonWriter writer);
     137                        writer.WriteRaw (JsonEmptyData);
     138                        SendEnvelopedResult (_context, ref writer, _statusCode, _jsonInputData, _errorCode, _exception);
     139                }
     140
     141                protected static bool TryGetJsonField (IDictionary<string, object> _jsonObject, string _fieldName, out int _value) {
    123142                        _value = default;
    124143                       
     
    139158                }
    140159
    141                 protected bool TryGetJsonField (IDictionary<string, object> _jsonObject, string _fieldName, out double _value) {
     160                protected static bool TryGetJsonField (IDictionary<string, object> _jsonObject, string _fieldName, out double _value) {
    142161                        _value = default;
    143162                       
     
    158177                }
    159178
    160                 protected bool TryGetJsonField (IDictionary<string, object> _jsonObject, string _fieldName, out string _value) {
     179                protected static bool TryGetJsonField (IDictionary<string, object> _jsonObject, string _fieldName, out string _value) {
    161180                        _value = default;
    162181                       
     
    176195                        }
    177196                }
    178 
    179                 protected virtual void HandleRestGet (RequestContext _context) {
    180                         SendErrorResult (_context, HttpStatusCode.MethodNotAllowed, null, "Unsupported");
    181                 }
    182 
    183                 protected virtual void HandleRestPost (RequestContext _context, IDictionary<string, object> _jsonInput, byte[] _jsonInputData) {
    184                         SendErrorResult (_context, HttpStatusCode.MethodNotAllowed, _jsonInputData, "Unsupported");
    185                 }
    186 
    187                 protected virtual void HandleRestPut (RequestContext _context, IDictionary<string, object> _jsonInput, byte[] _jsonInputData) {
    188                         SendErrorResult (_context, HttpStatusCode.MethodNotAllowed, _jsonInputData, "Unsupported");
    189                 }
    190 
    191                 protected virtual void HandleRestDelete (RequestContext _context) {
    192                         SendErrorResult (_context, HttpStatusCode.MethodNotAllowed, null, "Unsupported");
    193                 }
     197               
     198
     199#endregion
    194200        }
    195201}
Note: See TracChangeset for help on using the changeset viewer.