Example #1
0
        public bool AgentRequesting(HttpRequest request, HttpResponse response, Servers.ServerAgent server, Routes.UrlRoute urlRoute)
        {
            var items = mAgentRequestingHandlers;

            if (items.Length > 0)
            {
                Events.EventAgentRequestingArgs e = new Events.EventAgentRequestingArgs(request, response, Gateway, server, urlRoute);
                for (int i = 0; i < items.Length; i++)
                {
                    if (!e.Cancel && Gateway.PluginCenter.PluginIsEnabled(items[i]))
                    {
                        try
                        {
                            items[i].Execute(e);
                        }
                        catch (Exception e_)
                        {
                            Gateway.HttpServer.GetLog(LogType.Error)?
                            .Log(LogType.Error, $"gateway {request.ID} {request.RemoteIPAddress} {request.Method} {request.GetSourceUrl()} {items[i].Name} agent requesting plugin process error {e_.Message}@{e_.StackTrace}");
                        }
                    }
                }
                return(!e.Cancel);
            }
            return(true);
        }
Example #2
0
 public EventRequestIncrementArgs(HttpRequest request, int code, long time, Servers.ServerAgent server)
 {
     Request = request;
     Code    = code;
     Time    = time;
     Server  = server;
 }
Example #3
0
        public EventRequestCompletedArgs(Routes.UrlRoute urlRoute, HttpRequest request, HttpResponse response, Gateway gateway, int code,
                                         Servers.ServerAgent server, long useTime, long requestid, string error)

        {
            Error           = error;
            RequestID       = requestid;
            Gateway         = gateway;
            UrlRewrite      = request.IsRewrite;
            SourceBaseUrl   = request.GetSourceBaseUrl();
            SourceUrl       = request.GetSourceUrl();
            SourcePath      = request.GetSourcePath();
            Url             = request.Url;
            BaseUrl         = request.BaseUrl;
            Path            = request.Path;
            Code            = code;
            Server          = server;
            Time            = useTime;
            UrlRoute        = urlRoute;
            Cookies         = request.Cookies.Copy();
            Headers         = request.Header.Copy();
            RemoteIPAddress = request.RemoteIPAddress;
            Data            = request.Data.Copy();
            Method          = request.Method;
            Host            = request.GetHostBase();
        }
 public EventRequestCompletedArgs(Routes.UrlRoute urlRoute, HttpRequest request, HttpResponse response, Gateway gateway, int code,
                                  Servers.ServerAgent server, long useTime)
     : base(request, response, gateway)
 {
     Code     = code;
     Server   = server;
     Time     = useTime;
     UrlRoute = urlRoute;
 }
Example #5
0
        public bool AgentRequesting(HttpRequest request, HttpResponse response, Servers.ServerAgent server, Routes.UrlRoute urlRoute)
        {
            var items = mAgentRequestingHandlers;

            if (items.Length > 0)
            {
                Events.EventAgentRequestingArgs e = new Events.EventAgentRequestingArgs(request, response, Gateway, server, urlRoute);
                for (int i = 0; i < items.Length; i++)
                {
                    if (!e.Cancel)
                    {
                        items[i].Execute(e);
                    }
                }
                return(!e.Cancel);
            }
            return(true);
        }
Example #6
0
        public EventRequestCompletedArgs(Routes.UrlRoute urlRoute, HttpRequest request, HttpResponse response, Gateway gateway, int code,
                                         Servers.ServerAgent server, long useTime)

        {
            Gateway         = gateway;
            BaseUrl         = request.BaseUrl;
            Url             = request.Url;
            Code            = code;
            Server          = server;
            Time            = useTime;
            UrlRoute        = urlRoute;
            Cookies         = request.Cookies.Copy();
            Headers         = request.Header.Copy();
            RemoteIPAddress = request.RemoteIPAddress;
            Data            = request.Data.Copy();
            Path            = request.Path;
            Method          = request.Method;
        }
Example #7
0
 public EventAgentRequestingArgs(HttpRequest request, HttpResponse response, Gateway gateway, Servers.ServerAgent server, Routes.UrlRoute urlRoute) :
     base(request, response, gateway)
 {
     Server   = server;
     UrlRoute = urlRoute;
 }
Example #8
0
            public void Add(int code, long time, Servers.ServerAgent server, BeetleX.FastHttpApi.HttpRequest request)
            {
                var stats = GetStatistics(request, code);

                stats?.Add(code, time, server, request);
            }