예제 #1
0
 public StorageFactory(
     StorageFactoryListener storageFactoryListener,
     StorageFactoryConfig storageFactoryConfig,
     SettingsManager settingsManager,
     StorageSettingsHelper storageSettingsHelper,
     TenantManager tenantManager,
     CoreBaseSettings coreBaseSettings,
     PathUtils pathUtils,
     EmailValidationKeyProvider emailValidationKeyProvider,
     IOptionsMonitor <ILog> options,
     IHttpContextAccessor httpContextAccessor,
     EncryptionSettingsHelper encryptionSettingsHelper,
     EncryptionFactory encryptionFactory)
 {
     StorageFactoryListener = storageFactoryListener;
     StorageFactoryConfig   = storageFactoryConfig;
     SettingsManager        = settingsManager;
     StorageSettingsHelper  = storageSettingsHelper;
     TenantManager          = tenantManager;
     CoreBaseSettings       = coreBaseSettings;
     PathUtils = pathUtils;
     EmailValidationKeyProvider = emailValidationKeyProvider;
     Options                  = options;
     HttpContextAccessor      = httpContextAccessor;
     EncryptionSettingsHelper = encryptionSettingsHelper;
     EncryptionFactory        = encryptionFactory;
 }
예제 #2
0
        public IDataStore GetStorage(string configpath, string tenant, string module, IQuotaController controller)
        {
            var tenantId = -2;

            if (string.IsNullOrEmpty(tenant))
            {
                tenant = DefaultTenantName;
            }
            else
            {
                tenantId = Convert.ToInt32(tenant);
            }

            //Make tennant path
            tenant = TenantPath.CreatePath(tenant);

            var section = StorageFactoryConfig.Section;

            if (section == null)
            {
                throw new InvalidOperationException("config section not found");
            }

            var settings = SettingsManager.LoadForTenant <StorageSettings>(tenantId);

            //TODO:GetStoreAndCache
            return(GetDataStore(tenant, module, StorageSettingsHelper.DataStoreConsumer(settings), controller));
        }
예제 #3
0
 public StaticUploader(
     IServiceProvider serviceProvider,
     TenantManager tenantManager,
     SettingsManager settingsManager,
     StorageSettingsHelper storageSettingsHelper)
 {
     ServiceProvider       = serviceProvider;
     TenantManager         = tenantManager;
     SettingsManager       = settingsManager;
     StorageSettingsHelper = storageSettingsHelper;
 }
예제 #4
0
 public StaticUploaderScope(TenantManager tenantManager,
                            StaticUploader staticUploader,
                            SecurityContext securityContext,
                            SettingsManager settingsManager,
                            StorageSettingsHelper storageSettingsHelper)
 {
     TenantManager         = tenantManager;
     StaticUploader        = staticUploader;
     SecurityContext       = securityContext;
     SettingsManager       = settingsManager;
     StorageSettingsHelper = storageSettingsHelper;
 }
예제 #5
0
 public WebPath(
     WebPathSettings webPathSettings,
     StaticUploader staticUploader,
     SettingsManager settingsManager,
     StorageSettingsHelper storageSettingsHelper,
     IHttpContextAccessor httpContextAccessor,
     IHostEnvironment hostEnvironment,
     CoreBaseSettings coreBaseSettings,
     IOptionsMonitor <ILog> options)
     : this(webPathSettings, staticUploader, settingsManager, storageSettingsHelper, hostEnvironment, coreBaseSettings, options)
 {
     HttpContextAccessor = httpContextAccessor;
 }
예제 #6
0
 public StorageFactory(
     StorageFactoryListener storageFactoryListener,
     StorageFactoryConfig storageFactoryConfig,
     SettingsManager settingsManager,
     StorageSettingsHelper storageSettingsHelper,
     TenantManager tenantManager,
     CoreBaseSettings coreBaseSettings,
     PathUtils pathUtils,
     EmailValidationKeyProvider emailValidationKeyProvider,
     IOptionsMonitor <ILog> options) :
     this(storageFactoryListener, storageFactoryConfig, settingsManager, storageSettingsHelper, tenantManager, coreBaseSettings, pathUtils, emailValidationKeyProvider, options, null)
 {
 }
예제 #7
0
 public void Deconstruct(out TenantManager tenantManager,
                         out SecurityContext securityContext,
                         out StorageFactory storageFactory,
                         out IOptionsMonitor <ILog> options,
                         out StorageSettingsHelper storageSettingsHelper,
                         out SettingsManager settingsManager)
 {
     tenantManager         = TenantManager;
     securityContext       = SecurityContext;
     storageFactory        = StorageFactory;
     options               = Options;
     storageSettingsHelper = StorageSettingsHelper;
     settingsManager       = SettingsManager;
 }
예제 #8
0
 public MigrateOperationScope(TenantManager tenantManager,
                              SecurityContext securityContext,
                              StorageFactory storageFactory,
                              IOptionsMonitor <ILog> options,
                              StorageSettingsHelper storageSettingsHelper,
                              SettingsManager settingsManager)
 {
     TenantManager         = tenantManager;
     SecurityContext       = securityContext;
     StorageFactory        = storageFactory;
     Options               = options;
     StorageSettingsHelper = storageSettingsHelper;
     SettingsManager       = settingsManager;
 }
예제 #9
0
 public StaticUploader(
     IServiceProvider serviceProvider,
     TenantManager tenantManager,
     SettingsManager settingsManager,
     StorageSettingsHelper storageSettingsHelper,
     ICache cache,
     DistributedTaskQueueOptionsManager options)
 {
     Cache                 = cache;
     ServiceProvider       = serviceProvider;
     TenantManager         = tenantManager;
     SettingsManager       = settingsManager;
     StorageSettingsHelper = storageSettingsHelper;
     Queue                 = options.Get <UploadOperationProgress>();
 }
예제 #10
0
 public StorageFactory(
     IServiceProvider serviceProvider,
     StorageFactoryConfig storageFactoryConfig,
     SettingsManager settingsManager,
     StorageSettingsHelper storageSettingsHelper,
     TenantManager tenantManager,
     CoreBaseSettings coreBaseSettings)
 {
     ServiceProvider       = serviceProvider;
     StorageFactoryConfig  = storageFactoryConfig;
     SettingsManager       = settingsManager;
     StorageSettingsHelper = storageSettingsHelper;
     TenantManager         = tenantManager;
     CoreBaseSettings      = coreBaseSettings;
 }
예제 #11
0
 public WebPath(
     WebPathSettings webPathSettings,
     StaticUploader staticUploader,
     SettingsManager settingsManager,
     StorageSettingsHelper storageSettingsHelper,
     IHostEnvironment hostEnvironment,
     CoreBaseSettings coreBaseSettings,
     IOptionsMonitor <ILog> options)
 {
     WebPathSettings       = webPathSettings;
     StaticUploader        = staticUploader;
     SettingsManager       = settingsManager;
     StorageSettingsHelper = storageSettingsHelper;
     HostEnvironment       = hostEnvironment;
     CoreBaseSettings      = coreBaseSettings;
     Options = options;
 }
예제 #12
0
파일: WebPath.cs 프로젝트: y2ket/AppServer
        public string GetPath(string relativePath)
        {
            if (!string.IsNullOrEmpty(relativePath) && relativePath.IndexOf('~') == 0)
            {
                throw new ArgumentException(string.Format("bad path format {0} remove '~'", relativePath), "relativePath");
            }

            if (CoreBaseSettings.Standalone && StaticUploader.CanUpload())
            {
                try
                {
                    var result = StorageSettingsHelper.DataStore(SettingsManager.Load <CdnStorageSettings>()).GetInternalUri("", relativePath, TimeSpan.Zero, null).AbsoluteUri.ToLower();
                    if (!string.IsNullOrEmpty(result))
                    {
                        return(result);
                    }
                }
                catch (Exception)
                {
                }
            }

            return(WebPathSettings.GetPath(HttpContextAccessor.HttpContext, Options, relativePath));
        }
예제 #13
0
 public void Deconstruct(out TenantManager tenantManager, out StaticUploader staticUploader, out SecurityContext securityContext, out SettingsManager settingsManager, out StorageSettingsHelper storageSettingsHelper)
 {
     tenantManager         = TenantManager;
     staticUploader        = StaticUploader;
     securityContext       = SecurityContext;
     settingsManager       = SettingsManager;
     storageSettingsHelper = StorageSettingsHelper;
 }
예제 #14
0
 public ConsumerBackupStorage(StorageSettingsHelper storageSettingsHelper)
 {
     StorageSettingsHelper = storageSettingsHelper;
 }