Revised IdentityUserToken.

pull/206/head
Halil İbrahim Kalkan 8 years ago
parent 7d75b4c403
commit 29fd0eba15

@ -3,5 +3,7 @@
public static class IdentityUserTokenConsts public static class IdentityUserTokenConsts
{ {
public const int MaxLoginProviderLength = 64; public const int MaxLoginProviderLength = 64;
public const int MaxNameLength = 128;
} }
} }

@ -55,7 +55,7 @@ namespace Volo.Abp.Identity
Claims = new Collection<IdentityRoleClaim>(); Claims = new Collection<IdentityRoleClaim>();
} }
public void AddClaim([NotNull] IGuidGenerator guidGenerator, [NotNull] Claim claim) public virtual void AddClaim([NotNull] IGuidGenerator guidGenerator, [NotNull] Claim claim)
{ {
Check.NotNull(guidGenerator, nameof(guidGenerator)); Check.NotNull(guidGenerator, nameof(guidGenerator));
Check.NotNull(claim, nameof(claim)); Check.NotNull(claim, nameof(claim));
@ -63,7 +63,7 @@ namespace Volo.Abp.Identity
Claims.Add(new IdentityRoleClaim(guidGenerator.Create(), Id, claim)); Claims.Add(new IdentityRoleClaim(guidGenerator.Create(), Id, claim));
} }
public void AddClaims([NotNull] IGuidGenerator guidGenerator, [NotNull] IEnumerable<Claim> claims) public virtual void AddClaims([NotNull] IGuidGenerator guidGenerator, [NotNull] IEnumerable<Claim> claims)
{ {
Check.NotNull(guidGenerator, nameof(guidGenerator)); Check.NotNull(guidGenerator, nameof(guidGenerator));
Check.NotNull(claims, nameof(claims)); Check.NotNull(claims, nameof(claims));
@ -74,7 +74,7 @@ namespace Volo.Abp.Identity
} }
} }
public void RemoveClaim([NotNull] Claim claim) public virtual void RemoveClaim([NotNull] Claim claim)
{ {
Check.NotNull(claim, nameof(claim)); Check.NotNull(claim, nameof(claim));

@ -132,7 +132,7 @@ namespace Volo.Abp.Identity
Tokens = new Collection<IdentityUserToken>(); Tokens = new Collection<IdentityUserToken>();
} }
public void AddRole(Guid roleId) public virtual void AddRole(Guid roleId)
{ {
Check.NotNull(roleId, nameof(roleId)); Check.NotNull(roleId, nameof(roleId));
@ -144,7 +144,7 @@ namespace Volo.Abp.Identity
Roles.Add(new IdentityUserRole(Id, roleId)); Roles.Add(new IdentityUserRole(Id, roleId));
} }
public void RemoveRole(Guid roleId) public virtual void RemoveRole(Guid roleId)
{ {
Check.NotNull(roleId, nameof(roleId)); Check.NotNull(roleId, nameof(roleId));
@ -156,14 +156,14 @@ namespace Volo.Abp.Identity
Roles.RemoveAll(r => r.RoleId == roleId); Roles.RemoveAll(r => r.RoleId == roleId);
} }
public bool IsInRole(Guid roleId) public virtual bool IsInRole(Guid roleId)
{ {
Check.NotNull(roleId, nameof(roleId)); Check.NotNull(roleId, nameof(roleId));
return Roles.Any(r => r.RoleId == roleId); return Roles.Any(r => r.RoleId == roleId);
} }
public void AddClaim([NotNull] IGuidGenerator guidGenerator, [NotNull] Claim claim) public virtual void AddClaim([NotNull] IGuidGenerator guidGenerator, [NotNull] Claim claim)
{ {
Check.NotNull(guidGenerator, nameof(guidGenerator)); Check.NotNull(guidGenerator, nameof(guidGenerator));
Check.NotNull(claim, nameof(claim)); Check.NotNull(claim, nameof(claim));
@ -171,7 +171,7 @@ namespace Volo.Abp.Identity
Claims.Add(new IdentityUserClaim(guidGenerator.Create(), Id, claim)); Claims.Add(new IdentityUserClaim(guidGenerator.Create(), Id, claim));
} }
public void AddClaims([NotNull] IGuidGenerator guidGenerator, [NotNull] IEnumerable<Claim> claims) public virtual void AddClaims([NotNull] IGuidGenerator guidGenerator, [NotNull] IEnumerable<Claim> claims)
{ {
Check.NotNull(guidGenerator, nameof(guidGenerator)); Check.NotNull(guidGenerator, nameof(guidGenerator));
Check.NotNull(claims, nameof(claims)); Check.NotNull(claims, nameof(claims));
@ -182,7 +182,7 @@ namespace Volo.Abp.Identity
} }
} }
public void ReplaceClaim([NotNull] Claim claim, [NotNull] Claim newClaim) public virtual void ReplaceClaim([NotNull] Claim claim, [NotNull] Claim newClaim)
{ {
Check.NotNull(claim, nameof(claim)); Check.NotNull(claim, nameof(claim));
Check.NotNull(newClaim, nameof(newClaim)); Check.NotNull(newClaim, nameof(newClaim));
@ -194,7 +194,7 @@ namespace Volo.Abp.Identity
} }
} }
public void RemoveClaims([NotNull] IEnumerable<Claim> claims) public virtual void RemoveClaims([NotNull] IEnumerable<Claim> claims)
{ {
Check.NotNull(claims, nameof(claims)); Check.NotNull(claims, nameof(claims));
@ -204,21 +204,21 @@ namespace Volo.Abp.Identity
} }
} }
public void RemoveClaim([NotNull] Claim claim) public virtual void RemoveClaim([NotNull] Claim claim)
{ {
Check.NotNull(claim, nameof(claim)); Check.NotNull(claim, nameof(claim));
Claims.RemoveAll(c => c.ClaimValue == claim.Value && c.ClaimType == claim.Type); Claims.RemoveAll(c => c.ClaimValue == claim.Value && c.ClaimType == claim.Type);
} }
public void AddLogin([NotNull] UserLoginInfo login) public virtual void AddLogin([NotNull] UserLoginInfo login)
{ {
Check.NotNull(login, nameof(login)); Check.NotNull(login, nameof(login));
Logins.Add(new IdentityUserLogin(Id, login)); Logins.Add(new IdentityUserLogin(Id, login));
} }
public void RemoveLogin([NotNull] string loginProvider, [NotNull] string providerKey) public virtual void RemoveLogin([NotNull] string loginProvider, [NotNull] string providerKey)
{ {
Check.NotNull(loginProvider, nameof(loginProvider)); Check.NotNull(loginProvider, nameof(loginProvider));
Check.NotNull(providerKey, nameof(providerKey)); Check.NotNull(providerKey, nameof(providerKey));
@ -227,17 +227,17 @@ namespace Volo.Abp.Identity
} }
[CanBeNull] [CanBeNull]
public IdentityUserToken FindToken(string loginProvider, string name) public virtual IdentityUserToken FindToken(string loginProvider, string name)
{ {
return Tokens.FirstOrDefault(t => t.LoginProvider == loginProvider && t.Name == name); return Tokens.FirstOrDefault(t => t.LoginProvider == loginProvider && t.Name == name);
} }
public void SetToken(IGuidGenerator guidGenerator, string loginProvider, string name, string value) public virtual void SetToken(string loginProvider, string name, string value)
{ {
var token = FindToken(loginProvider, name); var token = FindToken(loginProvider, name);
if (token == null) if (token == null)
{ {
Tokens.Add(new IdentityUserToken(guidGenerator.Create(), Id, loginProvider, name, value)); Tokens.Add(new IdentityUserToken(Id, loginProvider, name, value));
} }
else else
{ {
@ -245,7 +245,7 @@ namespace Volo.Abp.Identity
} }
} }
public void RemoveToken(string loginProvider, string name) public virtual void RemoveToken(string loginProvider, string name)
{ {
Tokens.RemoveAll(t => t.LoginProvider == loginProvider && t.Name == name); Tokens.RemoveAll(t => t.LoginProvider == loginProvider && t.Name == name);
} }

@ -1002,7 +1002,7 @@ namespace Volo.Abp.Identity
await _userRepository.EnsureCollectionLoadedAsync(user, u => u.Tokens, cancellationToken); await _userRepository.EnsureCollectionLoadedAsync(user, u => u.Tokens, cancellationToken);
user.SetToken(_guidGenerator, loginProvider, name, value); user.SetToken(loginProvider, name, value);
} }
/// <summary> /// <summary>

@ -7,7 +7,7 @@ namespace Volo.Abp.Identity
/// <summary> /// <summary>
/// Represents an authentication token for a user. /// Represents an authentication token for a user.
/// </summary> /// </summary>
public class IdentityUserToken : Entity<Guid> public class IdentityUserToken : Entity
{ {
/// <summary> /// <summary>
/// Gets or sets the primary key of the user that the token belongs to. /// Gets or sets the primary key of the user that the token belongs to.
@ -34,12 +34,11 @@ namespace Volo.Abp.Identity
} }
protected internal IdentityUserToken(Guid id, Guid userId, [NotNull] string loginProvider, [NotNull] string name, string value) protected internal IdentityUserToken(Guid userId, [NotNull] string loginProvider, [NotNull] string name, string value)
{ {
Check.NotNull(loginProvider, nameof(loginProvider)); Check.NotNull(loginProvider, nameof(loginProvider));
Check.NotNull(name, nameof(name)); Check.NotNull(name, nameof(name));
Id = id;
UserId = userId; UserId = userId;
LoginProvider = loginProvider; LoginProvider = loginProvider;
Name = name; Name = name;

@ -101,9 +101,10 @@ namespace Volo.Abp.Identity.EntityFrameworkCore
{ {
b.ToTable(tablePrefix + "UserTokens", schema); b.ToTable(tablePrefix + "UserTokens", schema);
b.Property(ul => ul.LoginProvider).HasMaxLength(IdentityUserTokenConsts.MaxLoginProviderLength).IsRequired(); b.HasKey(l => new { l.UserId, l.LoginProvider, l.Name });
b.HasIndex(l => new { l.UserId, l.LoginProvider, l.Name }); b.Property(ul => ul.LoginProvider).HasMaxLength(IdentityUserTokenConsts.MaxLoginProviderLength).IsRequired();
b.Property(ul => ul.LoginProvider).HasMaxLength(IdentityUserTokenConsts.MaxNameLength).IsRequired();
}); });
} }
} }

Loading…
Cancel
Save