From a31e8ba9a491018e8b148340e53830cad07ebf00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jelmer=20Vernoo=C4=B3?= Date: Thu, 16 Mar 2017 04:29:35 +0000 Subject: Check file validity. --- xandikos/icalendar.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'xandikos/icalendar.py') diff --git a/xandikos/icalendar.py b/xandikos/icalendar.py index 77ddbed..aa631dc 100644 --- a/xandikos/icalendar.py +++ b/xandikos/icalendar.py @@ -24,7 +24,7 @@ import logging from icalendar.cal import Calendar, component_factory -from xandikos.store import File +from xandikos.store import File, InvalidFileContents def calendar_component_delta(old_cal, new_cal): @@ -139,6 +139,13 @@ class ICalendarFile(File): super(ICalendarFile, self).__init__(content, content_type) self._calendar = None + def validate(self): + """Verify that file contents are valid.""" + try: + self.calendar + except ValueError: + raise InvalidFileContents(self.content_type, self.content) + @property def calendar(self): if self._calendar is None: -- cgit v1.2.3