Ejemplo n.º 1
0
        public void RegisterListeners()
        {
            var userCreateListener = _container.Resolve <IListener <UserCreated> >();

            _eventAggregatorProvider.GetEventAggregator().AddListener(userCreateListener, true);
            var companyCreatedListener = _container.Resolve <IListener <CompanyCreated> >();

            _eventAggregatorProvider.GetEventAggregator().AddListener(companyCreatedListener, true);
        }
Ejemplo n.º 2
0
        public override SingleEntityResponse <CompanyModel> Create(CompanyModel model)
        {
            var newCopmanyValidator = new NewCompanyValidator(_repository, _translationsService);
            var validationResult    = newCopmanyValidator.Validate(model);

            if (!validationResult.IsValid)
            {
                return(new SingleEntityResponse <CompanyModel>(model, validationResult.GetErrorsObjects().ToList()));
            }

            var response = base.Create(model);

            if (response.IsValid)
            {
                _eventAggregatorProvider.GetEventAggregator().SendMessage(new CompanyCreated(model));
                //TODO: handle somehow the fact that user creation failed.
            }

            return(response);
        }
Ejemplo n.º 3
0
        public SingleEntityResponse <UserModel> CreateFromCompany(Guid companyId, string login)
        {
            var password = StringsGenerators.GenerateString(8);
            var model    = new UserModel
            {
                Email     = login,
                CompanyId = companyId,
                Password  = PasswordHasher.Hash(password)
            };

            var response = base.Create(model);

            //TODO: this is dirty hack, need to unhash password form db
            model.Password = password;

            if (response.IsValid)
            {
                _eventAggregatorProvider.GetEventAggregator().SendMessage(new UserCreated(model));
            }

            return(response);
        }