private List <QueryableObject> QueryAssistantType(object[] parameters, QueryFilter filter)
        {
            List <QueryableObject> list = new List <QueryableObject>(OnlineDiagnostics.Instance.databaseManager.AssistantTypes.Length);

            foreach (AssistantType assistantType in OnlineDiagnostics.Instance.databaseManager.AssistantTypes)
            {
                QueryableEventBasedAssistantType queryableEventBasedAssistantType = new QueryableEventBasedAssistantType();
                assistantType.ExportToQueryableObject(queryableEventBasedAssistantType);
                if (filter == null || OpathFilterEvaluator.FilterMatches(filter, queryableEventBasedAssistantType))
                {
                    list.Add(queryableEventBasedAssistantType);
                }
            }
            return(list);
        }
示例#2
0
        public override void ExportToQueryableObject(QueryableObject queryableObject)
        {
            base.ExportToQueryableObject(queryableObject);
            QueryableEventBasedAssistantType queryableEventBasedAssistantType = queryableObject as QueryableEventBasedAssistantType;

            if (queryableEventBasedAssistantType != null)
            {
                queryableEventBasedAssistantType.AssistantGuid = this.Identity;
                queryableEventBasedAssistantType.AssistantName = this.NonLocalizedName;
                if (this.MailboxFilter != null)
                {
                    queryableEventBasedAssistantType.MailboxType = this.MailboxFilter.MailboxType.ToString();
                }
                queryableEventBasedAssistantType.MapiEventType      = this.EventMask.ToString();
                queryableEventBasedAssistantType.NeedMailboxSession = this.NeedsMailboxSession;
            }
        }