Beispiel #1
0
        public static async Task DeleteRecursiveAsync(BusinessModuleFactory businessModuleFactory, IDataFactory dataFactory, ICacheRepository cacheRepository, ItemDataModel itemDataModel)
        {
            var siteId = itemDataModel.SiteId;

            if (string.IsNullOrEmpty(siteId))
            {
                siteId = itemDataModel.Id;
            }
            var items =
                await
                dataFactory.ItemRepository.GetItemsAsync(siteId, new ItemFilters { ParentId = itemDataModel.Id });

            if (items != null)
            {
                foreach (var item in items)
                {
                    {
                        var module = businessModuleFactory.GetModuleCreate(item.Module);
                        if (module != null)
                        {
                            await module.DeleteAsync(dataFactory, cacheRepository, item);
                        }
                    }
                }
            }

            await dataFactory.DeleteAsync(itemDataModel);
        }
 public DeleteSiteCommand(IDataFactory dataFactory, UserService userService, BusinessModuleFactory businessModuleFactory, ICacheRepository cacheRepository)
 {
     _dataFactory           = dataFactory;
     _userService           = userService;
     _businessModuleFactory = businessModuleFactory;
     _cacheRepository       = cacheRepository;
 }
Beispiel #3
0
 public RouteProvider(IDataFactory dataFactory, BusinessModuleFactory businessModuleFactory, IHostingEnvironment env, IOptions <BusinessConfig> businessConfig)
 {
     _dataFactory           = dataFactory;
     _businessModuleFactory = businessModuleFactory;
     _env            = env;
     _businessConfig = businessConfig.Value;
 }
Beispiel #4
0
        public async Task RestCache()
        {
            var dataConfig = new DataConfig();

            dataConfig.ConnectionString = "mongodb://localhost:27017";
            dataConfig.DatabaseName     = "bworld";
            var database              = new MongoDatabase(Options.Create(dataConfig));
            var dataFactoryMongo      = new DataFactoryMongo(database, new MongoBlob(database), Options.Create(dataConfig));
            var businessFactory       = new BusinessModuleFactory(null);
            var resetSiteCacheCommand = new ResetSiteCacheCommand(dataFactoryMongo, new CacheProvider(dataFactoryMongo, businessFactory, new RouteProvider(dataFactoryMongo, businessFactory)));

            var domainDatas = new Dictionary <string, string>();

            domainDatas.Add("domain", "localhost");
            resetSiteCacheCommand.Input = new ResetSiteCacheInput()
            {
                Site = new CurrentRequest()
                {
                    SiteId      = "227aefdb-a2b9-4c27-98d9-2f0db43f99ca",
                    DomainDatas = domainDatas
                }
            };

            await resetSiteCacheCommand.ExecuteAsync();
        }
Beispiel #5
0
 public TransfertSiteCommand(IDataFactory dataFactorySource, IDataFactory dataFactoryDestination,
                             CacheProvider cacheProvider, BusinessModuleFactory businessModuleFactory)
 {
     _dataFactorySource      = dataFactorySource;
     _dataFactoryDestination = dataFactoryDestination;
     _cacheProvider          = cacheProvider;
     _businessModuleFactory  = businessModuleFactory;
 }
Beispiel #6
0
 public AddSiteCommand(IDataFactory dataFactorySource, IDataFactory dataFactoryDestination,
                       UserService userService, IEmailService emailService, CacheProvider cacheProvider, SiteUserService siteUserService, BusinessModuleFactory businessModuleFactory, IRouteManager routeManager, IRouteProvider routeProvider)
 {
     _dataFactorySource      = dataFactorySource;
     _dataFactoryDestination = dataFactoryDestination;
     _userService            = userService;
     _emailService           = emailService;
     _cacheProvider          = cacheProvider;
     _siteUserService        = siteUserService;
     _businessModuleFactory  = businessModuleFactory;
     _routeManager           = routeManager;
     _routeProvider          = routeProvider;
 }
Beispiel #7
0
        public static async Task GetChildsAsync(BusinessModuleFactory businessModuleFactory, ICurrentRequest currentRequest, IList <ItemDataModel> items,
                                                IDictionary <string, object> masterDictionnary, IDataFactory dataFactory, bool isSitemap = false)
        {
            if (items != null)
            {
                var allLists =
                    items.Where(i => i.PropertyType == PropertyType.List)
                    .OrderBy(i => i.Index);
                foreach (var item in allLists)
                {
                    var module = businessModuleFactory.GetModule(item.Module);
                    if (module == null)
                    {
                        continue;
                    }

                    await module.GetInfoAsync(new GeMenuItemInput
                    {
                        ItemDataModel  = item,
                        CurrentRequest = currentRequest,
                        DataFactory    = dataFactory,
                        Master         = masterDictionnary,
                        IsSitemap      = isSitemap
                    });
                }

                var allProperties =
                    items.Where(i => i.PropertyType == PropertyType.Property)
                    .OrderBy(i => i.Index);
                foreach (var item in allProperties)
                {
                    var module = businessModuleFactory.GetModule(item.Module);
                    if (module == null)
                    {
                        continue;
                    }

                    await module.GetInfoAsync(new GeMenuItemInput
                    {
                        ItemDataModel  = item,
                        CurrentRequest = currentRequest,
                        DataFactory    = dataFactory,
                        Master         = masterDictionnary,
                        IsSitemap      = isSitemap
                    });
                }
            }
        }
Beispiel #8
0
        public async Task Test1()
        {
            try
            {
                var services        = new ServiceCollection();
                var serviceProvider = services.BuildServiceProvider();

                var dataConfig = new DataConfig();
                dataConfig.ConnectionString = "mongodb://localhost:27017";
                dataConfig.DatabaseName     = "bworld";
                var database         = new MongoDatabase(Options.Create(dataConfig));
                var dataFactoryMongo =
                    new DataFactoryMongo(database, new MongoBlob(database), Options.Create(dataConfig));
                var businessFactory = new BusinessModuleFactory(serviceProvider);
                var cacheProvider   = new CacheProvider(dataFactoryMongo, businessFactory,
                                                        new RouteProvider(dataFactoryMongo, businessFactory));


                var domainDatas = new Dictionary <string, string>();
                domainDatas.Add("domain", "localhost");
                var resetSiteCacheCommand = new ResetSiteCacheCommand(dataFactoryMongo, cacheProvider);
                resetSiteCacheCommand.Input = new ResetSiteCacheInput()
                {
                    Site = new CurrentRequest()
                    {
                        SiteId      = "c27e39ee-7ba9-46f8-aa7c-9e334c72a96c", //"227aefdb-a2b9-4c27-98d9-2f0db43f99ca",
                        DomainDatas = domainDatas
                    }
                };



                await cacheProvider.InitializeCacheAsync();

                //await resetSiteCacheCommand.ExecuteAsync();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }

            //await resetSiteCacheCommand.ExecuteAsync();
        }
Beispiel #9
0
        public static async Task <ItemDataModel> DuplicateAllAsync(BusinessModuleFactory businessModuleFactory, IDataFactory dataFactorySource,
                                                                   IDataFactory dataFactoryDestination,
                                                                   ItemDataModel itemDataModelSource,
                                                                   ItemDataModel itemDataModelDestinationParent, bool isTransfert, object data = null)
        {
            var itemDataModelDestination = await AddSiteCommand.DuplicateItemAsync(dataFactoryDestination,
                                                                                   itemDataModelSource,
                                                                                   itemDataModelDestinationParent, isTransfert, data);

            var siteId = itemDataModelSource.SiteId;

            if (string.IsNullOrEmpty(siteId))
            {
                siteId = itemDataModelSource.Id;
            }

            var items =
                await
                dataFactorySource.ItemRepository.GetItemsAsync(siteId,
                                                               new ItemFilters { ParentId = itemDataModelSource.Id });

            if (items != null)
            {
                var allLists = items.OrderBy(i => i.Index);
                foreach (var item in allLists)
                {
                    if (!item.IsTemporary)
                    {
                        var module = businessModuleFactory.GetModuleCreate(item.Module);
                        if (module != null)
                        {
                            await
                            module.CreateFromAsync(dataFactorySource, dataFactoryDestination, item,
                                                   itemDataModelDestination,
                                                   isTransfert, data);
                        }
                    }
                }
            }
            return(itemDataModelDestination);
        }
Beispiel #10
0
 public SiteBusinessModule(BusinessModuleFactory businessModuleFactory)
 {
     _businessModuleFactory = businessModuleFactory;
 }
Beispiel #11
0
 public NotificationItemBusinessModule(BusinessModuleFactory businessModuleFactory) : base(businessModuleFactory)
 {
 }
Beispiel #12
0
 public MasterBusinessModule(BusinessModuleFactory businessModuleFactory, IRouteProvider routeProvider) : base(businessModuleFactory)
 {
     _routeProvider = routeProvider;
 }
 public SeoBusinessModule(BusinessModuleFactory businessModuleFactory) : base(businessModuleFactory)
 {
 }
Beispiel #14
0
 public NewsBusinessModule(BusinessModuleFactory businessModuleFactory, UrlProvider urlProvider) : base(businessModuleFactory)
 {
     _urlProvider = urlProvider;
 }
Beispiel #15
0
 public AddSiteBusinessModule(UrlProvider urlHelper, BusinessModuleFactory businessModuleFactory) : base(businessModuleFactory)
 {
     _urlHelper = urlHelper;
 }
Beispiel #16
0
 public CacheProvider(IDataFactory dataFactory, BusinessModuleFactory businessFactory, IRouteProvider routeProvider)
 {
     _dataFactory     = dataFactory;
     _businessFactory = businessFactory;
     _routeProvider   = routeProvider;
 }
 public BusinessModuleBase(BusinessModuleFactory businessModuleFactory)
 {
     _businessModuleFactory = businessModuleFactory;
 }
Beispiel #18
0
 public NewsItemBusinessModule(UrlProvider urlProvider, BusinessModuleFactory businessModuleFactory) : base(businessModuleFactory)
 {
     _urlProvider = urlProvider;
 }