private FolderIndexEntry CreateNewFolderEntry(string path)
        {
            FolderIndexEntry entry = new FolderIndexEntry(path, path.Substring(path.LastIndexOf("\\") + 1), Connection, currentUser, SyncedModulesPath, getLogin, dataAccessError, this);

            entry.ContentCleared      += new EventHandler(Folder_ContentCleared);
            entry.ContentLoading      += new EventHandler(Folder_ContentLoading);
            entry.ContentLoaded       += new EventHandler(Folder_ContentLoaded);
            entry.FolderAdded         += new EventHandler <FolderAddedEventArgs>(Folder_SubFolderAdded);
            entry.LearningModuleAdded += new EventHandler <LearningModuleAddedEventArgs>(Folder_SubFolder_LearningModuleAdded);
            entry.BeginLoading();
            return(entry);
        }
Exemplo n.º 2
0
 private FolderIndexEntry CreateNewFolderEntry(string path)
 {
     FolderIndexEntry entry = new FolderIndexEntry(path, path.Substring(path.LastIndexOf("\\") + 1), Connection, currentUser, SyncedModulesPath, getLogin, dataAccessError, this);
     entry.ContentCleared += new EventHandler(Folder_ContentCleared);
     entry.ContentLoading += new EventHandler(Folder_ContentLoading);
     entry.ContentLoaded += new EventHandler(Folder_ContentLoaded);
     entry.FolderAdded += new EventHandler<FolderAddedEventArgs>(Folder_SubFolderAdded);
     entry.LearningModuleAdded += new EventHandler<LearningModuleAddedEventArgs>(Folder_SubFolder_LearningModuleAdded);
     entry.BeginLoading();
     return entry;
 }
        /// <summary>
        /// Gets the folder of a connection.
        /// </summary>
        /// <param name="connection">The connection.</param>
        /// <returns></returns>
        /// <remarks>Documented by Dev05, 2009-03-06</remarks>
        public FolderIndexEntry GetFolderOfConnection(IConnectionString connection)
        {
            if (connection == null)
                return null;

            FolderIndexEntry entry = Folders.Find(f => f.Connection == connection);
            if (entry != null)
                return entry;

            entry = new FolderIndexEntry(connection is UncConnectionStringBuilder ? connection.ConnectionString : string.Empty, connection.Name, connection, null, SyncedModulesPath, getLogin, dataAccessError);
            ConnectionUsers[connection] = entry.CurrentUser;
            Users.Add(entry.CurrentUser);

            Folders.Add(entry);
            OnFolderAdded(new FolderAddedEventArgs(entry));

            entry.ContentCleared += new EventHandler(Folder_ContentCleared);
            entry.ContentLoading += new EventHandler(Folder_ContentLoading);
            entry.ContentLoaded += new EventHandler(Folder_ContentLoaded);
            entry.FolderAdded += new EventHandler<FolderAddedEventArgs>(Folder_SubFolderAdded);
            entry.LearningModuleAdded += new EventHandler<LearningModuleAddedEventArgs>(Folder_LearningModuleAdded);

            entry.BeginLoading();

            if (entry.IsOffline)
            {
                entry.GetContainingEntries(true).ForEach(e => learningModules.Add(e as LearningModulesIndexEntry));
                throw new ServerOfflineException();
            }

            return entry;
        }