Change Tag constructor arguments

pull/848/head
Alex Baker 5 years ago
parent 7bc4c45536
commit f39a998630

@ -262,7 +262,7 @@ public class TasksXmlImporter {
String name = xml.readString("value");
String tagUid = xml.readString("value2");
if (tagDao.getTagByTaskAndTagUid(currentTask.getId(), tagUid) == null) {
tagDao.insert(new Tag(currentTask.getId(), currentTask.getUuid(), name, tagUid));
tagDao.insert(new Tag(currentTask, name, tagUid));
}
// Construct the TagData from Metadata
// Fix for failed backup, Version before 4.6.10

@ -201,8 +201,7 @@ public class TaskCreator {
tagData.setName(tag);
tagDataDao.createNew(tagData);
}
Tag link = new Tag(task.getId(), task.getUuid(), tagData.getName(), tagData.getRemoteId());
tagDao.insert(link);
tagDao.insert(new Tag(task, tagData));
}
}
}

@ -70,7 +70,7 @@ public class TaskDuplicator {
tagDao.insert(
transform(
tags, tag -> new Tag(clone.getId(), clone.getUuid(), tag.getName(), tag.getTagUid())));
tags, tag -> new Tag(clone, tag.getName(), tag.getTagUid())));
if (googleTask != null) {
googleTaskDao.insertAndShift(

@ -171,7 +171,7 @@ public final class TagsControlSet extends TaskEditControlFragment {
@Override
public void apply(Task task) {
if (synchronizeTags(task.getId(), task.getUuid())) {
if (synchronizeTags(task)) {
Flags.set(Flags.TAGS_CHANGED);
task.setModificationDate(DateUtilities.now());
}
@ -367,7 +367,8 @@ public final class TagsControlSet extends TaskEditControlFragment {
}
}
private boolean synchronizeTags(long taskId, String taskUuid) {
private boolean synchronizeTags(Task task) {
long taskId = task.getId();
for (TagData tagData : selectedTags) {
if (Task.NO_UUID.equals(tagData.getRemoteId())) {
tagDataDao.createNew(tagData);
@ -380,7 +381,7 @@ public final class TagsControlSet extends TaskEditControlFragment {
ArrayList<TagData> toRemove = newArrayList(filter(removed, notNull()));
tagDao.deleteTags(taskId, transform(toRemove, TagData::getRemoteId));
for (TagData tagData : added) {
Tag newLink = new Tag(taskId, taskUuid, tagData.getName(), tagData.getRemoteId());
Tag newLink = new Tag(task, tagData);
tagDao.insert(newLink);
}
return !removed.isEmpty() || !added.isEmpty();

@ -7,6 +7,7 @@ import androidx.room.Ignore;
import androidx.room.PrimaryKey;
import com.todoroo.andlib.data.Property.StringProperty;
import com.todoroo.andlib.data.Table;
import com.todoroo.astrid.data.Task;
import org.tasks.backup.XmlReader;
@Entity(tableName = "tags")
@ -38,9 +39,14 @@ public class Tag {
public Tag() {}
@Ignore
public Tag(long task, String taskUid, String name, String tagUid) {
this.task = task;
this.taskUid = taskUid;
public Tag(Task task, TagData tagData) {
this(task, tagData.getName(), tagData.getRemoteId());
}
@Ignore
public Tag(Task task, String name, String tagUid) {
this.task = task.getId();
this.taskUid = task.getUuid();
this.name = name;
this.tagUid = tagUid;
}

Loading…
Cancel
Save