public ApiAuthenticationStateProvider(IEventDispatcher events, HttpClient http, TokenContainer token, TokenStorage tokenStorage, ILogFactory logFactory, IEnumerable <ITokenValidator> validators)
 {
     Ensure.NotNull(events, "eventDispatcher");
     Ensure.NotNull(http, "http");
     Ensure.NotNull(token, "token");
     Ensure.NotNull(tokenStorage, "tokenStorage");
     Ensure.NotNull(logFactory, "logFactory");
     Ensure.NotNull(validators, "validators");
     this.events       = events;
     this.http         = http;
     this.token        = token;
     this.tokenStorage = tokenStorage;
     this.log          = logFactory.Scope("ApiAuthenticationState");
     this.validators.AddRange(validators);
 }