public bool HasPermission()
        {
            bool flag = false;

            if (this.FillType == null)
            {
                using (List <AbstractDataTableFiller> .Enumerator enumerator = this.tableFillers.GetEnumerator())
                {
                    while (enumerator.MoveNext())
                    {
                        AbstractDataTableFiller abstractDataTableFiller = enumerator.Current;
                        MonadAdapterFiller      monadAdapterFiller      = abstractDataTableFiller as MonadAdapterFiller;
                        if (monadAdapterFiller == null || monadAdapterFiller.HasPermission())
                        {
                            flag = true;
                            break;
                        }
                    }
                    goto IL_9B;
                }
            }
            flag = true;
            foreach (AbstractDataTableFiller abstractDataTableFiller2 in this.tableFillers)
            {
                MonadAdapterFiller monadAdapterFiller2 = abstractDataTableFiller2 as MonadAdapterFiller;
                if (monadAdapterFiller2 != null && !monadAdapterFiller2.HasPermission())
                {
                    flag = false;
                    break;
                }
            }
IL_9B:
            if (string.Equals(this.Name, "MailboxMigration", StringComparison.OrdinalIgnoreCase))
            {
                flag = (EMCRunspaceConfigurationSingleton.GetInstance().IsCmdletAllowedInScope("Get-MoveRequest", new string[]
                {
                    "Identity",
                    "ResultSize"
                }) && EMCRunspaceConfigurationSingleton.GetInstance().IsCmdletAllowedInScope("Get-MoveRequestStatistics", new string[]
                {
                    "Identity"
                }));
            }
            else if (string.Equals(this.Name, "Database", StringComparison.OrdinalIgnoreCase))
            {
                flag = ((EMCRunspaceConfigurationSingleton.GetInstance().IsCmdletAllowedInScope("Get-MailboxDatabase", new string[]
                {
                    "Identity"
                }) && EMCRunspaceConfigurationSingleton.GetInstance().IsCmdletAllowedInScope("Get-MailboxDatabaseCopyStatus", new string[]
                {
                    "Identity",
                    "Server"
                })) || EMCRunspaceConfigurationSingleton.GetInstance().IsCmdletAllowedInScope("Get-PublicFolderDatabase", new string[]
                {
                    "Identity",
                    "Status"
                }));
            }
            else if (flag && string.Equals(this.Name, "DisconnectedMailbox", StringComparison.OrdinalIgnoreCase))
            {
                flag = EMCRunspaceConfigurationSingleton.GetInstance().IsCmdletAllowedInScope("Get-ExchangeServer", new string[]
                {
                    "Identity"
                });
            }
            return(flag);
        }
        public ResultsLoaderProfile(string displayName, bool hideIcon, string imageProperty, string commandText, DataTable inputTable, DataTable dataTable, ResultsColumnProfile[] displayedColumnCollection, ICommandBuilder commandBuilder) : this(displayName, hideIcon, imageProperty, inputTable, dataTable, displayedColumnCollection)
        {
            MonadAdapterFiller filler = new MonadAdapterFiller(commandText, commandBuilder);

            this.AddTableFiller(filler);
        }