private static DsnFlags GetDsnFlags(string itemClass) { foreach (KeyValuePair <string, DsnFlags> keyValuePair in ReportMessage.DsnClassToDsnFlag) { if (ObjectClass.IsReport(itemClass, keyValuePair.Key)) { return(keyValuePair.Value); } } return(DsnFlags.None); }
public static bool TryGetSubjectPrefix(string itemClass, out LocalizedString subjectPrefix) { foreach (KeyValuePair <string, SystemMessages.IDs> keyValuePair in DsnMdnUtil.reportClassOrSuffixToSubjectPrefix) { if (ObjectClass.IsReport(itemClass, keyValuePair.Key)) { subjectPrefix = SystemMessages.GetLocalizedString(keyValuePair.Value); return(true); } } subjectPrefix = LocalizedString.Empty; return(false); }
private static LocalizedString GenerateOldFashionedReportBody(MessageItem message, out CultureInfo culture) { message.Load(ReportMessageSchema.Instance.AutoloadProperties); ExDateTime? valueAsNullable = message.GetValueAsNullable <ExDateTime>(InternalSchema.ReportTime); ExTimeZone exTimeZone = ExTimeZone.CurrentTimeZone; StoreSession session = message.Session; if (session != null) { exTimeZone = session.ExTimeZone; } byte[] valueOrDefault = message.GetValueOrDefault <byte[]>(InternalSchema.TimeZoneDefinitionStart); ExTimeZone exTimeZone2; if (valueOrDefault != null && O12TimeZoneFormatter.TryParseTruncatedTimeZoneBlob(valueOrDefault, out exTimeZone2)) { exTimeZone = (TimeZoneHelper.PromoteCustomizedTimeZone(exTimeZone2) ?? exTimeZone2); } culture = ReportMessage.GetMdnCulture(message.CoreItem); LocalizedString originalMessageInfo = ReportMessage.GetOriginalMessageInfo(message, exTimeZone, culture); LocalizedString result; if (ObjectClass.IsReport(message.ClassName, "IPNRN")) { if (valueAsNullable != null) { result = ClientStrings.MdnRead(originalMessageInfo, exTimeZone.ConvertDateTime(valueAsNullable.Value), new LocalizedString(exTimeZone.LocalizableDisplayName.ToString(culture))); } else { result = ClientStrings.MdnReadNoTime(originalMessageInfo); } } else { if (!ObjectClass.IsReport(message.ClassName, "IPNNRN")) { ExTraceGlobals.StorageTracer.TraceDebug((long)message.GetHashCode(), ServerStrings.UnsupportedReportType(message.ClassName)); return(new LocalizedString(ServerStrings.UnsupportedReportType(message.ClassName))); } if (valueAsNullable != null) { result = ClientStrings.MdnNotRead(originalMessageInfo, exTimeZone.ConvertDateTime(valueAsNullable.Value), new LocalizedString(exTimeZone.LocalizableDisplayName.ToString(culture))); } else { result = ClientStrings.MdnNotReadNoTime(originalMessageInfo); } } return(result); }
private static OutlookModule GetModuleForObjectClass(string objectClass) { if (objectClass == null) { return(OutlookModule.None); } if (ObjectClass.IsCalendarFolder(objectClass) || ObjectClass.IsCalendarItem(objectClass)) { return(OutlookModule.Calendar); } if (ObjectClass.IsContactsFolder(objectClass) || ObjectClass.IsContact(objectClass) || ObjectClass.IsDistributionList(objectClass)) { return(OutlookModule.Contacts); } if (ObjectClass.IsJournalFolder(objectClass) || ObjectClass.IsJournalItem(objectClass)) { return(OutlookModule.Journal); } if (ObjectClass.IsNotesFolder(objectClass) || ObjectClass.IsNotesItem(objectClass)) { return(OutlookModule.Notes); } if (ObjectClass.IsTaskFolder(objectClass) || ObjectClass.IsTask(objectClass)) { return(OutlookModule.Tasks); } if (ObjectClass.IsMessageFolder(objectClass) || ObjectClass.IsMessage(objectClass, false) || ObjectClass.IsMeetingMessage(objectClass) || ObjectClass.IsTaskRequest(objectClass) || ObjectClass.IsReport(objectClass)) { return(OutlookModule.Mail); } return(OutlookModule.None); }
public static bool IsMdn(string itemClass) { return(ObjectClass.IsReport(itemClass, "IPNRN") || ObjectClass.IsReport(itemClass, "IPNNRN")); }
public static bool IsDsnNegative(string itemClass) { return(ObjectClass.IsReport(itemClass, "NDR")); }
public static StoreObjectType GetObjectType(string itemClass) { if (ObjectClass.IsOfClass(itemClass, "IPM.Note.Rules.OofTemplate.Microsoft", false)) { return(StoreObjectType.OofMessage); } if (ObjectClass.IsOfClass(itemClass, "IPM.Note.Rules.ExternalOofTemplate.Microsoft", false)) { return(StoreObjectType.ExternalOofMessage); } if (ObjectClass.IsOfClass(itemClass, "IPM.Note.Reminder")) { return(StoreObjectType.ReminderMessage); } if (ObjectClass.IsOfClass(itemClass, "IPM.Note")) { return(StoreObjectType.Message); } if (ObjectClass.IsOfClass(itemClass, "IPM.Post")) { return(StoreObjectType.Post); } if (ObjectClass.IsReport(itemClass)) { return(StoreObjectType.Report); } if (ObjectClass.IsCalendarItem(itemClass)) { return(StoreObjectType.CalendarItem); } if (ObjectClass.IsCalendarItemSeries(itemClass)) { return(StoreObjectType.CalendarItemSeries); } if (ObjectClass.IsMeetingRequestSeries(itemClass)) { return(StoreObjectType.MeetingRequestSeries); } if (ObjectClass.IsMeetingRequest(itemClass)) { return(StoreObjectType.MeetingRequest); } if (ObjectClass.IsOfClass(itemClass, "IPM.MeetingMessageSeries.Resp")) { return(StoreObjectType.MeetingResponseSeries); } if (ObjectClass.IsOfClass(itemClass, "IPM.Schedule.Meeting.Resp")) { return(StoreObjectType.MeetingResponse); } if (ObjectClass.IsMeetingCancellationSeries(itemClass)) { return(StoreObjectType.MeetingCancellationSeries); } if (ObjectClass.IsMeetingCancellation(itemClass)) { return(StoreObjectType.MeetingCancellation); } if (ObjectClass.IsOfClass(itemClass, "IPM.Schedule.Meeting.Notification.Forward")) { return(StoreObjectType.MeetingForwardNotification); } if (ObjectClass.IsOfClass(itemClass, "IPM.MeetingMessageSeries.Notification.Forward")) { return(StoreObjectType.MeetingForwardNotificationSeries); } if (ObjectClass.IsOfClass(itemClass, "IPM.Notification.Meeting")) { return(StoreObjectType.MeetingForwardNotification); } if (ObjectClass.IsOfClass(itemClass, "IPM.Schedule.Inquiry")) { return(StoreObjectType.MeetingInquiryMessage); } if (ObjectClass.IsOfClass(itemClass, "IPM.Contact.Place")) { return(StoreObjectType.Place); } if (ObjectClass.IsOfClass(itemClass, "IPM.Contact")) { return(StoreObjectType.Contact); } if (ObjectClass.IsOfClass(itemClass, "IPM.UserPhoto.Preview")) { return(StoreObjectType.UserPhotoPreview); } if (ObjectClass.IsOfClass(itemClass, "IPM.UserPhoto")) { return(StoreObjectType.UserPhoto); } if (ObjectClass.IsOfClass(itemClass, "IPM.DistList")) { return(StoreObjectType.DistributionList); } if (ObjectClass.IsOfClass(itemClass, "IPM.Task")) { return(StoreObjectType.Task); } if (ObjectClass.IsOfClass(itemClass, "IPM.TaskRequest")) { return(StoreObjectType.TaskRequest); } if (ObjectClass.IsOfClass(itemClass, "IPM.ConversationAction")) { return(StoreObjectType.ConversationActionItem); } if (ObjectClass.IsOfClass(itemClass, "IPM.Note.rpmsg.Microsoft.Voicemail.UM.CA")) { return(StoreObjectType.Message); } if (ObjectClass.IsOfClass(itemClass, "IPM.Note.rpmsg.Microsoft.Voicemail.UM")) { return(StoreObjectType.Message); } if (ObjectClass.IsOfClass(itemClass, "IPM.Sharing", false)) { return(StoreObjectType.SharingMessage); } if (ObjectClass.IsOfClass(itemClass, "IPM.GroupMailbox.JoinRequest")) { return(StoreObjectType.GroupMailboxRequestMessage); } if (ObjectClass.IsOfClass(itemClass, "IPM.MailboxAssociation.Group")) { return(StoreObjectType.MailboxAssociationGroup); } if (ObjectClass.IsOfClass(itemClass, "IPM.MailboxAssociation.User")) { return(StoreObjectType.MailboxAssociationUser); } if (ObjectClass.IsOfClass(itemClass, "IPM.HierarchySync.Metadata")) { return(StoreObjectType.HierarchySyncMetadata); } if (ObjectClass.IsSubscriptionDataItem(itemClass)) { return(StoreObjectType.PushNotificationSubscription); } if (ObjectClass.IsOutlookServiceSubscriptionDataItem(itemClass)) { return(StoreObjectType.OutlookServiceSubscription); } if (ObjectClass.IsConfigurationItem(itemClass)) { return(StoreObjectType.Configuration); } if (ObjectClass.IsParkedMeetingMessage(itemClass)) { return(StoreObjectType.ParkedMeetingMessage); } if (ObjectClass.IsGenericMessage(itemClass)) { return(StoreObjectType.Message); } if (ObjectClass.IsCalendarFolder(itemClass)) { return(StoreObjectType.CalendarFolder); } if (ObjectClass.IsContactsFolder(itemClass)) { return(StoreObjectType.ContactsFolder); } if (ObjectClass.IsTaskFolder(itemClass)) { return(StoreObjectType.TasksFolder); } if (ObjectClass.IsNotesFolder(itemClass)) { return(StoreObjectType.NotesFolder); } if (ObjectClass.IsJournalFolder(itemClass)) { return(StoreObjectType.JournalFolder); } if (ObjectClass.IsShortcutFolder(itemClass)) { return(StoreObjectType.ShortcutFolder); } if (ObjectClass.IsGenericFolder(itemClass)) { return(StoreObjectType.Folder); } return(StoreObjectType.Unknown); }