public FileSystemFileReference(
            string filePath,
            string path,
            AbpFileSystemStore store,
            bool withMetadata,
            FileExtendedProperties extendedProperties,
            IAbpPublicUrlProvider publicUrlProvider,
            IAbpExtendedPropertiesProvider extendedPropertiesProvider)
        {
            FileSystemPath = filePath;
            Path           = path.Replace('\\', '/');
            _store         = store;
            _extendedPropertiesProvider = extendedPropertiesProvider;
            _withMetadata = withMetadata;

            _propertiesLazy = new Lazy <IFileProperties>(() =>
            {
                if (withMetadata)
                {
                    return(new FileSystemFileProperties(FileSystemPath, extendedProperties));
                }

                throw new InvalidOperationException("Metadata are not loaded, please use withMetadata option");
            });

            _publicUrlLazy = new Lazy <string>(() =>
            {
                if (publicUrlProvider != null)
                {
                    return(publicUrlProvider.GetPublicUrl(_store.Name, this));
                }

                throw new InvalidOperationException("There is not Server enabled.");
            });
        }
 public AbpFileSystemStorageProvider(
     IOptions <FileSystemParsedOptions> options,
     IAbpPublicUrlProvider publicUrlProvider,
     IAbpExtendedPropertiesProvider extendedPropertiesProvider
     ) : base(options)
 {
     _publicUrlProvider          = publicUrlProvider;
     _extendedPropertiesProvider = extendedPropertiesProvider;
 }
示例#3
0
        public AbpFileSystemStore(
            FileSystemStoreOptions storeOptions,
            IAbpPublicUrlProvider publicUrlProvider,
            IAbpExtendedPropertiesProvider extendedPropertiesProvider
            )
        {
            storeOptions.Validate();

            _storeOptions               = storeOptions;
            _publicUrlProvider          = publicUrlProvider;
            _extendedPropertiesProvider = extendedPropertiesProvider;
        }