]> git.ktnx.net Git - mobile-ledger.git/blobdiff - app/src/main/java/net/ktnx/mobileledger/model/Currency.java
more fall-outs after transition to surrogate IDs
[mobile-ledger.git] / app / src / main / java / net / ktnx / mobileledger / model / Currency.java
index 28e6d03e9fe6c2007c1b4ece489472c027ab030b..1c7dbf7f81f014062c1282d55d2f9633d47abe9b 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright © 2019 Damyan Ivanov.
+ * Copyright © 2020 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
@@ -42,7 +42,7 @@ public class Currency {
                            (oldItem.hasGap == newItem.hasGap);
                 }
             };
-    private int id;
+    private final int id;
     private String name;
     private Position position;
     private boolean hasGap;
@@ -76,6 +76,10 @@ public class Currency {
         MobileLedgerProfile profile = Data.getProfile();
         return profile.loadCurrencyByName(name);
     }
+    public static Currency loadById(int id) {
+        MobileLedgerProfile profile = Data.getProfile();
+        return profile.loadCurrencyById(id);
+    }
     static public boolean equal(Currency left, Currency right) {
         if (left == null) {
             return right == null;
@@ -119,24 +123,6 @@ public class Currency {
         this.hasGap = hasGap;
     }
     public enum Position {
-        before(-1), after(1), unknown(0), none(-2);
-        private int value;
-        Position(int value) {
-            this.value = value;
-        }
-        static Position valueOf(int value) {
-            switch (value) {
-                case -1:
-                    return before;
-                case +1:
-                    return after;
-                case 0:
-                    return unknown;
-                case -2:
-                    return none;
-                default:
-                    throw new IllegalStateException(String.format("Unexpected value (%d)", value));
-            }
-        }
+        before, after, unknown, none
     }
 }