Esempio n. 1
0
 public UserImpl(ISchema schema, UserModel model)
 {
     Schema = schema;
     Login = model.Login;
     Name = model.Name;
     Email = model.Email;
     Active = model.Active;
     PasswordHash = model.PasswordHash;
 }
Esempio n. 2
0
        public IUser CreateUser(ISchema schema, string login, string name, string email)
        {
            Assert.NullArgument(schema, "schema");
            Assert.EmptyString(login, "login");
            Assert.EmptyString(name, "name");
            Assert.EmptyString(email, "email");

            IUser user = null;
            Sync(() =>
            {
                user = GetUserInternal(login, false);
                if (user == null)
                {
                    var model = new UserModel()
                    {
                        Login = login,
                        Name = name,
                        Email = email,
                        SchemaId = schema.Id
                    };
                    if (_store.Save(model))
                    {
                        user = new UserImpl(schema, model);
                        _users[login.ToLower()] = user;
                    }
                    else
                        throw new Exception("Não foi possivel criar o esquema de usuários - erro ao persistir as informações");
                }
                else
                    throw new Exception("Já existe um usuário com o login " + login);
            });
            return user;
        }