Пример #1
0
 public EventAggregator(ISharepointManager sharePointManager, ICourseCatalog courseCatalog, ILogger <EventAggregator> logger, IServiceScopeFactory scope)
 {
     _sharePointManager = sharePointManager;
     _courseCatalog     = courseCatalog;
     _logger            = logger;
     _scope             = scope;
 }
        /// <summary>
        /// Instantiates a CourseCatalog backed by a Sharepoint List. If the Sharepoint List does not exist, it will be created
        /// </summary>
        /// <param name="sharepointSettings">The settings used to access the Sharepoint List storing the catalog</param>
        /// <param name="createSharepointManagerFunc">A function which returns an ISharepointManager. This will be used whenever the catalog needs to access Sharepoint</param>
        public SharepointCourseCatalog(IOptions <SharepointSettings> sharepointSettings, ILogger <SharepointCourseCatalog> logger, ISharepointManager sharepointManager)
        {
            _logger = logger;
            var settingsValue = sharepointSettings.Value;

            _courseCatalogListName = settingsValue.CourseCatalogListName;

            _courseIdToSharepointListNameMapping = new Dictionary <string, string>();
            _sharepointManager = sharepointManager;

            if (!sharepointManager.CheckListExists(_courseCatalogListName))
            {
                _logger.LogInformation($"The List '{_courseCatalogListName}' used to store the Course Catalog does not exist. Creating it now.");
                _sharepointManager.CreateList(_courseCatalogListName, COURSE_CATALOG_LIST_DESCRIPTION, new List <string> {
                    COURSE_ID_FIELD_XML_SCHEMA, SHAREPOINT_LIST_NAME_FIELD_XML_SCHEMA
                });
            }
        }
Пример #3
0
 public EventAggregator(ISharepointManager sharePointManager, ICourseCatalog courseCatalog, ILogger <EventAggregator> logger)
 {
     _sharePointManager = sharePointManager;
     _courseCatalog     = courseCatalog;
     _logger            = logger;
 }