public static ExchangeItemStatistics[] GetPublicFoldersStatistics(int itemId) { #region Demo Mode if (IsDemoMode) { List<ExchangeItemStatistics> items = new List<ExchangeItemStatistics>(); ExchangeItemStatistics item1 = new ExchangeItemStatistics(); item1.ItemName = "\\fabrikam\\Documents"; item1.TotalItems = 6; item1.TotalSizeMB = 56; item1.LastModificationTime = DateTime.Now; item1.LastAccessTime = DateTime.Now; items.Add(item1); ExchangeItemStatistics item2 = new ExchangeItemStatistics(); item2.ItemName = "\\fabrikam\\Documents\\Legal"; item2.TotalItems = 5; item2.TotalSizeMB = 4; item2.LastModificationTime = DateTime.Now; item2.LastAccessTime = DateTime.Now; items.Add(item2); ExchangeItemStatistics item3 = new ExchangeItemStatistics(); item3.ItemName = "\\fabrikam\\Documents\\Contracts"; item3.TotalItems = 8; item3.TotalSizeMB = 2; item3.LastModificationTime = DateTime.Now; item3.LastAccessTime = DateTime.Now; items.Add(item3); return items.ToArray(); } #endregion // place log record TaskManager.StartTask("EXCHANGE", "GET_FOLDERS_STATS", itemId); try { Organization org = GetOrganization(itemId); if (org == null) return null; // get the list of all public folders List<string> folderNames = new List<string>(); List<ExchangeAccount> folders = GetAccounts(itemId, ExchangeAccountType.PublicFolder); foreach (ExchangeAccount folder in folders) folderNames.Add(folder.DisplayName); // get stats int exchangeServiceId = GetExchangeServiceID(org.PackageId); ExchangeServer exchange = GetExchangeServer(exchangeServiceId, org.ServiceId); return exchange.GetPublicFoldersStatistics(org.OrganizationId, folderNames.ToArray()); } catch (Exception ex) { throw TaskManager.WriteError(ex); } finally { TaskManager.CompleteTask(); } }
public static ExchangeItemStatistics[] GetMailboxesStatistics(int itemId) { #region Demo Mode if (IsDemoMode) { List<ExchangeItemStatistics> items = new List<ExchangeItemStatistics>(); ExchangeItemStatistics item1 = new ExchangeItemStatistics(); item1.ItemName = "John Smith"; item1.TotalItems = 105; item1.TotalSizeMB = 14; item1.LastLogon = DateTime.Now; item1.LastLogoff = DateTime.Now; items.Add(item1); ExchangeItemStatistics item2 = new ExchangeItemStatistics(); item2.ItemName = "Jack Brown"; item2.TotalItems = 5; item2.TotalSizeMB = 2; item2.LastLogon = DateTime.Now; item2.LastLogoff = DateTime.Now; items.Add(item2); ExchangeItemStatistics item3 = new ExchangeItemStatistics(); item3.ItemName = "Marry Smith"; item3.TotalItems = 1302; item3.TotalSizeMB = 45; item3.LastLogon = DateTime.Now; item3.LastLogoff = DateTime.Now; items.Add(item3); return items.ToArray(); } #endregion // place log record TaskManager.StartTask("EXCHANGE", "GET_MAILBOXES_STATS", itemId); try { Organization org = GetOrganization(itemId); if (org == null) return null; // get stats int exchangeServiceId = GetExchangeServiceID(org.PackageId); ExchangeServer exchange = GetExchangeServer(exchangeServiceId, org.ServiceId); return exchange.GetMailboxesStatistics(org.DistinguishedName); } catch (Exception ex) { throw TaskManager.WriteError(ex); } finally { TaskManager.CompleteTask(); } }