]> git.ktnx.net Git - mobile-ledger.git/blobdiff - app/src/main/java/net/ktnx/mobileledger/db/Profile.java
describe profiles for Room
[mobile-ledger.git] / app / src / main / java / net / ktnx / mobileledger / db / Profile.java
diff --git a/app/src/main/java/net/ktnx/mobileledger/db/Profile.java b/app/src/main/java/net/ktnx/mobileledger/db/Profile.java
new file mode 100644 (file)
index 0000000..1ed8a21
--- /dev/null
@@ -0,0 +1,190 @@
+/*
+ * Copyright © 2021 Damyan Ivanov.
+ * This file is part of MoLe.
+ * MoLe is free software: you can distribute it and/or modify it
+ * under the term of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your opinion), any later version.
+ *
+ * MoLe is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License terms for details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with MoLe. If not, see <https://www.gnu.org/licenses/>.
+ */
+
+package net.ktnx.mobileledger.db;
+
+import androidx.annotation.NonNull;
+import androidx.room.ColumnInfo;
+import androidx.room.Entity;
+
+/*
+ create table profiles(uuid varchar not null primary key, name not null, url not null,
+ use_authentication boolean not null, auth_user varchar, auth_password varchar, order_no
+ integer, permit_posting boolean default 0, theme integer default -1, preferred_accounts_filter
+ varchar, future_dates integer, api_version integer, show_commodity_by_default boolean default
+ 0, default_commodity varchar, show_comments_by_default boolean default 1,
+ detected_version_pre_1_19 boolean, detected_version_major integer, detected_version_minor
+ integer);
+*/
+@Entity(tableName = "profiles", primaryKeys = {"uuid"})
+public class Profile {
+    @NonNull
+    @ColumnInfo
+    private String uuid = "invalid";
+    @NonNull
+    @ColumnInfo
+    private String name = "";
+    @NonNull
+    @ColumnInfo
+    private String url = "";
+    @ColumnInfo(name = "use_authentication")
+    private boolean useAuthentication;
+    @ColumnInfo(name = "auth_user")
+    private String authUser;
+    @ColumnInfo(name = "auth_password")
+    private String authPassword;
+    @ColumnInfo(name = "order_no")
+    private int orderNo;
+    @ColumnInfo(name = "permit_posting")
+    private boolean permitPosting;
+    @ColumnInfo(defaultValue = "-1")
+    private int theme = -1;
+    @ColumnInfo(name = "preferred_accounts_filter")
+    private String preferredAccountsFilter;
+    @ColumnInfo(name = "future_dates")
+    private int futureDates;
+    @ColumnInfo(name = "api_version")
+    private int apiVersion;
+    @ColumnInfo(name = "show_commodity_by_default")
+    private boolean showCommodityByDefault;
+    @ColumnInfo(name = "default_commodity")
+    private String defaultCommodity;
+    @ColumnInfo(name = "show_comments_by_default", defaultValue = "1")
+    private boolean showCommentsByDefault = true;
+    @ColumnInfo(name = "detected_version_pre_1_19")
+    private boolean detectedVersionPre_1_19;
+    @ColumnInfo(name = "detected_version_major")
+    private int detectedVersionMajor;
+    @ColumnInfo(name = "detected_version_minor")
+    private int detectedVersionMinor;
+    @NonNull
+    public String getUuid() {
+        return uuid;
+    }
+    public void setUuid(@NonNull String uuid) {
+        this.uuid = uuid;
+    }
+    @NonNull
+    public String getName() {
+        return name;
+    }
+    public void setName(@NonNull String name) {
+        this.name = name;
+    }
+    @NonNull
+    public String getUrl() {
+        return url;
+    }
+    public void setUrl(@NonNull String url) {
+        this.url = url;
+    }
+    public boolean useAuthentication() {
+        return useAuthentication;
+    }
+    public void setUseAuthentication(boolean useAuthentication) {
+        this.useAuthentication = useAuthentication;
+    }
+    public String getAuthUser() {
+        return authUser;
+    }
+    public void setAuthUser(String authUser) {
+        this.authUser = authUser;
+    }
+    public String getAuthPassword() {
+        return authPassword;
+    }
+    public void setAuthPassword(String authPassword) {
+        this.authPassword = authPassword;
+    }
+    public int getOrderNo() {
+        return orderNo;
+    }
+    public void setOrderNo(int orderNo) {
+        this.orderNo = orderNo;
+    }
+    public boolean permitPosting() {
+        return permitPosting;
+    }
+    public void setPermitPosting(boolean permitPosting) {
+        this.permitPosting = permitPosting;
+    }
+    public int getTheme() {
+        return theme;
+    }
+    public void setTheme(int theme) {
+        this.theme = theme;
+    }
+    public String getPreferredAccountsFilter() {
+        return preferredAccountsFilter;
+    }
+    public void setPreferredAccountsFilter(String preferredAccountsFilter) {
+        this.preferredAccountsFilter = preferredAccountsFilter;
+    }
+    public int getFutureDates() {
+        return futureDates;
+    }
+    public void setFutureDates(int futureDates) {
+        this.futureDates = futureDates;
+    }
+    public int getApiVersion() {
+        return apiVersion;
+    }
+    public void setApiVersion(int apiVersion) {
+        this.apiVersion = apiVersion;
+    }
+    public boolean getShowCommodityByDefault() {
+        return showCommodityByDefault;
+    }
+    public void setShowCommodityByDefault(boolean showCommodityByDefault) {
+        this.showCommodityByDefault = showCommodityByDefault;
+    }
+    public String getDefaultCommodity() {
+        return defaultCommodity;
+    }
+    public void setDefaultCommodity(String defaultCommodity) {
+        this.defaultCommodity = defaultCommodity;
+    }
+    public boolean getShowCommentsByDefault() {
+        return showCommentsByDefault;
+    }
+    public void setShowCommentsByDefault(boolean showCommentsByDefault) {
+        this.showCommentsByDefault = showCommentsByDefault;
+    }
+    public boolean detectedVersionPre_1_19() {
+        return detectedVersionPre_1_19;
+    }
+    public void setDetectedVersionPre_1_19(boolean detectedVersionPre_1_19) {
+        this.detectedVersionPre_1_19 = detectedVersionPre_1_19;
+    }
+    public int getDetectedVersionMajor() {
+        return detectedVersionMajor;
+    }
+    public void setDetectedVersionMajor(int detectedVersionMajor) {
+        this.detectedVersionMajor = detectedVersionMajor;
+    }
+    public int getDetectedVersionMinor() {
+        return detectedVersionMinor;
+    }
+    public void setDetectedVersionMinor(int detectedVersionMinor) {
+        this.detectedVersionMinor = detectedVersionMinor;
+    }
+    @NonNull
+    @Override
+    public String toString() {
+        return getName();
+    }
+}