private static RecurrenceType GetTaskRecurrenceTypeFromBlob(byte[] blob) { if (blob == null) { return(RecurrenceType.None); } RecurrenceType result; try { TaskRecurrence taskRecurrence = InternalRecurrence.InternalParseTask(blob, null, null, null); result = RecurrenceTypeProperty.TaskRecurrencePatternToRecurrenceType(taskRecurrence); } catch (RecurrenceFormatException) { result = RecurrenceType.None; } return(result); }
private static RecurrenceType TaskRecurrencePatternToRecurrenceType(TaskRecurrence taskRecurrence) { if (taskRecurrence == null) { return(RecurrenceType.None); } RecurrencePattern pattern = taskRecurrence.Pattern; if (pattern is DailyRegeneratingPattern) { return(RecurrenceType.DailyRegenerating); } if (pattern is WeeklyRegeneratingPattern) { return(RecurrenceType.WeeklyRegenerating); } if (pattern is MonthlyRegeneratingPattern) { return(RecurrenceType.MonthlyRegenerating); } if (pattern is YearlyRegeneratingPattern) { return(RecurrenceType.YearlyRegenerating); } if (pattern is DailyRecurrencePattern) { return(RecurrenceType.Daily); } if (pattern is WeeklyRecurrencePattern) { return(RecurrenceType.Weekly); } if (pattern is MonthlyRecurrencePattern || pattern is MonthlyThRecurrencePattern) { return(RecurrenceType.Monthly); } if (pattern is YearlyRecurrencePattern || pattern is YearlyThRecurrencePattern) { return(RecurrenceType.Yearly); } return(RecurrenceType.None); }