/// <summary> /// Store the specified userId and credential. /// </summary> /// <param name="userId">User identifier.</param> /// <param name="ssoGroupKey">SSO Group Key.</param> /// <param name="credential">Credential.</param> virtual public void Store(string userId, string ssoGroupKey, Credential credential) { Delete(userId, ssoGroupKey); SQLCredential cred = new SQLCredential { UserID = credential.UserId, AuthSocialID = JsonConvert.SerializeObject(credential.AuthSocialID), AuthToken = credential.AuthToken, SecAuthToken = credential.SecAuthToken, UserName = credential.UserName, Attributes = JsonConvert.SerializeObject(credential.Attributes), UserKMD = JsonConvert.SerializeObject(credential.UserKMD), AccessToken = credential.AccessToken, RefreshToken = credential.RefreshToken, RedirectUri = credential.RedirectUri, DeviceID = credential.DeviceID, MICClientID = credential.MICClientID }; lock (SQLiteFiles[dbPath]) { try { _dbConnection.BeginTransaction(); _dbConnection.Insert(cred); _dbConnection.Commit(); } catch (Exception) { _dbConnection.Rollback(); throw; } } }
internal static Credential From(SQLCredential sqlcred) { Dictionary <string, JToken> attributes = JsonConvert.DeserializeObject <Dictionary <string, JToken> >(sqlcred.Attributes); KinveyUserMetaData userKMD = JsonConvert.DeserializeObject <KinveyUserMetaData>(sqlcred.UserKMD); KinveyAuthSocialID socialIdentity = JsonConvert.DeserializeObject <KinveyAuthSocialID>(sqlcred.AuthSocialID); var credential = new Credential(sqlcred.UserID, sqlcred.AccessToken, socialIdentity, sqlcred.AuthToken, sqlcred.UserName, attributes, userKMD, sqlcred.RefreshToken, sqlcred.RedirectUri, sqlcred.DeviceID, sqlcred.MICClientID); credential.SecAuthToken = sqlcred.SecAuthToken; return(credential); }