public static void SetObjectPreAction(DataRow inputRow, DataTable dataTable, DataObjectStore store)
        {
            DataRow       dataRow = dataTable.Rows[0];
            List <string> list    = new List <string>();

            PublicFolderMailboxService.SaveQuotaProperty(dataRow, "UseDatabaseQuotaDefaults", "IssueWarningQuota", list);
            PublicFolderMailboxService.SaveQuotaProperty(dataRow, "UseDatabaseQuotaDefaults", "ProhibitSendReceiveQuota", list);
            Unlimited <ByteQuantifiedSize> unlimited = Unlimited <ByteQuantifiedSize> .UnlimitedValue;

            if (!DBNull.Value.Equals(dataRow["MaxReceiveSize"]))
            {
                list.Add("MaxReceiveSize");
                unlimited = Unlimited <ByteQuantifiedSize> .Parse((string)dataRow["MaxReceiveSize"]);

                store.SetModifiedColumns(list);
            }
            inputRow["MaxReceiveSize"] = unlimited;
            dataRow["MaxReceiveSize"]  = unlimited;
            if (list.Count != 0)
            {
                store.SetModifiedColumns(list);
            }
        }
        public static void MailboxUsageGetObjectPostAction(DataRow inputRow, DataTable dataTable, DataObjectStore store)
        {
            DataRow dataRow = dataTable.Rows[0];
            Mailbox mailbox = store.GetDataObject("Mailbox") as Mailbox;

            if (mailbox != null)
            {
                MailboxStatistics mailboxStatistics = store.GetDataObject("MailboxStatistics") as MailboxStatistics;
                MailboxDatabase   mailboxDatabase   = store.GetDataObject("MailboxDatabase") as MailboxDatabase;
                MailboxStatistics archiveStatistics = store.GetDataObject("ArchiveStatistics") as MailboxStatistics;
                MailboxPropertiesHelper.MailboxUsage mailboxUsage = new MailboxPropertiesHelper.MailboxUsage(mailbox, mailboxDatabase, mailboxStatistics, archiveStatistics);
                dataRow["MailboxUsage"] = new StatisticsBarData(mailboxUsage.MailboxUsagePercentage, mailboxUsage.MailboxUsageState, mailboxUsage.MailboxUsageText);
                if ((mailbox.UseDatabaseQuotaDefaults != null && mailbox.UseDatabaseQuotaDefaults.Value && mailboxDatabase != null && !Util.IsDataCenter) || !mailbox.ProhibitSendQuota.IsUnlimited)
                {
                    dataRow["IsMailboxUsageUnlimited"] = false;
                }
                else
                {
                    dataRow["IsMailboxUsageUnlimited"] = true;
                }
                Unlimited <ByteQuantifiedSize> maxReceiveSize = mailbox.MaxReceiveSize;
                if (maxReceiveSize.IsUnlimited)
                {
                    dataRow["MaxReceiveSize"] = "unlimited";
                }
                else
                {
                    dataRow["MaxReceiveSize"] = PublicFolderMailboxService.UnlimitedByteQuantifiedSizeToString(maxReceiveSize);
                }
                dataRow["IssueWarningQuota"]             = PublicFolderMailboxService.UnlimitedByteQuantifiedSizeToString(mailboxUsage.IssueWarningQuota);
                dataRow["ProhibitSendQuota"]             = PublicFolderMailboxService.UnlimitedByteQuantifiedSizeToString(mailboxUsage.ProhibitSendQuota);
                dataRow["ProhibitSendReceiveQuota"]      = PublicFolderMailboxService.UnlimitedByteQuantifiedSizeToString(mailboxUsage.ProhibitSendReceiveQuota);
                dataRow["RetainDeletedItemsFor"]         = mailboxUsage.RetainDeletedItemsFor.Days.ToString();
                dataRow["RetainDeletedItemsUntilBackup"] = mailboxUsage.RetainDeletedItemsUntilBackup;
            }
        }