Classes in this File | Line Coverage | Branch Coverage | Complexity | ||||
CountryBase |
|
| 1.2608695652173914;1.261 |
1 | // Do not edit this file! It was generated by Melati POEM's DSD preprocessor. | |
2 | ||
3 | package org.paneris.bibliomania.generated; | |
4 | ||
5 | ||
6 | import java.util.Collections; | |
7 | import java.util.Enumeration; | |
8 | import java.util.List; | |
9 | import org.melati.poem.AccessPoemException; | |
10 | import org.melati.poem.CachedSelection; | |
11 | import org.melati.poem.Column; | |
12 | import org.melati.poem.Field; | |
13 | import org.melati.poem.JdbcPersistent; | |
14 | import org.melati.poem.NoSuchRowPoemException; | |
15 | import org.melati.poem.ValidationPoemException; | |
16 | import org.melati.poem.util.EmptyEnumeration; | |
17 | import org.paneris.bibliomania.BibliomaniaDatabaseTables; | |
18 | import org.paneris.bibliomania.Country; | |
19 | import org.paneris.bibliomania.CountryTable; | |
20 | import org.paneris.bibliomania.DeliveryChargeBand; | |
21 | import org.paneris.bibliomania.ShopOrder; | |
22 | ||
23 | ||
24 | /** | |
25 | * Melati POEM generated abstract base class for a <code>Persistent</code> | |
26 | * <code>Country</code> Object. | |
27 | * | |
28 | * see org.melati.poem.prepro.TableDef#generatePersistentBaseJava | |
29 | */ | |
30 | 0 | public abstract class CountryBase extends JdbcPersistent { |
31 | ||
32 | ||
33 | /** | |
34 | * Retrieves the Database object. | |
35 | * | |
36 | * see org.melati.poem.prepro.TableDef#generatePersistentBaseJava | |
37 | * @return the database | |
38 | */ | |
39 | public BibliomaniaDatabaseTables getBibliomaniaDatabaseTables() { | |
40 | 0 | return (BibliomaniaDatabaseTables)getDatabase(); |
41 | } | |
42 | ||
43 | ||
44 | /** | |
45 | * Retrieves the <code>CountryTable</code> table | |
46 | * which this <code>Persistent</code> is from. | |
47 | * | |
48 | * see org.melati.poem.prepro.TableDef#generatePersistentBaseJava | |
49 | * @return the CountryTable | |
50 | */ | |
51 | @SuppressWarnings("unchecked") | |
52 | public CountryTable<Country> getCountryTable() { | |
53 | 0 | return (CountryTable<Country>)getTable(); |
54 | } | |
55 | ||
56 | @SuppressWarnings("unchecked") | |
57 | private CountryTable<Country> _getCountryTable() { | |
58 | 0 | return (CountryTable<Country>)getTable(); |
59 | } | |
60 | ||
61 | // Fields in this table | |
62 | /** | |
63 | * id | |
64 | */ | |
65 | protected Integer id; | |
66 | /** | |
67 | * Display name - The country's name | |
68 | */ | |
69 | protected String displayname; | |
70 | /** | |
71 | * Delivery Charge Band | |
72 | */ | |
73 | protected Integer deliverycharge; | |
74 | ||
75 | ||
76 | /** | |
77 | * Retrieves the <code>Id</code> value, without locking, | |
78 | * for this <code>Country</code> <code>Persistent</code>. | |
79 | * | |
80 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
81 | * @return the Integer id | |
82 | */ | |
83 | public Integer getId_unsafe() { | |
84 | 0 | return id; |
85 | } | |
86 | ||
87 | ||
88 | /** | |
89 | * Sets the <code>Id</code> value directly, without checking, | |
90 | * for this Country <code>Persistent</code>. | |
91 | * | |
92 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
93 | * @param cooked the pre-validated value to set | |
94 | */ | |
95 | public void setId_unsafe(Integer cooked) { | |
96 | 0 | id = cooked; |
97 | 0 | } |
98 | ||
99 | /** | |
100 | * Retrieves the Id value, with locking, for this | |
101 | * <code>Country</code> <code>Persistent</code>. | |
102 | * | |
103 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
104 | * @throws AccessPoemException | |
105 | * if the current <code>AccessToken</code> | |
106 | * does not confer write access rights | |
107 | * @return the value of the field <code>Id</code> for this | |
108 | * <code>Country</code> <code>Persistent</code> | |
109 | */ | |
110 | ||
111 | public Integer getId() | |
112 | throws AccessPoemException { | |
113 | 0 | readLock(); |
114 | 0 | return getId_unsafe(); |
115 | } | |
116 | ||
117 | ||
118 | /** | |
119 | * Sets the <code>Id</code> value, with checking, for this | |
120 | * <code>Country</code> <code>Persistent</code>. | |
121 | * | |
122 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
123 | * @param cooked a validated <code>int</code> | |
124 | * @throws AccessPoemException | |
125 | * if the current <code>AccessToken</code> | |
126 | * does not confer write access rights | |
127 | * @throws ValidationPoemException | |
128 | * if the value is not valid | |
129 | */ | |
130 | public void setId(Integer cooked) | |
131 | throws AccessPoemException, ValidationPoemException { | |
132 | 0 | _getCountryTable().getIdColumn(). |
133 | getType().assertValidCooked(cooked); | |
134 | 0 | writeLock(); |
135 | 0 | setId_unsafe(cooked); |
136 | 0 | } |
137 | ||
138 | /** | |
139 | * Sets the <code>Id</code> value, with checking, for this | |
140 | * <code>Country</code> <code>Persistent</code>. | |
141 | * | |
142 | * Generated by org.melati.poem.prepro.IntegerFieldDef#generateBaseMethods | |
143 | * @param cooked a validated <code>int</code> | |
144 | * @throws AccessPoemException | |
145 | * if the current <code>AccessToken</code> | |
146 | * does not confer write access rights | |
147 | * @throws ValidationPoemException | |
148 | * if the value is not valid | |
149 | */ | |
150 | ||
151 | public final void setId(int cooked) | |
152 | throws AccessPoemException, ValidationPoemException { | |
153 | 0 | setId(new Integer(cooked)); |
154 | 0 | } |
155 | ||
156 | ||
157 | /** | |
158 | * Retrieves the <code>Id</code> value as a <code>Field</code> | |
159 | * from this <code>Country</code> <code>Persistent</code>. | |
160 | * | |
161 | * see org.melati.poem.prepro.FieldDef#generateFieldCreator | |
162 | * @throws AccessPoemException | |
163 | * if the current <code>AccessToken</code> | |
164 | * does not confer write access rights | |
165 | * @return the Integer id | |
166 | */ | |
167 | public Field<Integer> getIdField() throws AccessPoemException { | |
168 | 0 | Column<Integer> c = _getCountryTable().getIdColumn(); |
169 | 0 | return new Field<Integer>((Integer)c.getRaw(this), c); |
170 | } | |
171 | ||
172 | ||
173 | /** | |
174 | * Retrieves the <code>Displayname</code> value, without locking, | |
175 | * for this <code>Country</code> <code>Persistent</code>. | |
176 | * | |
177 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
178 | * @return the String displayname | |
179 | */ | |
180 | public String getDisplayname_unsafe() { | |
181 | 0 | return displayname; |
182 | } | |
183 | ||
184 | ||
185 | /** | |
186 | * Sets the <code>Displayname</code> value directly, without checking, | |
187 | * for this Country <code>Persistent</code>. | |
188 | * | |
189 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
190 | * @param cooked the pre-validated value to set | |
191 | */ | |
192 | public void setDisplayname_unsafe(String cooked) { | |
193 | 0 | displayname = cooked; |
194 | 0 | } |
195 | ||
196 | /** | |
197 | * Retrieves the Displayname value, with locking, for this | |
198 | * <code>Country</code> <code>Persistent</code>. | |
199 | * Field description: | |
200 | * The country's name | |
201 | * | |
202 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
203 | * @throws AccessPoemException | |
204 | * if the current <code>AccessToken</code> | |
205 | * does not confer write access rights | |
206 | * @return the value of the field <code>Displayname</code> for this | |
207 | * <code>Country</code> <code>Persistent</code> | |
208 | */ | |
209 | ||
210 | public String getDisplayname() | |
211 | throws AccessPoemException { | |
212 | 0 | readLock(); |
213 | 0 | return getDisplayname_unsafe(); |
214 | } | |
215 | ||
216 | ||
217 | /** | |
218 | * Sets the <code>Displayname</code> value, with checking, for this | |
219 | * <code>Country</code> <code>Persistent</code>. | |
220 | * Field description: | |
221 | * The country's name | |
222 | * | |
223 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
224 | * @param cooked a validated <code>int</code> | |
225 | * @throws AccessPoemException | |
226 | * if the current <code>AccessToken</code> | |
227 | * does not confer write access rights | |
228 | * @throws ValidationPoemException | |
229 | * if the value is not valid | |
230 | */ | |
231 | public void setDisplayname(String cooked) | |
232 | throws AccessPoemException, ValidationPoemException { | |
233 | 0 | _getCountryTable().getDisplaynameColumn(). |
234 | getType().assertValidCooked(cooked); | |
235 | 0 | writeLock(); |
236 | 0 | setDisplayname_unsafe(cooked); |
237 | 0 | } |
238 | ||
239 | ||
240 | /** | |
241 | * Retrieves the <code>Displayname</code> value as a <code>Field</code> | |
242 | * from this <code>Country</code> <code>Persistent</code>. | |
243 | * | |
244 | * see org.melati.poem.prepro.FieldDef#generateFieldCreator | |
245 | * @throws AccessPoemException | |
246 | * if the current <code>AccessToken</code> | |
247 | * does not confer write access rights | |
248 | * @return the String displayname | |
249 | */ | |
250 | public Field<String> getDisplaynameField() throws AccessPoemException { | |
251 | 0 | Column<String> c = _getCountryTable().getDisplaynameColumn(); |
252 | 0 | return new Field<String>((String)c.getRaw(this), c); |
253 | } | |
254 | ||
255 | ||
256 | /** | |
257 | * Retrieves the <code>Deliverycharge</code> value, without locking, | |
258 | * for this <code>Country</code> <code>Persistent</code>. | |
259 | * | |
260 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
261 | * @return the Integer deliverycharge | |
262 | */ | |
263 | public Integer getDeliverycharge_unsafe() { | |
264 | 0 | return deliverycharge; |
265 | } | |
266 | ||
267 | ||
268 | /** | |
269 | * Sets the <code>Deliverycharge</code> value directly, without checking, | |
270 | * for this Country <code>Persistent</code>. | |
271 | * | |
272 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
273 | * @param cooked the pre-validated value to set | |
274 | */ | |
275 | public void setDeliverycharge_unsafe(Integer cooked) { | |
276 | 0 | deliverycharge = cooked; |
277 | 0 | } |
278 | ||
279 | /** | |
280 | * Retrieves the Table Row Object ID. | |
281 | * | |
282 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
283 | * @throws AccessPoemException | |
284 | * if the current <code>AccessToken</code> | |
285 | * does not confer read access rights | |
286 | * @return the TROID as an <code>Integer</code> | |
287 | */ | |
288 | ||
289 | public Integer getDeliverychargeTroid() | |
290 | throws AccessPoemException { | |
291 | 0 | readLock(); |
292 | 0 | return getDeliverycharge_unsafe(); |
293 | } | |
294 | ||
295 | ||
296 | /** | |
297 | * Sets the Table Row Object ID. | |
298 | * | |
299 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
300 | * @param raw a Table Row Object Id | |
301 | * @throws AccessPoemException | |
302 | * if the current <code>AccessToken</code> | |
303 | * does not confer write access rights | |
304 | */ | |
305 | public void setDeliverychargeTroid(Integer raw) | |
306 | throws AccessPoemException { | |
307 | 0 | setDeliverycharge(raw == null ? null : |
308 | getBibliomaniaDatabaseTables().getDeliveryChargeBandTable().getDeliveryChargeBandObject(raw)); | |
309 | 0 | } |
310 | ||
311 | ||
312 | /** | |
313 | * Retrieves the <code>Deliverycharge</code> object referred to. | |
314 | * | |
315 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
316 | * @throws AccessPoemException | |
317 | * if the current <code>AccessToken</code> | |
318 | * does not confer read access rights | |
319 | * @throws NoSuchRowPoemException | |
320 | * if the <code>Persistent</code> has yet to be allocated a TROID | |
321 | * @return the <code>Deliverycharge</code> as a <code>DeliveryChargeBand</code> | |
322 | */ | |
323 | public DeliveryChargeBand getDeliverycharge() | |
324 | throws AccessPoemException, NoSuchRowPoemException { | |
325 | 0 | Integer troid = getDeliverychargeTroid(); |
326 | 0 | return troid == null ? null : |
327 | getBibliomaniaDatabaseTables().getDeliveryChargeBandTable().getDeliveryChargeBandObject(troid); | |
328 | } | |
329 | ||
330 | ||
331 | /** | |
332 | * Set the Deliverycharge. | |
333 | * | |
334 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
335 | * @param cooked a validated <code>DeliveryChargeBand</code> | |
336 | * @throws AccessPoemException | |
337 | * if the current <code>AccessToken</code> | |
338 | * does not confer write access rights | |
339 | */ | |
340 | public void setDeliverycharge(DeliveryChargeBand cooked) | |
341 | throws AccessPoemException { | |
342 | 0 | _getCountryTable(). |
343 | getDeliverychargeColumn(). | |
344 | getType().assertValidCooked(cooked); | |
345 | 0 | writeLock(); |
346 | 0 | if (cooked == null) |
347 | 0 | setDeliverycharge_unsafe(null); |
348 | else { | |
349 | 0 | cooked.existenceLock(); |
350 | 0 | setDeliverycharge_unsafe(cooked.troid()); |
351 | } | |
352 | 0 | } |
353 | ||
354 | ||
355 | /** | |
356 | * Retrieves the <code>Deliverycharge</code> value as a <code>Field</code> | |
357 | * from this <code>Country</code> <code>Persistent</code>. | |
358 | * | |
359 | * see org.melati.poem.prepro.FieldDef#generateFieldCreator | |
360 | * @throws AccessPoemException | |
361 | * if the current <code>AccessToken</code> | |
362 | * does not confer write access rights | |
363 | * @return the Integer deliverycharge | |
364 | */ | |
365 | public Field<Integer> getDeliverychargeField() throws AccessPoemException { | |
366 | 0 | Column<Integer> c = _getCountryTable().getDeliverychargeColumn(); |
367 | 0 | return new Field<Integer>((Integer)c.getRaw(this), c); |
368 | } | |
369 | ||
370 | 0 | private CachedSelection<ShopOrder> countryShopOrders = null; |
371 | /** References to this Country in the ShopOrder table via its country field.*/ | |
372 | @SuppressWarnings("unchecked") | |
373 | public Enumeration<ShopOrder> getCountryShopOrders() { | |
374 | 0 | if (getTroid() == null) |
375 | 0 | return new EmptyEnumeration<ShopOrder>(); |
376 | else { | |
377 | 0 | if (countryShopOrders == null) |
378 | 0 | countryShopOrders = |
379 | getBibliomaniaDatabaseTables().getShopOrderTable().getCountryColumn().cachedSelectionWhereEq(getTroid()); | |
380 | 0 | return countryShopOrders.objects(); |
381 | } | |
382 | } | |
383 | ||
384 | ||
385 | /** References to this Country in the ShopOrder table via its country field, as a List.*/ | |
386 | public List<ShopOrder> getCountryShopOrderList() { | |
387 | 0 | return Collections.list(getCountryShopOrders()); |
388 | } | |
389 | ||
390 | ||
391 | ||
392 | } | |
393 |