public static SPMObjectType GetSPMObjectType(Type objType) { SPMObjectType spmOType = SPMObjectType.Unknown; try { spmOType = (SPMObjectType)Enum.Parse(typeof(SPMObjectType), objType.Name, true); } catch { } return(spmOType); }
protected override void OnDoWork(DoWorkEventArgs e) { base.OnDoWork(e); try { Param = (LoadWorkerParameters)e.Argument; // Stop if cancellation was requested if (!e.Cancel) { site = new SPSite(Param.Url); web = site.OpenWeb(); object spObj = web.GetFileOrFolderObject(Param.Url); SPMObjectType objType = SPMUtility.IdentifyObject(spObj); switch (objType) { case SPMObjectType.SPWeb: AddItemsFromWeb(web); break; case SPMObjectType.SPDocumentLibrary: SPDocumentLibrary docLib = web.Lists[((SPFolder)spObj).ContainingDocumentLibrary] as SPDocumentLibrary; AddItemsFromDocLib(docLib); break; case SPMObjectType.SPFolder: AddItemsFromFolder((SPFolder)spObj); break; case SPMObjectType.SPFile: AddItemsFromFile((SPFile)spObj); break; } e.Result = itemView; } } finally { if (web != null) { web.Dispose(); } if (site != null) { site.Dispose(); } } }