Exemple #1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="SourcesModule" /> class.
        /// </summary>
        public SourcesModule(
            ISourcesRepository repository,
            IUriTemplateExpander expander,
            IIriTemplateFactory templateFactory,
            IModelTemplateProvider modelTemplateProvider,
            ISupportedClassMetaProvider supportedClass)
            : base(modelTemplateProvider)
        {
            this.expander        = expander;
            this.expander        = expander;
            this.templateFactory = templateFactory;
            this.supportedClass  = supportedClass;

            this.Get <Brochure>(async r => await this.GetSingle(repository.GetBrochure));
            this.Get <Book>(async r => await this.GetSingle(repository.GetBook));
            this.Get <Magazine>(async r => await this.GetSingle(repository.GetMagazine));
            this.Get <Collection <Issue> >(async r => await this.GetSingle(repository.GetMagazineIssues, new Collection <Issue>()));
            this.Get <Issue>(async r => await this.GetSingle(repository.GetIssue));

            using (this.Templates)
            {
                this.Get <Collection <Brochure> >(async r => await this.GetPage <Brochure, BrochureFilters>((int?)r.page, repository.GetBrochures));
                this.Get <Collection <Magazine> >(async r => await this.GetPage <Magazine, MagazineFilters>((int?)r.page, repository.GetMagazines));
                this.Get <Collection <Book> >(async r => await this.GetPage <Book, BookFilters>((int?)r.page, repository.GetBooks));
            }
        }
Exemple #2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="IriTemplateFactory"/> class.
 /// </summary>
 public IriTemplateFactory(
     IPropertyRangeRetrievalPolicy propertyRange,
     IModelTemplateProvider modelTemplateProvider)
 {
     this.propertyRange         = propertyRange;
     this.modelTemplateProvider = modelTemplateProvider;
 }
        public SourceStorageLocationModule(
            IModelTemplateProvider provider,
            ISourceContext sourcesContext)
            : base(provider)
        {
            this.RequiresPermissions(Permissions.AdminSources);

            this.sourcesContext = sourcesContext;
            this.Put <StorageLocation>(this.UpdateStorageLocation);
        }
        public WishlistModule(
            IModelTemplateProvider provider,
            IIriTemplateFactory templateFactory,
            IWishlistRepository wishlistRepository,
            IWishlistPersistence wishlistPersistence)
            : base(provider)
        {
            this.templateFactory     = templateFactory;
            this.wishlistRepository  = wishlistRepository;
            this.wishlistPersistence = wishlistPersistence;

            using (this.Templates)
            {
                this.Put <WishlistItem>(this.PutWishlistItem);
                this.Get <Collection <WishlistItem> >(this.GetWishlist);
            }
        }
Exemple #5
0
        public IssuesModule(IIriTemplateFactory templateFactory, IModelTemplateProvider provider)
            : base(provider)
        {
            this.templateFactory = templateFactory;
            using (Templates)
            {
                Get <Issue>(_ => new Issue
                {
                    Id          = Request.Url,
                    Content     = "This Hydra library is not yet complete",
                    DateCreated = new DateTime(2016, 3, 21),
                    IsResolved  = _.id % 2 == 0,
                    ProjectId   = (IriRef)"/project/argolis",
                    Submitter   = new User {
                        Name = "Tomasz", LastName = "Pluskiewicz"
                    },
                    Title = "Complete implementation"
                });

                Get <Collection <Issue> >(_ => StubCollection(this.Bind <IssueFilter>()));
            }
        }
        public SourcesUpdateModule(
            ISourcesPersistence persistence,
            ISourcesRepository repository,
            IModelTemplateProvider modelTemplateProvider,
            IUriTemplateExpander expander,
            IPdfService pdfService)
            : base(modelTemplateProvider)
        {
            this.RequiresAnyPermissions(Permissions.WriteSources, Permissions.AdminSources);

            this.expander   = expander;
            this.pdfService = pdfService;
            this.Put <Brochure>(async r =>
                                await this.PutSingle(brochure => persistence.SaveBrochure(brochure), repository.GetBrochure));
            this.Post <SourceContent>(
                async r => await this.UploadPdf((int)r.id, repository.GetBrochure, brochure => persistence.SaveBrochure(brochure, true)));
            this.Delete <SourceContent>(
                async r => await this.DeletePdf((int)r.id, repository.GetBrochure, brochure => persistence.SaveBrochure(brochure, true)));
            using (this.Templates)
            {
                this.Post <Collection <Brochure> >(async r =>
                                                   await this.CreateBrochure(persistence.CreateBrochure, repository.GetBrochure));
            }
        }
Exemple #7
0
 /// <summary>
 /// Initializes a new instance of the <see cref="TunnelVisionLabsUriTemplateMatcher"/> class.
 /// </summary>
 /// <param name="templates">The template provider.</param>
 public TunnelVisionLabsUriTemplateMatcher(IModelTemplateProvider templates)
 {
     this.templates = templates;
 }
Exemple #8
0
 public TunnelVisionLabsUriTemplateMatcherTests()
 {
     this.templates = A.Fake <IModelTemplateProvider>(options => options.Strict());
     this.matcher   = new TunnelVisionLabsUriTemplateMatcher(this.templates);
 }
Exemple #9
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ArgolisModule"/> class.
 /// </summary>
 protected ArgolisModule(IModelTemplateProvider provider, string modulePath)
     : base(modulePath)
 {
     this.provider = provider;
 }
Exemple #10
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ArgolisModule"/> class.
 /// </summary>
 protected ArgolisModule(IModelTemplateProvider provider)
 {
     this.provider = provider;
 }
Exemple #11
0
 /// <summary>
 /// Registers the specified provider.
 /// </summary>
 /// <param name="provider">The provider.</param>
 public void Register(IModelTemplateProvider provider)
 {
     _modelTemplateProviders.Add(provider);
 }
Exemple #12
0
 public ArgolisModuleTestable(IModelTemplateProvider provider)
     : base(provider)
 {
 }
Exemple #13
0
        public ArgolisModuleTests()
        {
            this.templateProvider = A.Fake <IModelTemplateProvider>();

            A.CallTo(() => this.templateProvider.GetTemplate(typeof(object))).Returns(TestTemplate);
        }