X-Git-Url: https://git.ktnx.net/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fdb%2FTemplateHeader.java;h=87ea4fd84050ca741f3acdfe013718cbff3c5d7a;hb=4a44ce88b61f00c2710877cf26818db2728b5d91;hp=6f8e25df384725c28569a9a56a6c54215763c1f4;hpb=3aef8f6c15117aa4ea9abd687ad2c69e0f1f25bb;p=mobile-ledger.git diff --git a/app/src/main/java/net/ktnx/mobileledger/db/TemplateHeader.java b/app/src/main/java/net/ktnx/mobileledger/db/TemplateHeader.java index 6f8e25df..87ea4fd8 100644 --- a/app/src/main/java/net/ktnx/mobileledger/db/TemplateHeader.java +++ b/app/src/main/java/net/ktnx/mobileledger/db/TemplateHeader.java @@ -21,21 +21,27 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.room.ColumnInfo; import androidx.room.Entity; +import androidx.room.Index; import androidx.room.PrimaryKey; import net.ktnx.mobileledger.utils.Misc; import org.jetbrains.annotations.NotNull; -@Entity(tableName = "templates") +import java.util.UUID; + +@Entity(tableName = "templates", + indices = {@Index(name = "templates_uuid_idx", unique = true, value = "uuid")}) public class TemplateHeader extends TemplateBase { @PrimaryKey(autoGenerate = true) - @NonNull - private Long id; + private long id; @ColumnInfo(name = "name") @NonNull private String name; @NonNull + @ColumnInfo + private String uuid; + @NonNull @ColumnInfo(name = "regular_expression") private String regularExpression; @ColumnInfo(name = "test_text") @@ -60,15 +66,20 @@ public class TemplateHeader extends TemplateBase { private Integer dateDay; @ColumnInfo(name = "date_day_match_group") private Integer dateDayMatchGroup; + @ColumnInfo(name = "is_fallback") + private boolean isFallback; public TemplateHeader(@NotNull Long id, @NonNull String name, @NonNull String regularExpression) { this.id = id; this.name = name; this.regularExpression = regularExpression; + this.uuid = UUID.randomUUID() + .toString(); } public TemplateHeader(TemplateHeader origin) { id = origin.id; name = origin.name; + uuid = origin.uuid; regularExpression = origin.regularExpression; testText = origin.testText; transactionDescription = origin.transactionDescription; @@ -81,6 +92,20 @@ public class TemplateHeader extends TemplateBase { dateMonthMatchGroup = origin.dateMonthMatchGroup; dateDay = origin.dateDay; dateDayMatchGroup = origin.dateDayMatchGroup; + isFallback = origin.isFallback; + } + @NonNull + public String getUuid() { + return uuid; + } + public void setUuid(@NonNull String uuid) { + this.uuid = uuid; + } + public boolean isFallback() { + return isFallback; + } + public void setFallback(boolean fallback) { + isFallback = fallback; } public String getTestText() { return testText; @@ -118,11 +143,10 @@ public class TemplateHeader extends TemplateBase { public void setDateDay(Integer dateDay) { this.dateDay = dateDay; } - @NonNull - public Long getId() { + public long getId() { return id; } - public void setId(@NonNull Long id) { + public void setId(long id) { this.id = id; } @NonNull @@ -194,7 +218,7 @@ public class TemplateHeader extends TemplateBase { } public TemplateHeader createDuplicate() { TemplateHeader dup = new TemplateHeader(this); - dup.id = null; + dup.id = 0; return dup; }