public LocalPrecisaEstarDisponivelRule(IColisaoLocalPalestraChecker colisaoLocalChecker, Local local, DateTimeOffset dataInicial, DateTimeOffset dataFinal) { _colisaoLocalChecker = colisaoLocalChecker; _local = local; _dataInicial = dataInicial; _dataFinal = dataFinal; }
public CriarPalestraCommandHandler(IColisaoLocalPalestraChecker colisaoLocalChecker, IPalestraRepository repository, IUnitOfWork unitOfWork, ILembreteOrganizadorScheduler lembreteOrganizadorScheduler) { _colisaoLocalChecker = colisaoLocalChecker; _repository = repository; _unitOfWork = unitOfWork; _lembreteOrganizadorScheduler = lembreteOrganizadorScheduler; }
public Palestra(string tema, string titulo, DateTimeOffset dataInicial, TimeSpan duracao, Local local, Email organizadorEmail, IColisaoLocalPalestraChecker colisaoLocalChecker) { Id = new PalestraId(); Tema = tema; Titulo = titulo; DataInicial = dataInicial; DataFinal = dataInicial + duracao; Local = local; OrganizadorEmail = organizadorEmail; _participacoes = new List <Participacao>(); CheckRule(new LocalPrecisaEstarDisponivelRule(colisaoLocalChecker, Local, dataInicial, DataFinal)); Status = StatusPalestra.Planejado; AddDomainEvent(new PalestraCriadaEvent(Id)); }