[CalendarServer-changes] [5178] CalendarServer/trunk/twext
source_changes at macosforge.org
source_changes at macosforge.org
Mon Feb 22 13:05:36 PST 2010
Revision: 5178
http://trac.macosforge.org/projects/calendarserver/changeset/5178
Author: wsanchez at apple.com
Date: 2010-02-22 13:05:36 -0800 (Mon, 22 Feb 2010)
Log Message:
-----------
Sigh. Undo 5177
Modified Paths:
--------------
CalendarServer/trunk/twext/__init__.py
CalendarServer/trunk/twext/patches.py
Removed Paths:
-------------
CalendarServer/trunk/twext/python/datetime.py
Modified: CalendarServer/trunk/twext/__init__.py
===================================================================
--- CalendarServer/trunk/twext/__init__.py 2010-02-22 21:04:44 UTC (rev 5177)
+++ CalendarServer/trunk/twext/__init__.py 2010-02-22 21:05:36 UTC (rev 5178)
@@ -19,4 +19,4 @@
"""
from twext import patches
-patches; del(patches)
+patches # pacify pyflakes
Modified: CalendarServer/trunk/twext/patches.py
===================================================================
--- CalendarServer/trunk/twext/patches.py 2010-02-22 21:04:44 UTC (rev 5177)
+++ CalendarServer/trunk/twext/patches.py 2010-02-22 21:05:36 UTC (rev 5178)
@@ -18,8 +18,6 @@
Patches for behavior in Twisted which calendarserver requires to be different.
"""
-__all__ = []
-
from twisted.mail.imap4 import Command
Command._1_RESPONSES += tuple(['BYE'])
Deleted: CalendarServer/trunk/twext/python/datetime.py
===================================================================
--- CalendarServer/trunk/twext/python/datetime.py 2010-02-22 21:04:44 UTC (rev 5177)
+++ CalendarServer/trunk/twext/python/datetime.py 2010-02-22 21:05:36 UTC (rev 5178)
@@ -1,139 +0,0 @@
-##
-# Copyright (c) 2006-2010 Apple Inc. All rights reserved.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-##
-
-"""
-Date/time Utilities
-"""
-
-__all__ = [
- "DateTime",
- "Date",
- "TimeDelta",
- "DateOrDateTime",
- "TimeRange",
- "UTC",
-]
-
-from datetime import date as Date, datetime as DateTime, timedelta as TimeDelta
-from vobject.icalendar import dateTimeToString, dateToString, utc as UTC
-
-
-class DateOrDateTime (object):
- def __init__(self, dateOrDateTime, defaultTZ=None):
- self._dateOrDateTime = dateOrDateTime
- if isinstance(dateOrDateTime, DateTime):
- self._isDateTime = True
- else:
- self._isDateTime = False
- self.defaultTZ = defaultTZ
-
- def _comparableDateTimes(self, other):
- dt1, dt2 = self.dateTime, other.dateTime
-
- def getTZInfo(tz):
- for defaultTZ in (self.defaultTZ, other.defaultTZ):
- if defaultTZ is not None:
- return defaultTZ
- return tz
-
- if dt1.tzinfo is None and dt2.tzinfo is not None:
- dt1 = dt1.replace(tzinfo=getTZInfo(dt2.tzinfo))
- elif dt1.tzinfo is not None and dt2.tzinfo is None:
- dt2 = dt2.replace(tzinfo=getTZInfo(dt1.tzinfo))
-
- return dt1, dt2
-
- def __cmp__(self, other):
- dt1, dt2 = self._comparableDateTimes(other)
-
- if dt1 == dt2:
- return 0
- elif dt1 < dt2:
- return -1
- else:
- return 1
-
- def __sub__(self, other):
- dt1, dt2 = self._comparableDateTimes(other)
- return dt1 - dt2
-
- @property
- def date(self):
- if self._isDateTime:
- return self._dateOrDateTime.date()
-
- @property
- def dateTime(self):
- if not self._isDateTime:
- d = self._dateOrDateTime
- return DateTime(d.year, d.month, d.day, tzinfo=self.tz)
-
- def iCalendarString(self):
- if self._isDateTime:
- return dateTimeToString(self._dateOrDateTime)
- else:
- return dateToString(self._dateOrDateTime)
-
- def asUTC(self):
- if self._isDateTime:
- d = self._dateOrDateTime
- if d.tzinfo is None:
- return self
- else:
- return self.__class__(d.astimezone(UTC))
- else:
- return self
-
-
-class TimeRange (object):
- def __init__(self, start=None, end=None, tz=None):
- self.start = start
- self.end = end
-
- def overlapsWith(self, other, tz=None):
- if self.start is not None and other.start is not None:
- if self.end is not None and other.end is not None:
- return self.start < other.end and self.end > other.start
- elif self.end is not None:
- return other.start < self.end
- elif other.end is not None:
- self.start >= other.start and self.start < other.end
- else:
- return False
- elif self.start is not None:
- return self.start < other.end
- elif other.start is not None:
- return self.end < other.end and self.end > other.start
- else:
- return False
-
-
-def normalizeStartEndDuration(start, end=None, duration=None):
- """
- Given a start with a end or dureation (no neither), obtain a
- normalized tuple of start and end.
- """
- assert end is None or duration is None, "Cannot specify both dtend and duration"
-
- # FIXME: Ask Cyrus: Why UTC?
- if start is not None:
- start = start.asUTC()
- if end is not None:
- end = end.asUTC()
- elif duration:
- end = start + duration
-
- return (start, end)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20100222/46bfdd89/attachment-0001.html>
More information about the calendarserver-changes
mailing list