X-Git-Url: https://git.madduck.net/etc/taskwarrior.git/blobdiff_plain/398bbf824e6143cf760002af3065897011e469f0..fda5cf272018a0596c3ea97c9d4658cf0b5fa048:/tasklib/task.py diff --git a/tasklib/task.py b/tasklib/task.py index 5a86529..081646d 100644 --- a/tasklib/task.py +++ b/tasklib/task.py @@ -653,8 +653,7 @@ class Task(TaskResource): if not self.saved: raise Task.NotSaved("Task needs to be saved to add annotation") - args = [self['uuid'], 'annotate', annotation] - self.warrior.execute_command(args) + self.backend.annotate_task(self, annotation) self.refresh(only_fields=['annotations']) def remove_annotation(self, annotation): @@ -663,45 +662,9 @@ class Task(TaskResource): if isinstance(annotation, TaskAnnotation): annotation = annotation['description'] - args = [self['uuid'], 'denotate', annotation] - self.warrior.execute_command(args) - self.refresh(only_fields=['annotations']) - - def _get_modified_fields_as_args(self): - args = [] - - def add_field(field): - # Add the output of format_field method to args list (defaults to - # field:value) - serialized_value = self._serialize(field, self._data[field]) - - # Empty values should not be enclosed in quotation marks, see - # TW-1510 - if serialized_value is '': - escaped_serialized_value = '' - else: - escaped_serialized_value = six.u("'{0}'").format(serialized_value) - - format_default = lambda: six.u("{0}:{1}").format(field, - escaped_serialized_value) - format_func = getattr(self, 'format_{0}'.format(field), - format_default) - - args.append(format_func()) - - # If we're modifying saved task, simply pass on all modified fields - if self.saved: - for field in self._modified_fields: - add_field(field) - # For new tasks, pass all fields that make sense - else: - for field in self._data.keys(): - if field in self.read_only_fields: - continue - add_field(field) - - return args + self.backend.denotate_task(self, annotation) + self.refresh(only_fields=['annotations']) def refresh(self, only_fields=None, after_save=False): # Raise error when trying to refresh a task that has not been saved