<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def has_adjacent_fragments_only(self, min_index=None, max_index=None):
 """ Return ``True`` if the list contains only adjacent fragments, that is, if it does not have gaps. :param int min_index: examine fragments with index greater than or equal to this index (i.e., included) :param int max_index: examine fragments with index smaller than this index (i.e., excluded) :raises ValueError: if ``min_index`` is negative or ``max_index`` is bigger than the current number of fragments :rtype: bool """

        min_index, max_index = self._check_min_max_indices(min_index, max_index)
        for i in range(min_index, max_index - 1):
            current_interval = self[i].interval
            next_interval = self[i + 1].interval
            if not current_interval.is_adjacent_before(next_interval):
                self.log(u"Found non adjacent fragments")
                self.log([u"  Index %d => %s", i, current_interval])
                self.log([u"  Index %d => %s", i + 1, next_interval])
                return False
        return True