View Javadoc
1   /*
2    * MoneyWise: Finance Application
3    * Copyright 2012-2026. Tony Washer
4    *
5    * Licensed under the Apache License, Version 2.0 (the "License"); you may not
6    * use this file except in compliance with the License.  You may obtain a copy
7    * of the License at
8    *
9    *   http://www.apache.org/licenses/LICENSE-2.0
10   *
11   * Unless required by applicable law or agreed to in writing, software
12   * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
13   * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
14   * License for the specific language governing permissions and limitations under
15   * the License.
16   */
17  package io.github.tonywasher.joceanus.moneywise.atlas.data.analysis.buckets;
18  
19  import io.github.tonywasher.joceanus.metis.data.MetisDataItem.MetisDataFieldId;
20  import io.github.tonywasher.joceanus.oceanus.resource.OceanusBundleId;
21  import io.github.tonywasher.joceanus.oceanus.resource.OceanusBundleLoader;
22  
23  import java.util.ResourceBundle;
24  
25  /**
26   * Resource IDs for MoneyWise Analysis Fields.
27   */
28  public enum MoneyWiseXAnalysisBucketResource
29          implements OceanusBundleId, MetisDataFieldId {
30      /**
31       * Analysis Name.
32       */
33      ANALYSIS_NAME("Analysis.Name"),
34  
35      /**
36       * Analysis Analyser Name.
37       */
38      ANALYSIS_ANALYSER("Analysis.Analyser"),
39  
40      /**
41       * Analysis Manager Name.
42       */
43      ANALYSIS_MANAGER("Analysis.Manager"),
44  
45      /**
46       * Analysis Chargeable Events.
47       */
48      ANALYSIS_CHARGES("Analysis.Charges"),
49  
50      /**
51       * Analysis Dilution Events.
52       */
53      ANALYSIS_DILUTIONS("Analysis.Dilutions"),
54  
55      /**
56       * Analysis Totals.
57       */
58      ANALYSIS_TOTALS("Analysis.Totals"),
59  
60      /**
61       * Bucket Account.
62       */
63      BUCKET_ACCOUNT("Bucket.Account"),
64  
65      /**
66       * Bucket BaseValues.
67       */
68      BUCKET_BASEVALUES("Bucket.BaseValues"),
69  
70      /**
71       * Bucket History.
72       */
73      BUCKET_HISTORY("Bucket.History"),
74  
75      /**
76       * Bucket SnapShot.
77       */
78      BUCKET_SNAPSHOT("Bucket.SnapShot"),
79  
80      /**
81       * Bucket Values.
82       */
83      BUCKET_VALUES("Bucket.Values"),
84  
85      /**
86       * Bucket Previous Values.
87       */
88      BUCKET_PREVIOUS("Bucket.Previous"),
89  
90      /**
91       * Filter All.
92       */
93      FILTER_ALL("Filter.All"),
94  
95      /**
96       * TransTag Name.
97       */
98      TRANSTAG_NAME("TransTag.Name"),
99  
100     /**
101      * TransTag List.
102      */
103     TRANSTAG_LIST("TransTag.List"),
104 
105     /**
106      * Cash Name.
107      */
108     CASH_NAME("Cash.Name"),
109 
110     /**
111      * Cash List.
112      */
113     CASH_LIST("Cash.List"),
114 
115     /**
116      * CashCategory Name.
117      */
118     CASHCATEGORY_NAME("CashCategory.Name"),
119 
120     /**
121      * CashCategory List.
122      */
123     CASHCATEGORY_LIST("CashCategory.List"),
124 
125     /**
126      * Deposit Name.
127      */
128     DEPOSIT_NAME("Deposit.Name"),
129 
130     /**
131      * Deposit List.
132      */
133     DEPOSIT_LIST("Deposit.List"),
134 
135     /**
136      * DepositCategory Name.
137      */
138     DEPOSITCATEGORY_NAME("DepositCategory.Name"),
139 
140     /**
141      * DepositCategory List.
142      */
143     DEPOSITCATEGORY_LIST("DepositCategory.List"),
144 
145     /**
146      * Loan Name.
147      */
148     LOAN_NAME("Loan.Name"),
149 
150     /**
151      * Loan List.
152      */
153     LOAN_LIST("Loan.List"),
154 
155     /**
156      * Loan isCreditCard.
157      */
158     LOAN_CREDITCARD("Loan.isCreditCard"),
159 
160     /**
161      * LoanCategory Name.
162      */
163     LOANCATEGORY_NAME("LoanCategory.Name"),
164 
165     /**
166      * LoanCategory List.
167      */
168     LOANCATEGORY_LIST("LoanCategory.List"),
169 
170     /**
171      * TransactionCategory Name.
172      */
173     TRANSCATEGORY_NAME("TransCategory.Name"),
174 
175     /**
176      * TransactionCategory List.
177      */
178     TRANSCATEGORY_LIST("TransCategory.List"),
179 
180     /**
181      * Payee Name.
182      */
183     PAYEE_NAME("Payee.Name"),
184 
185     /**
186      * Payee List.
187      */
188     PAYEE_LIST("Payee.List"),
189 
190     /**
191      * Portfolio Name.
192      */
193     PORTFOLIO_NAME("Portfolio.Name"),
194 
195     /**
196      * Portfolio List.
197      */
198     PORTFOLIO_LIST("Portfolio.List"),
199 
200     /**
201      * Portfolio Cash Name.
202      */
203     PORTFOLIOCASH_NAME("Portfolio.Cash.Name"),
204 
205     /**
206      * Security Name.
207      */
208     SECURITY_NAME("Security.Name"),
209 
210     /**
211      * Security List.
212      */
213     SECURITY_LIST("Security.List"),
214 
215     /**
216      * TaxBasis Name.
217      */
218     TAXBASIS_NAME("TaxBasis.Name"),
219 
220     /**
221      * TaxBasis List.
222      */
223     TAXBASIS_LIST("TaxBasis.List"),
224 
225     /**
226      * TaxBasisAccount Name.
227      */
228     TAXBASIS_ACCOUNTNAME("TaxBasis.AccountName"),
229 
230     /**
231      * TaxBasisAccount List.
232      */
233     TAXBASIS_ACCOUNTLIST("TaxBasis.AccountList"),
234 
235     /**
236      * Dilution Name.
237      */
238     DILUTION_NAME("Dilution.Name"),
239 
240     /**
241      * Dilution List.
242      */
243     DILUTION_LIST("Dilution.List"),
244 
245     /**
246      * Charge Name.
247      */
248     CHARGE_NAME("Charge.Name"),
249 
250     /**
251      * Charge List.
252      */
253     CHARGE_LIST("Charge.List"),
254 
255     /**
256      * Charge Slice.
257      */
258     CHARGE_SLICE("Charge.Slice"),
259 
260     /**
261      * Charge Tax.
262      */
263     CHARGE_TAX("Charge.Tax"),
264 
265     /**
266      * TaxCalculation.
267      */
268     TAX_CALCULATION("Tax.Calculation"),
269 
270     /**
271      * TaxYears.
272      */
273     TAX_YEARS("Tax.Years");
274 
275     /**
276      * The Resource Loader.
277      */
278     private static final OceanusBundleLoader LOADER = OceanusBundleLoader.getLoader(MoneyWiseXAnalysisBucketResource.class.getCanonicalName(),
279             ResourceBundle::getBundle);
280 
281     /**
282      * The Id.
283      */
284     private final String theKeyName;
285 
286     /**
287      * The Value.
288      */
289     private String theValue;
290 
291     /**
292      * Constructor.
293      *
294      * @param pKeyName the key name
295      */
296     MoneyWiseXAnalysisBucketResource(final String pKeyName) {
297         theKeyName = pKeyName;
298     }
299 
300     @Override
301     public String getKeyName() {
302         return theKeyName;
303     }
304 
305     @Override
306     public String getNameSpace() {
307         return "MoneyWise.analysis";
308     }
309 
310     @Override
311     public String getValue() {
312         /* If we have not initialised the value */
313         if (theValue == null) {
314             /* Derive the value */
315             theValue = LOADER.getValue(this);
316         }
317 
318         /* return the value */
319         return theValue;
320     }
321 
322     @Override
323     public String getId() {
324         return getValue();
325     }
326 }