Streamlines member and user services CreateMemberWithIdentity to be similar to media/content and not have a raise events flag. Also implements the CreateWithIdentity explicitly
This commit is contained in:
@@ -15,7 +15,7 @@ namespace Umbraco.Core.Services
|
||||
public interface IMembershipMemberService : IMembershipMemberService<IMember>, IMembershipRoleService<IMember>
|
||||
{
|
||||
IMember CreateMember(string username, string email, string password, string memberType);
|
||||
IMember CreateMemberWithIdentity(string username, string email, string password, IMemberType memberType, bool raiseEvents = true);
|
||||
IMember CreateMemberWithIdentity(string username, string email, string password, IMemberType memberType);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -47,9 +47,8 @@ namespace Umbraco.Core.Services
|
||||
/// <param name="email"></param>
|
||||
/// <param name="password"></param>
|
||||
/// <param name="memberTypeAlias"></param>
|
||||
/// <param name="raiseEvents"></param>
|
||||
/// <returns></returns>
|
||||
T CreateWithIdentity(string username, string email, string password, string memberTypeAlias, bool raiseEvents = true);
|
||||
T CreateWithIdentity(string username, string email, string password, string memberTypeAlias);
|
||||
|
||||
/// <summary>
|
||||
/// Gets the member by the provider key
|
||||
|
||||
@@ -11,7 +11,7 @@ namespace Umbraco.Core.Services
|
||||
public interface IMembershipUserService : IMembershipMemberService<IUser>
|
||||
{
|
||||
|
||||
IUser CreateMemberWithIdentity(string username, string email, string password, IUserType userType, bool raiseEvents = true);
|
||||
IUser CreateUserWithIdentity(string username, string email, string password, IUserType userType);
|
||||
|
||||
}
|
||||
}
|
||||
@@ -587,19 +587,16 @@ namespace Umbraco.Core.Services
|
||||
return member;
|
||||
}
|
||||
|
||||
public IMember CreateMemberWithIdentity(string username, string email, string password, IMemberType memberType, bool raiseEvents = true)
|
||||
public IMember CreateMemberWithIdentity(string username, string email, string password, IMemberType memberType)
|
||||
{
|
||||
if (memberType == null) throw new ArgumentNullException("memberType");
|
||||
|
||||
var member = new Member(username, email.ToLower().Trim(), username, password, -1, memberType);
|
||||
|
||||
if (raiseEvents)
|
||||
if (Saving.IsRaisedEventCancelled(new SaveEventArgs<IMember>(member), this))
|
||||
{
|
||||
if (Saving.IsRaisedEventCancelled(new SaveEventArgs<IMember>(member), this))
|
||||
{
|
||||
member.WasCancelled = true;
|
||||
return member;
|
||||
}
|
||||
member.WasCancelled = true;
|
||||
return member;
|
||||
}
|
||||
|
||||
var uow = _uowProvider.GetUnitOfWork();
|
||||
@@ -613,12 +610,12 @@ namespace Umbraco.Core.Services
|
||||
CreateAndSaveMemberXml(xml, member.Id, uow.Database);
|
||||
}
|
||||
|
||||
if (raiseEvents)
|
||||
Saved.RaiseEvent(new SaveEventArgs<IMember>(member, false), this);
|
||||
Saved.RaiseEvent(new SaveEventArgs<IMember>(member, false), this);
|
||||
Created.RaiseEvent(new NewEventArgs<IMember>(member, false, memberType.Alias, -1), this);
|
||||
|
||||
return member;
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Creates and persists a new Member
|
||||
/// </summary>
|
||||
@@ -626,9 +623,8 @@ namespace Umbraco.Core.Services
|
||||
/// <param name="username"></param>
|
||||
/// <param name="password"></param>
|
||||
/// <param name="memberTypeAlias"></param>
|
||||
/// <param name="raiseEvents"></param>
|
||||
/// <returns></returns>
|
||||
public IMember CreateWithIdentity(string username, string email, string password, string memberTypeAlias, bool raiseEvents = true)
|
||||
IMember IMembershipMemberService<IMember>.CreateWithIdentity(string username, string email, string password, string memberTypeAlias)
|
||||
{
|
||||
var uow = _uowProvider.GetUnitOfWork();
|
||||
IMemberType memberType;
|
||||
@@ -644,7 +640,7 @@ namespace Umbraco.Core.Services
|
||||
throw new ArgumentException(string.Format("No MemberType matching the passed in Alias: '{0}' was found", memberTypeAlias));
|
||||
}
|
||||
|
||||
return CreateMemberWithIdentity(username, email, password, memberType, raiseEvents);
|
||||
return CreateMemberWithIdentity(username, email, password, memberType);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -75,7 +75,7 @@ namespace Umbraco.Core.Services
|
||||
}
|
||||
}
|
||||
|
||||
public IUser CreateMemberWithIdentity(string username, string email, string password, IUserType userType, bool raiseEvents = true)
|
||||
public IUser CreateUserWithIdentity(string username, string email, string password, IUserType userType)
|
||||
{
|
||||
if (userType == null) throw new ArgumentNullException("userType");
|
||||
|
||||
@@ -103,23 +103,19 @@ namespace Umbraco.Core.Services
|
||||
IsApproved = true
|
||||
};
|
||||
|
||||
if (raiseEvents)
|
||||
{
|
||||
if (SavingUser.IsRaisedEventCancelled(new SaveEventArgs<IUser>(user), this))
|
||||
return user;
|
||||
}
|
||||
if (SavingUser.IsRaisedEventCancelled(new SaveEventArgs<IUser>(user), this))
|
||||
return user;
|
||||
|
||||
repository.AddOrUpdate(user);
|
||||
uow.Commit();
|
||||
|
||||
if (raiseEvents)
|
||||
SavedUser.RaiseEvent(new SaveEventArgs<IUser>(user, false), this);
|
||||
SavedUser.RaiseEvent(new SaveEventArgs<IUser>(user, false), this);
|
||||
|
||||
return user;
|
||||
}
|
||||
}
|
||||
|
||||
public IUser CreateWithIdentity(string username, string email, string password, string memberTypeAlias, bool raiseEvents = true)
|
||||
IUser IMembershipMemberService<IUser>.CreateWithIdentity(string username, string email, string password, string memberTypeAlias)
|
||||
{
|
||||
var userType = GetUserTypeByAlias(memberTypeAlias);
|
||||
if (userType == null)
|
||||
@@ -127,7 +123,7 @@ namespace Umbraco.Core.Services
|
||||
throw new ArgumentException("The user type " + memberTypeAlias + " could not be resolved");
|
||||
}
|
||||
|
||||
return CreateMemberWithIdentity(username, email, password, userType);
|
||||
return CreateUserWithIdentity(username, email, password, userType);
|
||||
}
|
||||
|
||||
public IUser GetById(int id)
|
||||
|
||||
@@ -94,7 +94,7 @@ namespace Umbraco.Tests.Membership
|
||||
mServiceMock.Setup(service => service.GetByEmail("test@test.com")).Returns(() => null);
|
||||
mServiceMock.Setup(service => service.GetDefaultMemberType()).Returns("Member");
|
||||
mServiceMock.Setup(
|
||||
service => service.CreateWithIdentity(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>(), It.IsAny<bool>()))
|
||||
service => service.CreateWithIdentity(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>()))
|
||||
.Callback((string u, string e, string p, string m, bool b) =>
|
||||
{
|
||||
createdMember = new Member("test", e, u, p, memberType);
|
||||
@@ -125,7 +125,7 @@ namespace Umbraco.Tests.Membership
|
||||
mServiceMock.Setup(service => service.GetByEmail("test@test.com")).Returns(() => null);
|
||||
mServiceMock.Setup(service => service.GetDefaultMemberType()).Returns("Member");
|
||||
mServiceMock.Setup(
|
||||
service => service.CreateWithIdentity(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>(), It.IsAny<bool>()))
|
||||
service => service.CreateWithIdentity(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>()))
|
||||
.Callback((string u, string e, string p, string m, bool b) =>
|
||||
{
|
||||
createdMember = new Member("test", e, u, p, memberType);
|
||||
@@ -158,7 +158,7 @@ namespace Umbraco.Tests.Membership
|
||||
mServiceMock.Setup(service => service.GetByEmail("test@test.com")).Returns(() => null);
|
||||
mServiceMock.Setup(service => service.GetDefaultMemberType()).Returns("Member");
|
||||
mServiceMock.Setup(
|
||||
service => service.CreateWithIdentity(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>(), It.IsAny<bool>()))
|
||||
service => service.CreateWithIdentity(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>()))
|
||||
.Callback((string u, string e, string p, string m, bool b) =>
|
||||
{
|
||||
createdMember = new Member("test", e, u, p, memberType);
|
||||
|
||||
@@ -36,7 +36,7 @@ namespace Umbraco.Tests.Services
|
||||
// Arrange
|
||||
var userService = ServiceContext.UserService;
|
||||
var userType = userService.GetUserTypeByAlias("admin");
|
||||
var user = ServiceContext.UserService.CreateMemberWithIdentity("test1", "test1@test.com", "123456", userType);
|
||||
var user = ServiceContext.UserService.CreateUserWithIdentity("test1", "test1@test.com", "123456", userType);
|
||||
var contentType = MockedContentTypes.CreateSimpleContentType();
|
||||
ServiceContext.ContentTypeService.Save(contentType);
|
||||
var content = new[]
|
||||
@@ -63,7 +63,7 @@ namespace Umbraco.Tests.Services
|
||||
// Arrange
|
||||
var userService = ServiceContext.UserService;
|
||||
var userType = userService.GetUserTypeByAlias("admin");
|
||||
var user = ServiceContext.UserService.CreateMemberWithIdentity("test1", "test1@test.com", "123456", userType);
|
||||
var user = ServiceContext.UserService.CreateUserWithIdentity("test1", "test1@test.com", "123456", userType);
|
||||
var contentType = MockedContentTypes.CreateSimpleContentType();
|
||||
ServiceContext.ContentTypeService.Save(contentType);
|
||||
var content = new[]
|
||||
@@ -97,7 +97,7 @@ namespace Umbraco.Tests.Services
|
||||
{
|
||||
var userType = MockedUserType.CreateUserType();
|
||||
ServiceContext.UserService.SaveUserType(userType);
|
||||
var user = ServiceContext.UserService.CreateMemberWithIdentity("JohnDoe", "john@umbraco.io", "12345", userType);
|
||||
var user = ServiceContext.UserService.CreateUserWithIdentity("JohnDoe", "john@umbraco.io", "12345", userType);
|
||||
|
||||
ServiceContext.UserService.Delete(user, true);
|
||||
var deleted = ServiceContext.UserService.GetUserById(user.Id);
|
||||
@@ -111,7 +111,7 @@ namespace Umbraco.Tests.Services
|
||||
{
|
||||
var userType = MockedUserType.CreateUserType();
|
||||
ServiceContext.UserService.SaveUserType(userType);
|
||||
var user = ServiceContext.UserService.CreateMemberWithIdentity("JohnDoe", "john@umbraco.io", "12345", userType);
|
||||
var user = ServiceContext.UserService.CreateUserWithIdentity("JohnDoe", "john@umbraco.io", "12345", userType);
|
||||
|
||||
ServiceContext.UserService.Delete(user);
|
||||
var deleted = ServiceContext.UserService.GetUserById(user.Id);
|
||||
@@ -125,7 +125,7 @@ namespace Umbraco.Tests.Services
|
||||
{
|
||||
var userType = MockedUserType.CreateUserType();
|
||||
ServiceContext.UserService.SaveUserType(userType);
|
||||
var user = ServiceContext.UserService.CreateMemberWithIdentity("JohnDoe", "john@umbraco.io", "12345", userType);
|
||||
var user = ServiceContext.UserService.CreateUserWithIdentity("JohnDoe", "john@umbraco.io", "12345", userType);
|
||||
|
||||
Assert.IsTrue(ServiceContext.UserService.Exists("JohnDoe"));
|
||||
Assert.IsFalse(ServiceContext.UserService.Exists("notFound"));
|
||||
@@ -136,7 +136,7 @@ namespace Umbraco.Tests.Services
|
||||
{
|
||||
var userType = MockedUserType.CreateUserType();
|
||||
ServiceContext.UserService.SaveUserType(userType);
|
||||
var user = ServiceContext.UserService.CreateMemberWithIdentity("JohnDoe", "john@umbraco.io", "12345", userType);
|
||||
var user = ServiceContext.UserService.CreateUserWithIdentity("JohnDoe", "john@umbraco.io", "12345", userType);
|
||||
|
||||
Assert.IsNotNull(ServiceContext.UserService.GetByEmail(user.Email));
|
||||
Assert.IsNull(ServiceContext.UserService.GetByEmail("do@not.find"));
|
||||
@@ -147,7 +147,7 @@ namespace Umbraco.Tests.Services
|
||||
{
|
||||
var userType = MockedUserType.CreateUserType();
|
||||
ServiceContext.UserService.SaveUserType(userType);
|
||||
var user = ServiceContext.UserService.CreateMemberWithIdentity("JohnDoe", "john@umbraco.io", "12345", userType);
|
||||
var user = ServiceContext.UserService.CreateUserWithIdentity("JohnDoe", "john@umbraco.io", "12345", userType);
|
||||
|
||||
Assert.IsNotNull(ServiceContext.UserService.GetByUsername(user.Username));
|
||||
Assert.IsNull(ServiceContext.UserService.GetByUsername("notFound"));
|
||||
@@ -158,7 +158,7 @@ namespace Umbraco.Tests.Services
|
||||
{
|
||||
var userType = MockedUserType.CreateUserType();
|
||||
ServiceContext.UserService.SaveUserType(userType);
|
||||
var user = ServiceContext.UserService.CreateMemberWithIdentity("mydomain\\JohnDoe", "john@umbraco.io", "12345", userType);
|
||||
var user = ServiceContext.UserService.CreateUserWithIdentity("mydomain\\JohnDoe", "john@umbraco.io", "12345", userType);
|
||||
|
||||
Assert.IsNotNull(ServiceContext.UserService.GetByUsername(user.Username));
|
||||
Assert.IsNull(ServiceContext.UserService.GetByUsername("notFound"));
|
||||
@@ -169,7 +169,7 @@ namespace Umbraco.Tests.Services
|
||||
{
|
||||
var userType = MockedUserType.CreateUserType();
|
||||
ServiceContext.UserService.SaveUserType(userType);
|
||||
var user = ServiceContext.UserService.CreateMemberWithIdentity("JohnDoe", "john@umbraco.io", "12345", userType);
|
||||
var user = ServiceContext.UserService.CreateUserWithIdentity("JohnDoe", "john@umbraco.io", "12345", userType);
|
||||
|
||||
Assert.IsNotNull(ServiceContext.UserService.GetUserById(user.Id));
|
||||
Assert.IsNull(ServiceContext.UserService.GetUserById(9876));
|
||||
@@ -351,7 +351,7 @@ namespace Umbraco.Tests.Services
|
||||
var userType = userService.GetUserTypeByAlias("admin");
|
||||
|
||||
// Act
|
||||
var membershipUser = userService.CreateMemberWithIdentity("JohnDoe", "john@umbraco.io", "12345", userType);
|
||||
var membershipUser = userService.CreateUserWithIdentity("JohnDoe", "john@umbraco.io", "12345", userType);
|
||||
|
||||
// Assert
|
||||
Assert.That(membershipUser.HasIdentity, Is.True);
|
||||
@@ -374,7 +374,7 @@ namespace Umbraco.Tests.Services
|
||||
var hash = new HMACSHA1();
|
||||
hash.Key = Encoding.Unicode.GetBytes(password);
|
||||
var encodedPassword = Convert.ToBase64String(hash.ComputeHash(Encoding.Unicode.GetBytes(password)));
|
||||
var membershipUser = userService.CreateMemberWithIdentity("JohnDoe", "john@umbraco.io", encodedPassword, userType);
|
||||
var membershipUser = userService.CreateUserWithIdentity("JohnDoe", "john@umbraco.io", encodedPassword, userType);
|
||||
|
||||
// Assert
|
||||
Assert.That(membershipUser.HasIdentity, Is.True);
|
||||
@@ -390,8 +390,8 @@ namespace Umbraco.Tests.Services
|
||||
{
|
||||
var userType = ServiceContext.UserService.GetUserTypeByAlias("admin");
|
||||
|
||||
var user1 = ServiceContext.UserService.CreateMemberWithIdentity("test1", "test1@test.com", "test1", userType);
|
||||
var user2 = ServiceContext.UserService.CreateMemberWithIdentity("test2", "test2@test.com", "test2", userType);
|
||||
var user1 = ServiceContext.UserService.CreateUserWithIdentity("test1", "test1@test.com", "test1", userType);
|
||||
var user2 = ServiceContext.UserService.CreateUserWithIdentity("test2", "test2@test.com", "test2", userType);
|
||||
|
||||
//adds some allowed sections
|
||||
user1.AddAllowedSection("test");
|
||||
@@ -415,7 +415,7 @@ namespace Umbraco.Tests.Services
|
||||
{
|
||||
// Arrange
|
||||
var userType = ServiceContext.UserService.GetUserTypeByAlias("admin");
|
||||
var user = ServiceContext.UserService.CreateMemberWithIdentity("test1", "test1@test.com", "test1", userType);
|
||||
var user = ServiceContext.UserService.CreateUserWithIdentity("test1", "test1@test.com", "test1", userType);
|
||||
|
||||
// Act
|
||||
|
||||
@@ -432,7 +432,7 @@ namespace Umbraco.Tests.Services
|
||||
{
|
||||
// Arrange
|
||||
var userType = ServiceContext.UserService.GetUserTypeByAlias("admin");
|
||||
var user = (IUser)ServiceContext.UserService.CreateMemberWithIdentity("test1", "test1@test.com", "test1", userType);
|
||||
var user = (IUser)ServiceContext.UserService.CreateUserWithIdentity("test1", "test1@test.com", "test1", userType);
|
||||
|
||||
// Act
|
||||
|
||||
@@ -449,7 +449,7 @@ namespace Umbraco.Tests.Services
|
||||
{
|
||||
// Arrange
|
||||
var userType = ServiceContext.UserService.GetUserTypeByAlias("admin");
|
||||
var originalUser = (User)ServiceContext.UserService.CreateMemberWithIdentity("test1", "test1@test.com", "test1", userType);
|
||||
var originalUser = (User)ServiceContext.UserService.CreateUserWithIdentity("test1", "test1@test.com", "test1", userType);
|
||||
|
||||
// Act
|
||||
|
||||
|
||||
Reference in New Issue
Block a user