예제 #1
0
 public void Configuration(IAppBuilder app)
 {
     SetNuGetNotRunningInVisualStudio();
     SignatureConversions.AddConversions(app);
     Settings = CreateSettings();
     Start(app, CreateContainer(app));
 }
 protected override ILuceneRepositoryConfigurator InitializeRepositoryConfigurator(INuGetWebApiSettings settings)
 {
     Configurator = new Mock<ILuceneRepositoryConfigurator>();
     Repository = new Mock<ILucenePackageRepository>();
     Configurator.Setup(c => c.Repository).Returns(Repository.Object);
     return Configurator.Object;
 }
예제 #3
0
 public void Configuration(IAppBuilder app)
 {
     SetNuGetNotRunningInVisualStudio();
     SignatureConversions.AddConversions(app);
     Settings = CreateSettings();
     Start(app, CreateContainer(app));
 }
예제 #4
0
        protected virtual UserStore InitializeUserStore(INuGetWebApiSettings settings)
        {
            var usersDataProvider = InitializeUsersDataProvider(settings);
            var userStore         = new UserStore(usersDataProvider)
            {
                LocalAdministratorApiKey   = settings.LocalAdministratorApiKey,
                HandleLocalRequestsAsAdmin = settings.HandleLocalRequestsAsAdmin
            };

            userStore.Initialize();
            return(userStore);
        }
예제 #5
0
        protected virtual LuceneDataProvider InitializeUsersDataProvider(INuGetWebApiSettings settings)
        {
            var usersIndexPath = settings.LuceneUsersIndexPath;
            var directoryInfo  = new DirectoryInfo(usersIndexPath);
            var dir            = FSDirectory.Open(directoryInfo, new NativeFSLockFactory(directoryInfo));
            var provider       = new LuceneDataProvider(dir, Version.LUCENE_30)
            {
                Settings =
                {
                    EnableMultipleEntities = false,
                    MergeFactor            = 2
                }
            };

            return(provider);
        }
예제 #6
0
        protected virtual ILuceneRepositoryConfigurator InitializeRepositoryConfigurator(INuGetWebApiSettings settings)
        {
            var cfg = new LuceneRepositoryConfigurator
            {
                EnablePackageFileWatcher = settings.EnablePackageFileWatcher,
                GroupPackageFilesById = settings.GroupPackageFilesById,
                LuceneIndexPath = settings.LucenePackagesIndexPath,
                PackagePath = settings.PackagesPath,
                PackageOverwriteMode = settings.PackageOverwriteMode,
                LuceneMergeFactor = settings.LuceneMergeFactor,
                DisablePackageHash = settings.DisablePackageHash,
                IgnorePackageFiles = settings.IgnorePackageFiles
            };

            cfg.Initialize();

            return cfg;
        }
예제 #7
0
        protected virtual void LoadAuthMiddleware(ContainerBuilder builder, INuGetWebApiSettings settings)
        {
            builder.RegisterType <LuceneApiKeyAuthentication>().As <IApiKeyAuthentication>().PropertiesAutowired();
            builder.RegisterType <ApiKeyAuthenticationMiddleware>().InstancePerRequest().PropertiesAutowired();

            if (settings.HandleLocalRequestsAsAdmin)
            {
                builder.RegisterType <LocalRequestAuthenticationMiddleware>().InstancePerRequest().PropertiesAutowired();
            }

            if (settings.AllowAnonymousPackageChanges)
            {
                builder.RegisterType <AnonymousPackageManagerMiddleware>().InstancePerRequest().PropertiesAutowired();
            }

            if (settings.RoleMappingsEnabled)
            {
                builder.RegisterType <RoleMappingAuthenticationMiddleware>().InstancePerRequest().PropertiesAutowired();
            }
        }
        public static HubConfiguration CreateHubConfiguration(ILifetimeScope lifetimeScope, INuGetWebApiSettings settings)
        {
            var hubConfiguration = new HubConfiguration
            {
                EnableDetailedErrors = settings.ShowExceptionDetails,
                EnableJSONP = settings.EnableCrossDomainRequests,
                Resolver = new AutofacDependencyResolver(lifetimeScope)
            };

            var pipeline = hubConfiguration.Resolver.Resolve<IHubPipeline>();
            pipeline.AddModule(new SignalRLoggingModule());

            var jsonSettings = new JsonSerializerSettings
            {
                ContractResolver = new SelectiveCamelCaseContractResolver(),
                Converters = { new StringEnumConverter() },
            };

            var jsonNetSerializer = JsonSerializer.Create(jsonSettings);

            hubConfiguration.Resolver.Register(typeof(JsonSerializer), () => jsonNetSerializer);

            return hubConfiguration;
        }
예제 #9
0
 public InMemoryLuceneNuGetWebApiModule(INuGetWebApiSettings settings) : base(settings)
 {
 }
        public static HubConfiguration CreateHubConfiguration(ILifetimeScope lifetimeScope, INuGetWebApiSettings settings)
        {
            var hubConfiguration = new HubConfiguration
            {
                EnableDetailedErrors = settings.ShowExceptionDetails,
                EnableJSONP          = settings.EnableCrossDomainRequests,
                Resolver             = new AutofacDependencyResolver(lifetimeScope)
            };

            var pipeline = hubConfiguration.Resolver.Resolve <IHubPipeline>();

            pipeline.AddModule(new SignalRLoggingModule());

            var jsonSettings = new JsonSerializerSettings
            {
                ContractResolver = new SelectiveCamelCaseContractResolver(),
                Converters       = { new StringEnumConverter() },
            };

            var jsonNetSerializer = JsonSerializer.Create(jsonSettings);

            hubConfiguration.Resolver.Register(typeof(JsonSerializer), () => jsonNetSerializer);

            return(hubConfiguration);
        }
예제 #11
0
        protected virtual void LoadAuthMiddleware(ContainerBuilder builder, INuGetWebApiSettings settings)
        {
            builder.RegisterType<LuceneApiKeyAuthentication>().As<IApiKeyAuthentication>().PropertiesAutowired();
            builder.RegisterType<ApiKeyAuthenticationMiddleware>().InstancePerRequest().PropertiesAutowired();

            if (settings.HandleLocalRequestsAsAdmin)
            {
                builder.RegisterType<LocalRequestAuthenticationMiddleware>().InstancePerRequest().PropertiesAutowired();
            }

            if (settings.AllowAnonymousPackageChanges)
            {
                builder.RegisterType<AnonymousPackageManagerMiddleware>().InstancePerRequest().PropertiesAutowired();
            }

            if (settings.RoleMappingsEnabled)
            {
                builder.RegisterType<RoleMappingAuthenticationMiddleware>().InstancePerRequest().PropertiesAutowired();
            }
        }
예제 #12
0
        protected virtual LuceneDataProvider InitializeUsersDataProvider(INuGetWebApiSettings settings)
        {
            var usersIndexPath = settings.LuceneUsersIndexPath;
            var directoryInfo = new DirectoryInfo(usersIndexPath);
            var dir = FSDirectory.Open(directoryInfo, new NativeFSLockFactory(directoryInfo));
            var provider = new LuceneDataProvider(dir, Version.LUCENE_30)
            {
                Settings =
                {
                    EnableMultipleEntities = false,
                    MergeFactor = 2
                }
            };

            return provider;
        }
예제 #13
0
 public NuGetWebApiModule(INuGetWebApiSettings settings)
 {
     this.settings = settings;
 }
예제 #14
0
 protected override LuceneDataProvider InitializeUsersDataProvider(INuGetWebApiSettings settings)
 {
     return(new LuceneDataProvider(new RAMDirectory(), Version.LUCENE_30));
 }
예제 #15
0
 protected virtual IUserStore InitializeUserStore(INuGetWebApiSettings settings)
 {
     var usersDataProvider = InitializeUsersDataProvider(settings);
     var userStore = new UserStore(usersDataProvider)
     {
         LocalAdministratorApiKey = settings.LocalAdministratorApiKey,
         HandleLocalRequestsAsAdmin = settings.HandleLocalRequestsAsAdmin
     };
     userStore.Initialize();
     return userStore;
 }
예제 #16
0
 public NuGetWebApiModule(INuGetWebApiSettings settings)
 {
     this.settings = settings;
 }
예제 #17
0
        protected virtual ILuceneRepositoryConfigurator InitializeRepositoryConfigurator(INuGetWebApiSettings settings)
        {
            var cfg = new LuceneRepositoryConfigurator
            {
                EnablePackageFileWatcher = settings.EnablePackageFileWatcher,
                GroupPackageFilesById    = settings.GroupPackageFilesById,
                LuceneIndexPath          = settings.LucenePackagesIndexPath,
                PackagePath          = settings.PackagesPath,
                PackageOverwriteMode = settings.PackageOverwriteMode,
                LuceneMergeFactor    = settings.LuceneMergeFactor,
                DisablePackageHash   = settings.DisablePackageHash,
                IgnorePackageFiles   = settings.IgnorePackageFiles
            };

            cfg.Initialize();

            return(cfg);
        }
예제 #18
0
 public InMemoryLuceneNuGetWebApiModule(INuGetWebApiSettings settings) : base(settings)
 {
 }
예제 #19
0
 protected override UserStore InitializeUserStore(INuGetWebApiSettings settings)
 {
     return(new UserStore(null));
 }
예제 #20
0
            protected override ILuceneRepositoryConfigurator InitializeRepositoryConfigurator(INuGetWebApiSettings settings)
            {
                var cfg = new InMemoryLuceneRepositoryConfigurator
                {
                    EnablePackageFileWatcher = false,
                    GroupPackageFilesById = false,
                    PackagePath = settings.PackagesPath,
                    PackageOverwriteMode = settings.PackageOverwriteMode
                };

                cfg.Initialize();

                return cfg;
            }
 protected override IUserStore InitializeUserStore(INuGetWebApiSettings settings)
 {
     UserStore = new Mock<IUserStore>();
     return UserStore.Object;
 }
예제 #22
0
            protected override ILuceneRepositoryConfigurator InitializeRepositoryConfigurator(INuGetWebApiSettings settings)
            {
                var cfg = new InMemoryLuceneRepositoryConfigurator
                {
                    EnablePackageFileWatcher = false,
                    GroupPackageFilesById    = false,
                    PackagePath          = settings.PackagesPath,
                    PackageOverwriteMode = settings.PackageOverwriteMode
                };

                cfg.Initialize();

                return(cfg);
            }
예제 #23
0
 protected override IUserStore InitializeUserStore(INuGetWebApiSettings settings)
 {
     UserStore = new Mock <IUserStore>();
     return(UserStore.Object);
 }
예제 #24
0
 protected override ILuceneRepositoryConfigurator InitializeRepositoryConfigurator(INuGetWebApiSettings settings)
 {
     Configurator = new Mock <ILuceneRepositoryConfigurator>();
     Repository   = new Mock <ILucenePackageRepository>();
     Configurator.Setup(c => c.Repository).Returns(Repository.Object);
     return(Configurator.Object);
 }
예제 #25
0
 protected override LuceneDataProvider InitializeUsersDataProvider(INuGetWebApiSettings settings)
 {
     return new LuceneDataProvider(new RAMDirectory(), Version.LUCENE_30);
 }
예제 #26
0
파일: Startup.cs 프로젝트: Pliner/TinyFeed
 public void Configuration(IAppBuilder app)
 {
     SignatureConversions.AddConversions(app);
     Settings = CreateSettings();
     Start(app, CreateContainer(app));
 }