protected AuthenticatedGetModule(IUnitOfWork unitOfWork, IAuthenticatedQueryHandler <TQuery> queryHandler, string path) { this.unitOfWork = unitOfWork; this.queryHandler = queryHandler; this.RequiresHttps(); this.RequiresAuthentication(); Get[path] = _ => { CustomUserIdentity user = this.Context.CurrentUser as CustomUserIdentity; TQuery query = this.Bind <TQuery>(); query.UserId = user.Id; object response = null; unitOfWork.DoInTransaction(() => { response = queryHandler.Handle(query); }); return(response); }; }
public ListRequestedLinksModule(NHibernateUnitOfWork unitOfWork, IAuthenticatedQueryHandler <ListRequestedLinks> queryHandler) : base(unitOfWork, queryHandler, "/libraries/{AggregateId}/links/sent") { }
public ListLibrariesModule(NHibernateUnitOfWork unitOfWork, IAuthenticatedQueryHandler <ListLibraries> messageHandler) : base(unitOfWork, messageHandler, "/libraries/") { }
public SearchForBookModule(NHibernateUnitOfWork unitOfWork, IAuthenticatedQueryHandler <SearchForBook> queryHandler) : base(unitOfWork, queryHandler, "/books/{SearchString}") { }
public ListLibraryBooksModule(NHibernateUnitOfWork unitOfWork, IAuthenticatedQueryHandler <ListLibraryBooks> queryHandler) : base(unitOfWork, queryHandler, "/libraries/{AggregateId}/books/") { }