@abc.abstractmethod<EOL><INDENT>def get_time_periods_in_date_range(self, start, end):<DEDENT>
return<EOL>
Gets a ``TimePeriodList`` corresponding to the given ``DateTime``.

        Time periods whose start end end times are included in the given
        date range are matched.In plenary mode, the returned list
        contains all of the time periods specified in the ``Id`` list,
        in the order of the list, including duplicates, or an error
        results if an ``Id`` in the supplied list is not found or
        inaccessible. Otherwise, inaccessible ``TimePeriods`` may be
        omitted from the list and may present the elements in any order
        including returning a unique set.

        :param start: start of daterange
        :type start: ``osid.calendaring.DateTime``
        :param end: end of date range
        :type end: ``osid.calendaring.DateTime``
        :return: the returned ``TimePeriod`` list
        :rtype: ``osid.calendaring.TimePeriodList``
        :raise: ``InvalidArgument`` -- ``end`` is less than ``start``
        :raise: ``NullArgument`` -- ``start`` or ``end`` is ``null``
        :raise: ``OperationFailed`` -- unable to complete request
        :raise: ``PermissionDenied`` -- authorization failure

        *compliance: mandatory -- This method must be implemented.*