Ignore:
Timestamp:
Sep 4, 2018, 1:00:48 PM (6 years ago)
Author:
alloc
Message:

Code style cleanup (mostly whitespace changes, enforcing braces, using cleanup)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • binary-improvements/MapRendering/Web/Handlers/ApiHandler.cs

    r279 r325  
    1 using AllocsFixes.NetConnections.Servers.Web.API;
    21using System;
    32using System.Collections.Generic;
    4 using System.IO;
    53using System.Net;
    64using System.Reflection;
    7 using System.Threading;
     5using AllocsFixes.NetConnections.Servers.Web.API;
    86
    9 namespace AllocsFixes.NetConnections.Servers.Web.Handlers
    10 {
     7namespace AllocsFixes.NetConnections.Servers.Web.Handlers {
    118        public class ApiHandler : PathHandler {
    12                 private string staticPart;
    13                 private Dictionary<String, WebAPI> apis = new Dictionary<string, WebAPI> ();
     9                private readonly Dictionary<string, WebAPI> apis = new Dictionary<string, WebAPI> ();
     10                private readonly string staticPart;
    1411
    1512                public ApiHandler (string staticPart, string moduleName = null) : base (moduleName) {
     
    1714
    1815                        foreach (Type t in Assembly.GetExecutingAssembly ().GetTypes ()) {
    19                                 if (!t.IsAbstract && t.IsSubclassOf (typeof(WebAPI))) {
     16                                if (!t.IsAbstract && t.IsSubclassOf (typeof (WebAPI))) {
    2017                                        ConstructorInfo ctor = t.GetConstructor (new Type [0]);
    2118                                        if (ctor != null) {
    22                                                 WebAPI apiInstance = (WebAPI)ctor.Invoke (new object [0]);
     19                                                WebAPI apiInstance = (WebAPI) ctor.Invoke (new object [0]);
    2320                                                addApi (t.Name.ToLower (), apiInstance);
    2421                                        }
     
    2623                        }
    2724
    28             // Add dummy types
    29             Type dummy_t = typeof (API.Null);
    30             ConstructorInfo dummy_ctor = dummy_t.GetConstructor (new Type [0]);
    31             if (dummy_ctor != null) {
    32                 WebAPI dummy_apiInstance = (WebAPI)dummy_ctor.Invoke (new object[0]);
     25                        // Add dummy types
     26                        Type dummy_t = typeof (Null);
     27                        ConstructorInfo dummy_ctor = dummy_t.GetConstructor (new Type [0]);
     28                        if (dummy_ctor != null) {
     29                                WebAPI dummy_apiInstance = (WebAPI) dummy_ctor.Invoke (new object[0]);
    3330
    34                 // Permissions that don't map to a real API
    35                 addApi("viewallclaims", dummy_apiInstance);
    36                 addApi("viewallplayers", dummy_apiInstance);
    37             }
     31                                // Permissions that don't map to a real API
     32                                addApi ("viewallclaims", dummy_apiInstance);
     33                                addApi ("viewallplayers", dummy_apiInstance);
     34                        }
    3835                }
    3936
     
    4340                }
    4441
    45                 public override void HandleRequest (HttpListenerRequest req, HttpListenerResponse resp, WebConnection user, int permissionLevel) {
     42                public override void HandleRequest (HttpListenerRequest req, HttpListenerResponse resp, WebConnection user,
     43                        int permissionLevel) {
    4644                        string apiName = req.Url.AbsolutePath.Remove (0, staticPart.Length);
    4745                        if (!AuthorizeForCommand (apiName, user, permissionLevel)) {
    48                                 resp.StatusCode = (int)HttpStatusCode.Forbidden;
     46                                resp.StatusCode = (int) HttpStatusCode.Forbidden;
    4947                                if (user != null) {
    5048                                        //Log.Out ("ApiHandler: user '{0}' not allowed to execute '{1}'", user.SteamID, apiName);
    51                                 } else {
    52                                         //Log.Out ("ApiHandler: unidentified user from '{0}' not allowed to execute '{1}'", req.RemoteEndPoint.Address, apiName);
    5349                                }
     50
    5451                                return;
    55                         } else {
    56                                 foreach (KeyValuePair<string, WebAPI> kvp in apis) {
    57                                         if (apiName.StartsWith (kvp.Key)) {
    58                                                 try {
    59                                                         kvp.Value.HandleRequest (req, resp, user, permissionLevel);
    60                                                         return;
    61                                                 } catch (Exception e) {
    62                                                         Log.Error ("Error in ApiHandler.HandleRequest(): Handler {0} threw an exception:", kvp.Key);
    63                                                         Log.Exception (e);
    64                                                         resp.StatusCode = (int)HttpStatusCode.InternalServerError;
    65                                                         return;
    66                                                 }
     52                        }
     53
     54                        foreach (KeyValuePair<string, WebAPI> kvp in apis) {
     55                                if (apiName.StartsWith (kvp.Key)) {
     56                                        try {
     57                                                kvp.Value.HandleRequest (req, resp, user, permissionLevel);
     58                                                return;
     59                                        } catch (Exception e) {
     60                                                Log.Error ("Error in ApiHandler.HandleRequest(): Handler {0} threw an exception:", kvp.Key);
     61                                                Log.Exception (e);
     62                                                resp.StatusCode = (int) HttpStatusCode.InternalServerError;
     63                                                return;
    6764                                        }
    6865                                }
    6966                        }
    70        
     67
    7168                        Log.Out ("Error in ApiHandler.HandleRequest(): No handler found for API \"" + apiName + "\"");
    72                         resp.StatusCode = (int)HttpStatusCode.NotFound;
     69                        resp.StatusCode = (int) HttpStatusCode.NotFound;
    7370                }
    7471
     
    7673                        return WebPermissions.Instance.ModuleAllowedWithLevel ("webapi." + apiName, permissionLevel);
    7774                }
    78 
    7975        }
    80 
    8176}
    82 
Note: See TracChangeset for help on using the changeset viewer.