private void Register(Messages.Authenticator.RegisterCommand cmd) { Console.WriteLine("Register command"); if (String.IsNullOrEmpty(cmd.Username) || cmd.Username.Length < 6) { var invalidData = new Messages.Authenticator.FormInvalidData("username"); Sender.Tell(invalidData); return; } if (String.IsNullOrEmpty(cmd.Name) || cmd.Name.Length < 6) { Sender.Tell(new Messages.Authenticator.FormInvalidData("name")); return; } if (String.IsNullOrEmpty(cmd.Password) || cmd.Password.Length < 6) { Sender.Tell(new Messages.Authenticator.FormInvalidData("password")); return; } if (String.IsNullOrEmpty(cmd.Password2) || cmd.Password2 != cmd.Password) { Sender.Tell(new Messages.Authenticator.FormInvalidData("password != password2")); return; } using (MyContext context = MyContext.Connect(GetPath())) { if (context.Users.Any(u => u.Username == cmd.Username)) { Sender.Tell(new Messages.Authenticator.RegisterUsernameExists()); } context.Users.Add(new User { Name = cmd.Name, Username = cmd.Username, Password = cmd.Password, //ApiKey = generateApiKey() }); context.SaveChanges(); Sender.Tell(new Messages.Authenticator.RegisterSuccess()); } }
public async Task <object> Register([FromBody] Messages.Authenticator.RegisterCommand cmd) { var result = await authenticator.Register(cmd.Name, cmd.Username, cmd.Password, cmd.Password2); if (result is Messages.Authenticator.RegisterSuccess) { Response.StatusCode = 200; return(result); } if (result is Messages.Authenticator.RegisterUsernameExists) { Response.StatusCode = 400; return(result); } if (result is Messages.Authenticator.FormInvalidData) { Response.StatusCode = 400; return(result); } Response.StatusCode = 500; return(new object()); }