public async Task<bool> Initialize(IHttpAsyncHostHandlerContext context)
        {
            // Initialize gets called after Configure.
            await RefreshConfigData();

            // Let a background task refresh the config data every N seconds:
#pragma warning disable 4014
            if (refreshEnable)
            {
                Task.Run(async () =>
                {
                    while (true)
                    {
                        // Wait until the next even N-second mark on the clock:
                        const long secN = TimeSpan.TicksPerSecond * refreshInterval;
                        var now = DateTime.UtcNow;
                        var nextN = new DateTime(((now.Ticks + secN) / secN) * secN, DateTimeKind.Utc);
                        await Task.Delay(nextN.Subtract(now));

                        // Refresh config data:
                        await RefreshConfigData();
                    }
                });
            }
#pragma warning restore 4014

            return true;
        }
Beispiel #2
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="hostContext"></param>
 /// <param name="request"></param>
 /// <param name="user"></param>
 /// <param name="userHostAddress"></param>
 public HttpRequestContext(IHttpAsyncHostHandlerContext hostContext, HttpListenerRequest request, IPrincipal user, string userHostAddress)
 {
     HostContext     = hostContext;
     Request         = request;
     User            = user;
     UserHostAddress = userHostAddress;
 }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="hostContext"></param>
 /// <param name="request"></param>
 /// <param name="user"></param>
 /// <param name="userHostAddress"></param>
 public HttpRequestContext(IHttpAsyncHostHandlerContext hostContext, HttpListenerRequest request, IPrincipal user, string userHostAddress)
 {
     HostContext = hostContext;
     Request = request;
     User = user;
     UserHostAddress = userHostAddress;
 }
Beispiel #4
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="hostContext"></param>
 /// <param name="request"></param>
 /// <param name="user"></param>
 public HttpRequestContext(IHttpAsyncHostHandlerContext hostContext, HttpListenerRequest request, IPrincipal user)
 {
     HostContext = hostContext;
     Request = request;
     User = user;
 }
 public async Task<bool> Configure(IHttpAsyncHostHandlerContext hostContext, ConfigurationDictionary configValues)
 {
     // Configure gets called first.
     localConfig = configValues;
     return true;
 }
Beispiel #6
0
 public HttpRequestContext(IHttpAsyncHostHandlerContext hostContext, HttpListenerRequest request, IPrincipal user)
 {
     HostContext = hostContext;
     Request     = request;
     User        = user;
 }