public InvitationService(IUnitOfWork unitOfWork, IRepository <Invitation> invitationRepositoryEF, IRepository <User> userRepositoryEF, IInvitationFactory invitationFactory) { if (unitOfWork == null) { throw new ArgumentNullException(string.Format(ExceptionConstants.ArgumentCannotBeNull, "unitOfWork")); } if (invitationRepositoryEF == null) { throw new ArgumentNullException(string.Format(ExceptionConstants.ArgumentCannotBeNull, "invitationRepositoryEF")); } if (userRepositoryEF == null) { throw new ArgumentNullException(string.Format(ExceptionConstants.ArgumentCannotBeNull, "userRepositoryEF")); } if (invitationFactory == null) { throw new ArgumentNullException(string.Format(ExceptionConstants.ArgumentCannotBeNull, "invitationFactory")); } this.unitOfWork = unitOfWork; this.invitationRepositoryEF = invitationRepositoryEF; this.userRepositoryEF = userRepositoryEF; this.invitationFactory = invitationFactory; }
public IActionResult Get(Guid id) { IActionResult result = null; if (result == null && id.Equals(Guid.Empty)) { result = BadRequest("Missing id"); } if (result == null) { using (ILifetimeScope scope = m_container.BeginLifetimeScope()) { IInvitationFactory factory = scope.Resolve <IInvitationFactory>(); IInvitation invitation = factory.Get(m_settings.Value, id); if (invitation == null) { result = NotFound(); } else { IMapper mapper = new Mapper(m_mapperConfiguration); result = Ok(mapper.Map <Models.Invitation>(invitation)); } } } return(result); }
public IActionResult Update([FromBody] Models.Invitation invitation) { IActionResult result = null; IMapper mapper = null; IInvitation innerInvitation = null; if (result == null && invitation == null) { result = BadRequest("Missing invitation data"); } if (result == null && (!invitation.InvitationId.HasValue || invitation.InvitationId.Equals(Guid.Empty))) { result = BadRequest("Missing id"); } if (result == null && !invitation.EventDate.HasValue) { result = BadRequest("Missing event date"); } if (result == null && !invitation.RSVPDueDate.HasValue) { result = BadRequest("Missing RSVP date"); } if (result == null && string.IsNullOrEmpty(invitation.Title)) { result = BadRequest("Missing title"); } if (result == null && string.IsNullOrEmpty(invitation.Invitee)) { result = BadRequest("Missing invitee"); } if (result == null) { mapper = new Mapper(m_mapperConfiguration); using (ILifetimeScope scope = m_container.BeginLifetimeScope()) { IInvitationFactory factory = scope.Resolve <IInvitationFactory>(); innerInvitation = factory.Get(m_settings.Value, invitation.InvitationId.Value); if (innerInvitation == null) { result = NotFound(); } else { mapper.Map <Models.Invitation, IInvitation>(invitation, innerInvitation); IInvitationSaver saver = scope.Resolve <IInvitationSaver>(); saver.Update(m_settings.Value, innerInvitation); invitation = mapper.Map <Models.Invitation>(innerInvitation); result = Ok(invitation); } } } return(result); }
public InvitationService(IInvitationFactory invitationFactory, IEfRepository <Invitation> invitationRepository, IUnitOfWork unitOfWork) { this.invitationFactory = invitationFactory; this.invitationRepository = invitationRepository; this.unitOfWork = unitOfWork; }
public static Invitation Map(this IInvitationEntity entity, IInvitationFactory factory) { var invitation = factory.CreateInvitation(); entity.UserToUserRequestEntity.MapTo(invitation); invitation.InviterId = entity.inviterId; invitation.InviteeId = entity.inviteeId; invitation.InviteeEmailAddress = entity.inviteeEmailAddress; return(invitation); }
public SendInvitesTests() { var options = new DbContextOptionsBuilder <EventContext>() .UseInMemoryDatabase(databaseName: "Add_writes_to_database") .Options; _context = new EventContext(options); _invitationFactory = new Infrastructure.InvitationFactory(); _eventFactory = new Infrastructure.EventFactory(); _eventRepository = new EventRepository(_context); _emailService = new Mock <IEmailService>().Object; }
public IActionResult GetAll() { IActionResult result = null; using (ILifetimeScope scope = m_container.BeginLifetimeScope()) { IInvitationFactory factory = scope.Resolve <IInvitationFactory>(); IEnumerable <IInvitation> invitations = factory.GetAll(m_settings.Value); IMapper mapper = new Mapper(m_mapperConfiguration); result = Ok( invitations.Select <IInvitation, Models.Invitation>(i => mapper.Map <Models.Invitation>(i)) ); } return(result); }
public IActionResult CreateResponse(Guid id, [FromBody] Models.InvitationResponse response) { IActionResult result = null; if (result == null && id.Equals(Guid.Empty)) { result = BadRequest("Missing id"); } if (result == null && response == null) { result = BadRequest("Missing response data"); } if (result == null) { using (ILifetimeScope scope = m_container.BeginLifetimeScope()) { IInvitationFactory factory = scope.Resolve <IInvitationFactory>(); IInvitation invitation = factory.Get(m_settings.Value, id); if (invitation == null) { result = NotFound(); } else { IInvitationResponse innerResponse = invitation.CreateResponse(response.IsAttending, response.AttendeeCount, response.Note); IInvitationResponseSaver saver = scope.Resolve <IInvitationResponseSaver>(); saver.Create(m_settings.Value, innerResponse); IMapper mapper = new Mapper(m_mapperConfiguration); result = Ok(mapper.Map <Models.InvitationResponse>(innerResponse)); } } } return(result); }
private void SetupTest() { _invitationFactory = new InvitationFactory(); }
public NewEventAssembler(IInvitationFactory invitationFactory, IEventFactory eventFactory) { _invitationFactory = invitationFactory; _eventFactory = eventFactory; }
public SendInvitesUseCase(DbContext context, IInvitationFactory invitationsFactory, IEmailService emailService) { _context = context; _invitationsFactory = invitationsFactory; _emailService = emailService; }
public PostEventController(IEventFactory eventFactory, IInvitationFactory invitationFactory) { _eventFactory = eventFactory; _invitationFactory = invitationFactory; }
public DTOConverter(IEventFactory eventFactory, IInvitationFactory invitationFactory) { _eventFactory = eventFactory; _invitationFactory = invitationFactory; }