Exemplo n.º 1
0
        private void GetIdentityIdWebGL(RefreshIdentityOptions options, Action <string> callback)
        {
            // Locking so that concurrent calls do not make separate network calls,
            // and instead wait for the first caller to cache the Identity ID.
            lock (refreshIdLock)
            {
                if (!IsIdentitySet || options == RefreshIdentityOptions.Refresh)
                {
                    RefreshIdentityWebGL(IdentityState =>
                    {
                        _identityState = IdentityState;

                        if (!string.IsNullOrEmpty(_identityState.LoginProvider))
                        {
                            Logins[_identityState.LoginProvider] = _identityState.LoginToken;
                        }
                        UpdateIdentity(_identityState.IdentityId);

                        callback(identityId);
                    });
                }
                else
                {
                    callback(identityId);
                }
            }
        }
Exemplo n.º 2
0
 private string GetIdentityId(RefreshIdentityOptions options)
 {
     if (!IsIdentitySet || options == RefreshIdentityOptions.Refresh)
     {
         _identityState = RefreshIdentity();
         if (!string.IsNullOrEmpty(_identityState.LoginProvider))
         {
             Logins[_identityState.LoginProvider] = _identityState.LoginToken;
         }
         UpdateIdentity(_identityState.IdentityId);
     }
     return(identityId);
 }
        private async System.Threading.Tasks.Task <string> GetIdentityIdAsync(RefreshIdentityOptions options)
        {
            if (!IsIdentitySet || options == RefreshIdentityOptions.Refresh)
            {
                _identityState = await RefreshIdentityAsync().ConfigureAwait(false);

                if (!string.IsNullOrEmpty(_identityState.LoginProvider))
                {
                    Logins[_identityState.LoginProvider] = _identityState.LoginToken;
                }
                UpdateIdentity(_identityState.IdentityId);
            }
            return(identityId);
        }
        private string GetIdentityId(RefreshIdentityOptions options)
        {
            // Locking so that concurrent calls do not make separate network calls,
            // and instead wait for the first caller to cache the Identity ID.
            lock (refreshIdLock)
            {
                if (!IsIdentitySet || options == RefreshIdentityOptions.Refresh)
                {
                    _identityState = RefreshIdentity();

                    if (!string.IsNullOrEmpty(_identityState.LoginProvider))
                    {
                        Logins[_identityState.LoginProvider] = _identityState.LoginToken;
                    }
                    UpdateIdentity(_identityState.IdentityId);
                }
            }
            return(identityId);
        }
 private async System.Threading.Tasks.Task<string> GetIdentityIdAsync(RefreshIdentityOptions options)
 {
     if (!IsIdentitySet || options == RefreshIdentityOptions.Refresh)
     {
         _identityState = await RefreshIdentityAsync().ConfigureAwait(false);
         if (!string.IsNullOrEmpty(_identityState.LoginProvider))
         {
             Logins[_identityState.LoginProvider] = _identityState.LoginToken;
         }
         UpdateIdentity(_identityState.IdentityId);
     }
     return identityId;
 }
 private string GetIdentityId(RefreshIdentityOptions options)
 {
     if (!IsIdentitySet || options == RefreshIdentityOptions.Refresh)
     {
         _identityState = RefreshIdentity();
         if (!string.IsNullOrEmpty(_identityState.LoginProvider))
         {
             Logins[_identityState.LoginProvider] = _identityState.LoginToken;
         }
         UpdateIdentity(_identityState.IdentityId);
     }
     return identityId;
 }