mirror of https://github.com/tasks/tasks
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
108 lines
2.3 KiB
Java
108 lines
2.3 KiB
Java
package org.tasks.data;
|
|
|
|
import androidx.annotation.NonNull;
|
|
import androidx.room.ColumnInfo;
|
|
import androidx.room.Entity;
|
|
import androidx.room.Ignore;
|
|
import androidx.room.Index;
|
|
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", indices = @Index(name = "tag_task", value = "task"))
|
|
public class Tag {
|
|
|
|
public static final String KEY = "tags-tag"; // $NON-NLS-1$
|
|
|
|
public static final Table TABLE = new Table("tags");
|
|
|
|
public static final StringProperty TASK_UID = new StringProperty(TABLE, "task_uid");
|
|
public static final StringProperty NAME = new StringProperty(TABLE, "name");
|
|
|
|
@PrimaryKey(autoGenerate = true)
|
|
@ColumnInfo(name = "_id")
|
|
private transient long id;
|
|
|
|
@ColumnInfo(name = "task")
|
|
private transient long task;
|
|
|
|
@ColumnInfo(name = "name")
|
|
private String name;
|
|
|
|
@ColumnInfo(name = "tag_uid")
|
|
private String tagUid;
|
|
|
|
@ColumnInfo(name = "task_uid")
|
|
private transient String taskUid;
|
|
|
|
public Tag() {}
|
|
|
|
@Ignore
|
|
public Tag(Task task, TagData tagData) {
|
|
this(task, tagData.getName(), tagData.getRemoteId());
|
|
}
|
|
|
|
@Ignore
|
|
public Tag(Task task, String name, String tagUid) {
|
|
this(task.getId(), task.getUuid(), name, tagUid);
|
|
}
|
|
|
|
@Ignore
|
|
public Tag(long taskId, String taskUid, String name, String tagUid) {
|
|
this.task = taskId;
|
|
this.taskUid = taskUid;
|
|
this.name = name;
|
|
this.tagUid = tagUid;
|
|
}
|
|
|
|
@Ignore
|
|
public Tag(XmlReader xmlReader) {
|
|
xmlReader.readString("name", this::setName);
|
|
xmlReader.readString("tag_uid", this::setTagUid);
|
|
xmlReader.readString("task_uid", this::setTaskUid);
|
|
}
|
|
|
|
public long getId() {
|
|
return id;
|
|
}
|
|
|
|
public void setId(long id) {
|
|
this.id = id;
|
|
}
|
|
|
|
public long getTask() {
|
|
return task;
|
|
}
|
|
|
|
public void setTask(long task) {
|
|
this.task = task;
|
|
}
|
|
|
|
public String getName() {
|
|
return name;
|
|
}
|
|
|
|
public void setName(String name) {
|
|
this.name = name;
|
|
}
|
|
|
|
public String getTagUid() {
|
|
return tagUid;
|
|
}
|
|
|
|
public void setTagUid(String tagUid) {
|
|
this.tagUid = tagUid;
|
|
}
|
|
|
|
@NonNull
|
|
public String getTaskUid() {
|
|
return taskUid;
|
|
}
|
|
|
|
public void setTaskUid(@NonNull String taskUid) {
|
|
this.taskUid = taskUid;
|
|
}
|
|
}
|