Classes in this File | Line Coverage | Branch Coverage | Complexity | ||||
ProductBase |
|
| 1.271604938271605;1.272 |
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.Book; | |
19 | import org.paneris.bibliomania.BookFormat; | |
20 | import org.paneris.bibliomania.Download; | |
21 | import org.paneris.bibliomania.Product; | |
22 | import org.paneris.bibliomania.ProductAssociation; | |
23 | import org.paneris.bibliomania.ProductTable; | |
24 | import org.paneris.bibliomania.Publisher; | |
25 | import org.paneris.bibliomania.ShopOrderItem; | |
26 | import org.paneris.bibliomania.SupplierProduct; | |
27 | ||
28 | ||
29 | /** | |
30 | * Melati POEM generated abstract base class for a <code>Persistent</code> | |
31 | * <code>Product</code> Object. | |
32 | * | |
33 | * see org.melati.poem.prepro.TableDef#generatePersistentBaseJava | |
34 | */ | |
35 | 0 | public abstract class ProductBase extends JdbcPersistent { |
36 | ||
37 | ||
38 | /** | |
39 | * Retrieves the Database object. | |
40 | * | |
41 | * see org.melati.poem.prepro.TableDef#generatePersistentBaseJava | |
42 | * @return the database | |
43 | */ | |
44 | public BibliomaniaDatabaseTables getBibliomaniaDatabaseTables() { | |
45 | 0 | return (BibliomaniaDatabaseTables)getDatabase(); |
46 | } | |
47 | ||
48 | ||
49 | /** | |
50 | * Retrieves the <code>ProductTable</code> table | |
51 | * which this <code>Persistent</code> is from. | |
52 | * | |
53 | * see org.melati.poem.prepro.TableDef#generatePersistentBaseJava | |
54 | * @return the ProductTable | |
55 | */ | |
56 | @SuppressWarnings("unchecked") | |
57 | public ProductTable<Product> getProductTable() { | |
58 | 0 | return (ProductTable<Product>)getTable(); |
59 | } | |
60 | ||
61 | @SuppressWarnings("unchecked") | |
62 | private ProductTable<Product> _getProductTable() { | |
63 | 0 | return (ProductTable<Product>)getTable(); |
64 | } | |
65 | ||
66 | // Fields in this table | |
67 | /** | |
68 | * id | |
69 | */ | |
70 | protected Integer id; | |
71 | /** | |
72 | * book - The book to be sold | |
73 | */ | |
74 | protected Integer book; | |
75 | /** | |
76 | * publisher - The publisher for this product | |
77 | */ | |
78 | protected Integer publisher; | |
79 | /** | |
80 | * download - The download object for this product (if any) | |
81 | */ | |
82 | protected Integer download; | |
83 | /** | |
84 | * Product Name - A name for this product if different to the Book title | |
85 | */ | |
86 | protected String name; | |
87 | /** | |
88 | * Description - Additional blurb about the product | |
89 | */ | |
90 | protected String description; | |
91 | /** | |
92 | * Retail Price - Price payable by the customer, including discounts, | |
93 | * excluding delivery | |
94 | */ | |
95 | protected Double price; | |
96 | /** | |
97 | * List Price - The normal selling price of the product, not including | |
98 | * delivery | |
99 | */ | |
100 | protected Double listprice; | |
101 | /** | |
102 | * ISBN - The ISBN number of this product (if any) | |
103 | */ | |
104 | protected String ISBN; | |
105 | /** | |
106 | * Picture - A jacket cover image or similar | |
107 | */ | |
108 | protected String picture; | |
109 | /** | |
110 | * Deleted? | |
111 | */ | |
112 | protected Boolean deleted; | |
113 | /** | |
114 | * format - The type of the product | |
115 | */ | |
116 | protected Integer format; | |
117 | ||
118 | ||
119 | /** | |
120 | * Retrieves the <code>Id</code> value, without locking, | |
121 | * for this <code>Product</code> <code>Persistent</code>. | |
122 | * | |
123 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
124 | * @return the Integer id | |
125 | */ | |
126 | public Integer getId_unsafe() { | |
127 | 0 | return id; |
128 | } | |
129 | ||
130 | ||
131 | /** | |
132 | * Sets the <code>Id</code> value directly, without checking, | |
133 | * for this Product <code>Persistent</code>. | |
134 | * | |
135 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
136 | * @param cooked the pre-validated value to set | |
137 | */ | |
138 | public void setId_unsafe(Integer cooked) { | |
139 | 0 | id = cooked; |
140 | 0 | } |
141 | ||
142 | /** | |
143 | * Retrieves the Id value, with locking, for this | |
144 | * <code>Product</code> <code>Persistent</code>. | |
145 | * | |
146 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
147 | * @throws AccessPoemException | |
148 | * if the current <code>AccessToken</code> | |
149 | * does not confer write access rights | |
150 | * @return the value of the field <code>Id</code> for this | |
151 | * <code>Product</code> <code>Persistent</code> | |
152 | */ | |
153 | ||
154 | public Integer getId() | |
155 | throws AccessPoemException { | |
156 | 0 | readLock(); |
157 | 0 | return getId_unsafe(); |
158 | } | |
159 | ||
160 | ||
161 | /** | |
162 | * Sets the <code>Id</code> value, with checking, for this | |
163 | * <code>Product</code> <code>Persistent</code>. | |
164 | * | |
165 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
166 | * @param cooked a validated <code>int</code> | |
167 | * @throws AccessPoemException | |
168 | * if the current <code>AccessToken</code> | |
169 | * does not confer write access rights | |
170 | * @throws ValidationPoemException | |
171 | * if the value is not valid | |
172 | */ | |
173 | public void setId(Integer cooked) | |
174 | throws AccessPoemException, ValidationPoemException { | |
175 | 0 | _getProductTable().getIdColumn(). |
176 | getType().assertValidCooked(cooked); | |
177 | 0 | writeLock(); |
178 | 0 | setId_unsafe(cooked); |
179 | 0 | } |
180 | ||
181 | /** | |
182 | * Sets the <code>Id</code> value, with checking, for this | |
183 | * <code>Product</code> <code>Persistent</code>. | |
184 | * | |
185 | * Generated by org.melati.poem.prepro.IntegerFieldDef#generateBaseMethods | |
186 | * @param cooked a validated <code>int</code> | |
187 | * @throws AccessPoemException | |
188 | * if the current <code>AccessToken</code> | |
189 | * does not confer write access rights | |
190 | * @throws ValidationPoemException | |
191 | * if the value is not valid | |
192 | */ | |
193 | ||
194 | public final void setId(int cooked) | |
195 | throws AccessPoemException, ValidationPoemException { | |
196 | 0 | setId(new Integer(cooked)); |
197 | 0 | } |
198 | ||
199 | ||
200 | /** | |
201 | * Retrieves the <code>Id</code> value as a <code>Field</code> | |
202 | * from this <code>Product</code> <code>Persistent</code>. | |
203 | * | |
204 | * see org.melati.poem.prepro.FieldDef#generateFieldCreator | |
205 | * @throws AccessPoemException | |
206 | * if the current <code>AccessToken</code> | |
207 | * does not confer write access rights | |
208 | * @return the Integer id | |
209 | */ | |
210 | public Field<Integer> getIdField() throws AccessPoemException { | |
211 | 0 | Column<Integer> c = _getProductTable().getIdColumn(); |
212 | 0 | return new Field<Integer>((Integer)c.getRaw(this), c); |
213 | } | |
214 | ||
215 | ||
216 | /** | |
217 | * Retrieves the <code>Book</code> value, without locking, | |
218 | * for this <code>Product</code> <code>Persistent</code>. | |
219 | * | |
220 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
221 | * @return the Integer book | |
222 | */ | |
223 | public Integer getBook_unsafe() { | |
224 | 0 | return book; |
225 | } | |
226 | ||
227 | ||
228 | /** | |
229 | * Sets the <code>Book</code> value directly, without checking, | |
230 | * for this Product <code>Persistent</code>. | |
231 | * | |
232 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
233 | * @param cooked the pre-validated value to set | |
234 | */ | |
235 | public void setBook_unsafe(Integer cooked) { | |
236 | 0 | book = cooked; |
237 | 0 | } |
238 | ||
239 | /** | |
240 | * Retrieves the Table Row Object ID. | |
241 | * | |
242 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
243 | * @throws AccessPoemException | |
244 | * if the current <code>AccessToken</code> | |
245 | * does not confer read access rights | |
246 | * @return the TROID as an <code>Integer</code> | |
247 | */ | |
248 | ||
249 | public Integer getBookTroid() | |
250 | throws AccessPoemException { | |
251 | 0 | readLock(); |
252 | 0 | return getBook_unsafe(); |
253 | } | |
254 | ||
255 | ||
256 | /** | |
257 | * Sets the Table Row Object ID. | |
258 | * | |
259 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
260 | * @param raw a Table Row Object Id | |
261 | * @throws AccessPoemException | |
262 | * if the current <code>AccessToken</code> | |
263 | * does not confer write access rights | |
264 | */ | |
265 | public void setBookTroid(Integer raw) | |
266 | throws AccessPoemException { | |
267 | 0 | setBook(raw == null ? null : |
268 | (Book)getBibliomaniaDatabaseTables().getBookTable().getBookObject(raw)); | |
269 | 0 | } |
270 | ||
271 | ||
272 | /** | |
273 | * Retrieves the <code>Book</code> object referred to. | |
274 | * | |
275 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
276 | * @throws AccessPoemException | |
277 | * if the current <code>AccessToken</code> | |
278 | * does not confer read access rights | |
279 | * @throws NoSuchRowPoemException | |
280 | * if the <code>Persistent</code> has yet to be allocated a TROID | |
281 | * @return the <code>Book</code> as a <code>Book</code> | |
282 | */ | |
283 | public Book getBook() | |
284 | throws AccessPoemException, NoSuchRowPoemException { | |
285 | 0 | Integer troid = getBookTroid(); |
286 | 0 | return troid == null ? null : |
287 | (Book)getBibliomaniaDatabaseTables().getBookTable().getBookObject(troid); | |
288 | } | |
289 | ||
290 | ||
291 | /** | |
292 | * Set the Book. | |
293 | * | |
294 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
295 | * @param cooked a validated <code>Book</code> | |
296 | * @throws AccessPoemException | |
297 | * if the current <code>AccessToken</code> | |
298 | * does not confer write access rights | |
299 | */ | |
300 | public void setBook(Book cooked) | |
301 | throws AccessPoemException { | |
302 | 0 | _getProductTable(). |
303 | getBookColumn(). | |
304 | getType().assertValidCooked(cooked); | |
305 | 0 | writeLock(); |
306 | 0 | if (cooked == null) |
307 | 0 | setBook_unsafe(null); |
308 | else { | |
309 | 0 | cooked.existenceLock(); |
310 | 0 | setBook_unsafe(cooked.troid()); |
311 | } | |
312 | 0 | } |
313 | ||
314 | ||
315 | /** | |
316 | * Retrieves the <code>Book</code> value as a <code>Field</code> | |
317 | * from this <code>Product</code> <code>Persistent</code>. | |
318 | * | |
319 | * see org.melati.poem.prepro.FieldDef#generateFieldCreator | |
320 | * @throws AccessPoemException | |
321 | * if the current <code>AccessToken</code> | |
322 | * does not confer write access rights | |
323 | * @return the Integer book | |
324 | */ | |
325 | public Field<Integer> getBookField() throws AccessPoemException { | |
326 | 0 | Column<Integer> c = _getProductTable().getBookColumn(); |
327 | 0 | return new Field<Integer>((Integer)c.getRaw(this), c); |
328 | } | |
329 | ||
330 | ||
331 | /** | |
332 | * Retrieves the <code>Publisher</code> value, without locking, | |
333 | * for this <code>Product</code> <code>Persistent</code>. | |
334 | * | |
335 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
336 | * @return the Integer publisher | |
337 | */ | |
338 | public Integer getPublisher_unsafe() { | |
339 | 0 | return publisher; |
340 | } | |
341 | ||
342 | ||
343 | /** | |
344 | * Sets the <code>Publisher</code> value directly, without checking, | |
345 | * for this Product <code>Persistent</code>. | |
346 | * | |
347 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
348 | * @param cooked the pre-validated value to set | |
349 | */ | |
350 | public void setPublisher_unsafe(Integer cooked) { | |
351 | 0 | publisher = cooked; |
352 | 0 | } |
353 | ||
354 | /** | |
355 | * Retrieves the Table Row Object ID. | |
356 | * | |
357 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
358 | * @throws AccessPoemException | |
359 | * if the current <code>AccessToken</code> | |
360 | * does not confer read access rights | |
361 | * @return the TROID as an <code>Integer</code> | |
362 | */ | |
363 | ||
364 | public Integer getPublisherTroid() | |
365 | throws AccessPoemException { | |
366 | 0 | readLock(); |
367 | 0 | return getPublisher_unsafe(); |
368 | } | |
369 | ||
370 | ||
371 | /** | |
372 | * Sets the Table Row Object ID. | |
373 | * | |
374 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
375 | * @param raw a Table Row Object Id | |
376 | * @throws AccessPoemException | |
377 | * if the current <code>AccessToken</code> | |
378 | * does not confer write access rights | |
379 | */ | |
380 | public void setPublisherTroid(Integer raw) | |
381 | throws AccessPoemException { | |
382 | 0 | setPublisher(raw == null ? null : |
383 | getBibliomaniaDatabaseTables().getPublisherTable().getPublisherObject(raw)); | |
384 | 0 | } |
385 | ||
386 | ||
387 | /** | |
388 | * Retrieves the <code>Publisher</code> object referred to. | |
389 | * | |
390 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
391 | * @throws AccessPoemException | |
392 | * if the current <code>AccessToken</code> | |
393 | * does not confer read access rights | |
394 | * @throws NoSuchRowPoemException | |
395 | * if the <code>Persistent</code> has yet to be allocated a TROID | |
396 | * @return the <code>Publisher</code> as a <code>Publisher</code> | |
397 | */ | |
398 | public Publisher getPublisher() | |
399 | throws AccessPoemException, NoSuchRowPoemException { | |
400 | 0 | Integer troid = getPublisherTroid(); |
401 | 0 | return troid == null ? null : |
402 | getBibliomaniaDatabaseTables().getPublisherTable().getPublisherObject(troid); | |
403 | } | |
404 | ||
405 | ||
406 | /** | |
407 | * Set the Publisher. | |
408 | * | |
409 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
410 | * @param cooked a validated <code>Publisher</code> | |
411 | * @throws AccessPoemException | |
412 | * if the current <code>AccessToken</code> | |
413 | * does not confer write access rights | |
414 | */ | |
415 | public void setPublisher(Publisher cooked) | |
416 | throws AccessPoemException { | |
417 | 0 | _getProductTable(). |
418 | getPublisherColumn(). | |
419 | getType().assertValidCooked(cooked); | |
420 | 0 | writeLock(); |
421 | 0 | if (cooked == null) |
422 | 0 | setPublisher_unsafe(null); |
423 | else { | |
424 | 0 | cooked.existenceLock(); |
425 | 0 | setPublisher_unsafe(cooked.troid()); |
426 | } | |
427 | 0 | } |
428 | ||
429 | ||
430 | /** | |
431 | * Retrieves the <code>Publisher</code> value as a <code>Field</code> | |
432 | * from this <code>Product</code> <code>Persistent</code>. | |
433 | * | |
434 | * see org.melati.poem.prepro.FieldDef#generateFieldCreator | |
435 | * @throws AccessPoemException | |
436 | * if the current <code>AccessToken</code> | |
437 | * does not confer write access rights | |
438 | * @return the Integer publisher | |
439 | */ | |
440 | public Field<Integer> getPublisherField() throws AccessPoemException { | |
441 | 0 | Column<Integer> c = _getProductTable().getPublisherColumn(); |
442 | 0 | return new Field<Integer>((Integer)c.getRaw(this), c); |
443 | } | |
444 | ||
445 | ||
446 | /** | |
447 | * Retrieves the <code>Download</code> value, without locking, | |
448 | * for this <code>Product</code> <code>Persistent</code>. | |
449 | * | |
450 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
451 | * @return the Integer download | |
452 | */ | |
453 | public Integer getDownload_unsafe() { | |
454 | 0 | return download; |
455 | } | |
456 | ||
457 | ||
458 | /** | |
459 | * Sets the <code>Download</code> value directly, without checking, | |
460 | * for this Product <code>Persistent</code>. | |
461 | * | |
462 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
463 | * @param cooked the pre-validated value to set | |
464 | */ | |
465 | public void setDownload_unsafe(Integer cooked) { | |
466 | 0 | download = cooked; |
467 | 0 | } |
468 | ||
469 | /** | |
470 | * Retrieves the Table Row Object ID. | |
471 | * | |
472 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
473 | * @throws AccessPoemException | |
474 | * if the current <code>AccessToken</code> | |
475 | * does not confer read access rights | |
476 | * @return the TROID as an <code>Integer</code> | |
477 | */ | |
478 | ||
479 | public Integer getDownloadTroid() | |
480 | throws AccessPoemException { | |
481 | 0 | readLock(); |
482 | 0 | return getDownload_unsafe(); |
483 | } | |
484 | ||
485 | ||
486 | /** | |
487 | * Sets the Table Row Object ID. | |
488 | * | |
489 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
490 | * @param raw a Table Row Object Id | |
491 | * @throws AccessPoemException | |
492 | * if the current <code>AccessToken</code> | |
493 | * does not confer write access rights | |
494 | */ | |
495 | public void setDownloadTroid(Integer raw) | |
496 | throws AccessPoemException { | |
497 | 0 | setDownload(raw == null ? null : |
498 | getBibliomaniaDatabaseTables().getDownloadTable().getDownloadObject(raw)); | |
499 | 0 | } |
500 | ||
501 | ||
502 | /** | |
503 | * Retrieves the <code>Download</code> object referred to. | |
504 | * | |
505 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
506 | * @throws AccessPoemException | |
507 | * if the current <code>AccessToken</code> | |
508 | * does not confer read access rights | |
509 | * @throws NoSuchRowPoemException | |
510 | * if the <code>Persistent</code> has yet to be allocated a TROID | |
511 | * @return the <code>Download</code> as a <code>Download</code> | |
512 | */ | |
513 | public Download getDownload() | |
514 | throws AccessPoemException, NoSuchRowPoemException { | |
515 | 0 | Integer troid = getDownloadTroid(); |
516 | 0 | return troid == null ? null : |
517 | getBibliomaniaDatabaseTables().getDownloadTable().getDownloadObject(troid); | |
518 | } | |
519 | ||
520 | ||
521 | /** | |
522 | * Set the Download. | |
523 | * | |
524 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
525 | * @param cooked a validated <code>Download</code> | |
526 | * @throws AccessPoemException | |
527 | * if the current <code>AccessToken</code> | |
528 | * does not confer write access rights | |
529 | */ | |
530 | public void setDownload(Download cooked) | |
531 | throws AccessPoemException { | |
532 | 0 | _getProductTable(). |
533 | getDownloadColumn(). | |
534 | getType().assertValidCooked(cooked); | |
535 | 0 | writeLock(); |
536 | 0 | if (cooked == null) |
537 | 0 | setDownload_unsafe(null); |
538 | else { | |
539 | 0 | cooked.existenceLock(); |
540 | 0 | setDownload_unsafe(cooked.troid()); |
541 | } | |
542 | 0 | } |
543 | ||
544 | ||
545 | /** | |
546 | * Retrieves the <code>Download</code> value as a <code>Field</code> | |
547 | * from this <code>Product</code> <code>Persistent</code>. | |
548 | * | |
549 | * see org.melati.poem.prepro.FieldDef#generateFieldCreator | |
550 | * @throws AccessPoemException | |
551 | * if the current <code>AccessToken</code> | |
552 | * does not confer write access rights | |
553 | * @return the Integer download | |
554 | */ | |
555 | public Field<Integer> getDownloadField() throws AccessPoemException { | |
556 | 0 | Column<Integer> c = _getProductTable().getDownloadColumn(); |
557 | 0 | return new Field<Integer>((Integer)c.getRaw(this), c); |
558 | } | |
559 | ||
560 | ||
561 | /** | |
562 | * Retrieves the <code>Name</code> value, without locking, | |
563 | * for this <code>Product</code> <code>Persistent</code>. | |
564 | * | |
565 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
566 | * @return the String name | |
567 | */ | |
568 | public String getName_unsafe() { | |
569 | 0 | return name; |
570 | } | |
571 | ||
572 | ||
573 | /** | |
574 | * Sets the <code>Name</code> value directly, without checking, | |
575 | * for this Product <code>Persistent</code>. | |
576 | * | |
577 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
578 | * @param cooked the pre-validated value to set | |
579 | */ | |
580 | public void setName_unsafe(String cooked) { | |
581 | 0 | name = cooked; |
582 | 0 | } |
583 | ||
584 | /** | |
585 | * Retrieves the Name value, with locking, for this | |
586 | * <code>Product</code> <code>Persistent</code>. | |
587 | * Field description: | |
588 | * A name for this product if different to the Book title | |
589 | * | |
590 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
591 | * @throws AccessPoemException | |
592 | * if the current <code>AccessToken</code> | |
593 | * does not confer write access rights | |
594 | * @return the value of the field <code>Name</code> for this | |
595 | * <code>Product</code> <code>Persistent</code> | |
596 | */ | |
597 | ||
598 | public String getName() | |
599 | throws AccessPoemException { | |
600 | 0 | readLock(); |
601 | 0 | return getName_unsafe(); |
602 | } | |
603 | ||
604 | ||
605 | /** | |
606 | * Sets the <code>Name</code> value, with checking, for this | |
607 | * <code>Product</code> <code>Persistent</code>. | |
608 | * Field description: | |
609 | * A name for this product if different to the Book title | |
610 | * | |
611 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
612 | * @param cooked a validated <code>int</code> | |
613 | * @throws AccessPoemException | |
614 | * if the current <code>AccessToken</code> | |
615 | * does not confer write access rights | |
616 | * @throws ValidationPoemException | |
617 | * if the value is not valid | |
618 | */ | |
619 | public void setName(String cooked) | |
620 | throws AccessPoemException, ValidationPoemException { | |
621 | 0 | _getProductTable().getNameColumn(). |
622 | getType().assertValidCooked(cooked); | |
623 | 0 | writeLock(); |
624 | 0 | setName_unsafe(cooked); |
625 | 0 | } |
626 | ||
627 | ||
628 | /** | |
629 | * Retrieves the <code>Name</code> value as a <code>Field</code> | |
630 | * from this <code>Product</code> <code>Persistent</code>. | |
631 | * | |
632 | * see org.melati.poem.prepro.FieldDef#generateFieldCreator | |
633 | * @throws AccessPoemException | |
634 | * if the current <code>AccessToken</code> | |
635 | * does not confer write access rights | |
636 | * @return the String name | |
637 | */ | |
638 | public Field<String> getNameField() throws AccessPoemException { | |
639 | 0 | Column<String> c = _getProductTable().getNameColumn(); |
640 | 0 | return new Field<String>((String)c.getRaw(this), c); |
641 | } | |
642 | ||
643 | ||
644 | /** | |
645 | * Retrieves the <code>Description</code> value, without locking, | |
646 | * for this <code>Product</code> <code>Persistent</code>. | |
647 | * | |
648 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
649 | * @return the String description | |
650 | */ | |
651 | public String getDescription_unsafe() { | |
652 | 0 | return description; |
653 | } | |
654 | ||
655 | ||
656 | /** | |
657 | * Sets the <code>Description</code> value directly, without checking, | |
658 | * for this Product <code>Persistent</code>. | |
659 | * | |
660 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
661 | * @param cooked the pre-validated value to set | |
662 | */ | |
663 | public void setDescription_unsafe(String cooked) { | |
664 | 0 | description = cooked; |
665 | 0 | } |
666 | ||
667 | /** | |
668 | * Retrieves the Description value, with locking, for this | |
669 | * <code>Product</code> <code>Persistent</code>. | |
670 | * Field description: | |
671 | * Additional blurb about the product | |
672 | * | |
673 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
674 | * @throws AccessPoemException | |
675 | * if the current <code>AccessToken</code> | |
676 | * does not confer write access rights | |
677 | * @return the value of the field <code>Description</code> for this | |
678 | * <code>Product</code> <code>Persistent</code> | |
679 | */ | |
680 | ||
681 | public String getDescription() | |
682 | throws AccessPoemException { | |
683 | 0 | readLock(); |
684 | 0 | return getDescription_unsafe(); |
685 | } | |
686 | ||
687 | ||
688 | /** | |
689 | * Sets the <code>Description</code> value, with checking, for this | |
690 | * <code>Product</code> <code>Persistent</code>. | |
691 | * Field description: | |
692 | * Additional blurb about the product | |
693 | * | |
694 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
695 | * @param cooked a validated <code>int</code> | |
696 | * @throws AccessPoemException | |
697 | * if the current <code>AccessToken</code> | |
698 | * does not confer write access rights | |
699 | * @throws ValidationPoemException | |
700 | * if the value is not valid | |
701 | */ | |
702 | public void setDescription(String cooked) | |
703 | throws AccessPoemException, ValidationPoemException { | |
704 | 0 | _getProductTable().getDescriptionColumn(). |
705 | getType().assertValidCooked(cooked); | |
706 | 0 | writeLock(); |
707 | 0 | setDescription_unsafe(cooked); |
708 | 0 | } |
709 | ||
710 | ||
711 | /** | |
712 | * Retrieves the <code>Description</code> value as a <code>Field</code> | |
713 | * from this <code>Product</code> <code>Persistent</code>. | |
714 | * | |
715 | * see org.melati.poem.prepro.FieldDef#generateFieldCreator | |
716 | * @throws AccessPoemException | |
717 | * if the current <code>AccessToken</code> | |
718 | * does not confer write access rights | |
719 | * @return the String description | |
720 | */ | |
721 | public Field<String> getDescriptionField() throws AccessPoemException { | |
722 | 0 | Column<String> c = _getProductTable().getDescriptionColumn(); |
723 | 0 | return new Field<String>((String)c.getRaw(this), c); |
724 | } | |
725 | ||
726 | ||
727 | /** | |
728 | * Retrieves the <code>Price</code> value, without locking, | |
729 | * for this <code>Product</code> <code>Persistent</code>. | |
730 | * | |
731 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
732 | * @return the Double price | |
733 | */ | |
734 | public Double getPrice_unsafe() { | |
735 | 0 | return price; |
736 | } | |
737 | ||
738 | ||
739 | /** | |
740 | * Sets the <code>Price</code> value directly, without checking, | |
741 | * for this Product <code>Persistent</code>. | |
742 | * | |
743 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
744 | * @param cooked the pre-validated value to set | |
745 | */ | |
746 | public void setPrice_unsafe(Double cooked) { | |
747 | 0 | price = cooked; |
748 | 0 | } |
749 | ||
750 | /** | |
751 | * Retrieves the Price value, with locking, for this | |
752 | * <code>Product</code> <code>Persistent</code>. | |
753 | * Field description: | |
754 | * Price payable by the customer, including discounts, excluding delivery | |
755 | * | |
756 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
757 | * @throws AccessPoemException | |
758 | * if the current <code>AccessToken</code> | |
759 | * does not confer write access rights | |
760 | * @return the value of the field <code>Price</code> for this | |
761 | * <code>Product</code> <code>Persistent</code> | |
762 | */ | |
763 | ||
764 | public Double getPrice() | |
765 | throws AccessPoemException { | |
766 | 0 | readLock(); |
767 | 0 | return getPrice_unsafe(); |
768 | } | |
769 | ||
770 | ||
771 | /** | |
772 | * Sets the <code>Price</code> value, with checking, for this | |
773 | * <code>Product</code> <code>Persistent</code>. | |
774 | * Field description: | |
775 | * Price payable by the customer, including discounts, excluding delivery | |
776 | * | |
777 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
778 | * @param cooked a validated <code>int</code> | |
779 | * @throws AccessPoemException | |
780 | * if the current <code>AccessToken</code> | |
781 | * does not confer write access rights | |
782 | * @throws ValidationPoemException | |
783 | * if the value is not valid | |
784 | */ | |
785 | public void setPrice(Double cooked) | |
786 | throws AccessPoemException, ValidationPoemException { | |
787 | 0 | _getProductTable().getPriceColumn(). |
788 | getType().assertValidCooked(cooked); | |
789 | 0 | writeLock(); |
790 | 0 | setPrice_unsafe(cooked); |
791 | 0 | } |
792 | ||
793 | /** | |
794 | * Sets the <code>Price</code> value, with checking, for this <code>Product</code> <code>Persistent</code>. | |
795 | * Field description: | |
796 | * Price payable by the customer, including discounts, excluding delivery | |
797 | * | |
798 | * | |
799 | * Generated by org.melati.poem.prepro.DoubleFieldDef#generateBaseMethods | |
800 | * @param cooked a validated <code>int</code> | |
801 | * @throws AccessPoemException | |
802 | * if the current <code>AccessToken</code> | |
803 | * does not confer write access rights | |
804 | * @throws ValidationPoemException | |
805 | * if the value is not valid | |
806 | */ | |
807 | ||
808 | public final void setPrice(double cooked) | |
809 | throws AccessPoemException, ValidationPoemException { | |
810 | 0 | setPrice(new Double(cooked)); |
811 | 0 | } |
812 | ||
813 | ||
814 | /** | |
815 | * Retrieves the <code>Price</code> value as a <code>Field</code> | |
816 | * from this <code>Product</code> <code>Persistent</code>. | |
817 | * | |
818 | * see org.melati.poem.prepro.FieldDef#generateFieldCreator | |
819 | * @throws AccessPoemException | |
820 | * if the current <code>AccessToken</code> | |
821 | * does not confer write access rights | |
822 | * @return the Double price | |
823 | */ | |
824 | public Field<Double> getPriceField() throws AccessPoemException { | |
825 | 0 | Column<Double> c = _getProductTable().getPriceColumn(); |
826 | 0 | return new Field<Double>((Double)c.getRaw(this), c); |
827 | } | |
828 | ||
829 | ||
830 | /** | |
831 | * Retrieves the <code>Listprice</code> value, without locking, | |
832 | * for this <code>Product</code> <code>Persistent</code>. | |
833 | * | |
834 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
835 | * @return the Double listprice | |
836 | */ | |
837 | public Double getListprice_unsafe() { | |
838 | 0 | return listprice; |
839 | } | |
840 | ||
841 | ||
842 | /** | |
843 | * Sets the <code>Listprice</code> value directly, without checking, | |
844 | * for this Product <code>Persistent</code>. | |
845 | * | |
846 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
847 | * @param cooked the pre-validated value to set | |
848 | */ | |
849 | public void setListprice_unsafe(Double cooked) { | |
850 | 0 | listprice = cooked; |
851 | 0 | } |
852 | ||
853 | /** | |
854 | * Retrieves the Listprice value, with locking, for this | |
855 | * <code>Product</code> <code>Persistent</code>. | |
856 | * Field description: | |
857 | * The normal selling price of the product, not including delivery | |
858 | * | |
859 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
860 | * @throws AccessPoemException | |
861 | * if the current <code>AccessToken</code> | |
862 | * does not confer write access rights | |
863 | * @return the value of the field <code>Listprice</code> for this | |
864 | * <code>Product</code> <code>Persistent</code> | |
865 | */ | |
866 | ||
867 | public Double getListprice() | |
868 | throws AccessPoemException { | |
869 | 0 | readLock(); |
870 | 0 | return getListprice_unsafe(); |
871 | } | |
872 | ||
873 | ||
874 | /** | |
875 | * Sets the <code>Listprice</code> value, with checking, for this | |
876 | * <code>Product</code> <code>Persistent</code>. | |
877 | * Field description: | |
878 | * The normal selling price of the product, not including delivery | |
879 | * | |
880 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
881 | * @param cooked a validated <code>int</code> | |
882 | * @throws AccessPoemException | |
883 | * if the current <code>AccessToken</code> | |
884 | * does not confer write access rights | |
885 | * @throws ValidationPoemException | |
886 | * if the value is not valid | |
887 | */ | |
888 | public void setListprice(Double cooked) | |
889 | throws AccessPoemException, ValidationPoemException { | |
890 | 0 | _getProductTable().getListpriceColumn(). |
891 | getType().assertValidCooked(cooked); | |
892 | 0 | writeLock(); |
893 | 0 | setListprice_unsafe(cooked); |
894 | 0 | } |
895 | ||
896 | /** | |
897 | * Sets the <code>Listprice</code> value, with checking, for this <code>Product</code> <code>Persistent</code>. | |
898 | * Field description: | |
899 | * The normal selling price of the product, not including delivery | |
900 | * | |
901 | * | |
902 | * Generated by org.melati.poem.prepro.DoubleFieldDef#generateBaseMethods | |
903 | * @param cooked a validated <code>int</code> | |
904 | * @throws AccessPoemException | |
905 | * if the current <code>AccessToken</code> | |
906 | * does not confer write access rights | |
907 | * @throws ValidationPoemException | |
908 | * if the value is not valid | |
909 | */ | |
910 | ||
911 | public final void setListprice(double cooked) | |
912 | throws AccessPoemException, ValidationPoemException { | |
913 | 0 | setListprice(new Double(cooked)); |
914 | 0 | } |
915 | ||
916 | ||
917 | /** | |
918 | * Retrieves the <code>Listprice</code> value as a <code>Field</code> | |
919 | * from this <code>Product</code> <code>Persistent</code>. | |
920 | * | |
921 | * see org.melati.poem.prepro.FieldDef#generateFieldCreator | |
922 | * @throws AccessPoemException | |
923 | * if the current <code>AccessToken</code> | |
924 | * does not confer write access rights | |
925 | * @return the Double listprice | |
926 | */ | |
927 | public Field<Double> getListpriceField() throws AccessPoemException { | |
928 | 0 | Column<Double> c = _getProductTable().getListpriceColumn(); |
929 | 0 | return new Field<Double>((Double)c.getRaw(this), c); |
930 | } | |
931 | ||
932 | ||
933 | /** | |
934 | * Retrieves the <code>ISBN</code> value, without locking, | |
935 | * for this <code>Product</code> <code>Persistent</code>. | |
936 | * | |
937 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
938 | * @return the String ISBN | |
939 | */ | |
940 | public String getISBN_unsafe() { | |
941 | 0 | return ISBN; |
942 | } | |
943 | ||
944 | ||
945 | /** | |
946 | * Sets the <code>ISBN</code> value directly, without checking, | |
947 | * for this Product <code>Persistent</code>. | |
948 | * | |
949 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
950 | * @param cooked the pre-validated value to set | |
951 | */ | |
952 | public void setISBN_unsafe(String cooked) { | |
953 | 0 | ISBN = cooked; |
954 | 0 | } |
955 | ||
956 | /** | |
957 | * Retrieves the ISBN value, with locking, for this | |
958 | * <code>Product</code> <code>Persistent</code>. | |
959 | * Field description: | |
960 | * The ISBN number of this product (if any) | |
961 | * | |
962 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
963 | * @throws AccessPoemException | |
964 | * if the current <code>AccessToken</code> | |
965 | * does not confer write access rights | |
966 | * @return the value of the field <code>ISBN</code> for this | |
967 | * <code>Product</code> <code>Persistent</code> | |
968 | */ | |
969 | ||
970 | public String getISBN() | |
971 | throws AccessPoemException { | |
972 | 0 | readLock(); |
973 | 0 | return getISBN_unsafe(); |
974 | } | |
975 | ||
976 | ||
977 | /** | |
978 | * Sets the <code>ISBN</code> value, with checking, for this | |
979 | * <code>Product</code> <code>Persistent</code>. | |
980 | * Field description: | |
981 | * The ISBN number of this product (if any) | |
982 | * | |
983 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
984 | * @param cooked a validated <code>int</code> | |
985 | * @throws AccessPoemException | |
986 | * if the current <code>AccessToken</code> | |
987 | * does not confer write access rights | |
988 | * @throws ValidationPoemException | |
989 | * if the value is not valid | |
990 | */ | |
991 | public void setISBN(String cooked) | |
992 | throws AccessPoemException, ValidationPoemException { | |
993 | 0 | _getProductTable().getISBNColumn(). |
994 | getType().assertValidCooked(cooked); | |
995 | 0 | writeLock(); |
996 | 0 | setISBN_unsafe(cooked); |
997 | 0 | } |
998 | ||
999 | ||
1000 | /** | |
1001 | * Retrieves the <code>ISBN</code> value as a <code>Field</code> | |
1002 | * from this <code>Product</code> <code>Persistent</code>. | |
1003 | * | |
1004 | * see org.melati.poem.prepro.FieldDef#generateFieldCreator | |
1005 | * @throws AccessPoemException | |
1006 | * if the current <code>AccessToken</code> | |
1007 | * does not confer write access rights | |
1008 | * @return the String ISBN | |
1009 | */ | |
1010 | public Field<String> getISBNField() throws AccessPoemException { | |
1011 | 0 | Column<String> c = _getProductTable().getISBNColumn(); |
1012 | 0 | return new Field<String>((String)c.getRaw(this), c); |
1013 | } | |
1014 | ||
1015 | ||
1016 | /** | |
1017 | * Retrieves the <code>Picture</code> value, without locking, | |
1018 | * for this <code>Product</code> <code>Persistent</code>. | |
1019 | * | |
1020 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
1021 | * @return the String picture | |
1022 | */ | |
1023 | public String getPicture_unsafe() { | |
1024 | 0 | return picture; |
1025 | } | |
1026 | ||
1027 | ||
1028 | /** | |
1029 | * Sets the <code>Picture</code> value directly, without checking, | |
1030 | * for this Product <code>Persistent</code>. | |
1031 | * | |
1032 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
1033 | * @param cooked the pre-validated value to set | |
1034 | */ | |
1035 | public void setPicture_unsafe(String cooked) { | |
1036 | 0 | picture = cooked; |
1037 | 0 | } |
1038 | ||
1039 | /** | |
1040 | * Retrieves the Picture value, with locking, for this | |
1041 | * <code>Product</code> <code>Persistent</code>. | |
1042 | * Field description: | |
1043 | * A jacket cover image or similar | |
1044 | * | |
1045 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
1046 | * @throws AccessPoemException | |
1047 | * if the current <code>AccessToken</code> | |
1048 | * does not confer write access rights | |
1049 | * @return the value of the field <code>Picture</code> for this | |
1050 | * <code>Product</code> <code>Persistent</code> | |
1051 | */ | |
1052 | ||
1053 | public String getPicture() | |
1054 | throws AccessPoemException { | |
1055 | 0 | readLock(); |
1056 | 0 | return getPicture_unsafe(); |
1057 | } | |
1058 | ||
1059 | ||
1060 | /** | |
1061 | * Sets the <code>Picture</code> value, with checking, for this | |
1062 | * <code>Product</code> <code>Persistent</code>. | |
1063 | * Field description: | |
1064 | * A jacket cover image or similar | |
1065 | * | |
1066 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
1067 | * @param cooked a validated <code>int</code> | |
1068 | * @throws AccessPoemException | |
1069 | * if the current <code>AccessToken</code> | |
1070 | * does not confer write access rights | |
1071 | * @throws ValidationPoemException | |
1072 | * if the value is not valid | |
1073 | */ | |
1074 | public void setPicture(String cooked) | |
1075 | throws AccessPoemException, ValidationPoemException { | |
1076 | 0 | _getProductTable().getPictureColumn(). |
1077 | getType().assertValidCooked(cooked); | |
1078 | 0 | writeLock(); |
1079 | 0 | setPicture_unsafe(cooked); |
1080 | 0 | } |
1081 | ||
1082 | ||
1083 | /** | |
1084 | * Retrieves the <code>Picture</code> value as a <code>Field</code> | |
1085 | * from this <code>Product</code> <code>Persistent</code>. | |
1086 | * | |
1087 | * see org.melati.poem.prepro.FieldDef#generateFieldCreator | |
1088 | * @throws AccessPoemException | |
1089 | * if the current <code>AccessToken</code> | |
1090 | * does not confer write access rights | |
1091 | * @return the String picture | |
1092 | */ | |
1093 | public Field<String> getPictureField() throws AccessPoemException { | |
1094 | 0 | Column<String> c = _getProductTable().getPictureColumn(); |
1095 | 0 | return new Field<String>((String)c.getRaw(this), c); |
1096 | } | |
1097 | ||
1098 | ||
1099 | /** | |
1100 | * Retrieves the <code>Deleted</code> value, without locking, | |
1101 | * for this <code>Product</code> <code>Persistent</code>. | |
1102 | * | |
1103 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
1104 | * @return the Boolean deleted | |
1105 | */ | |
1106 | public Boolean getDeleted_unsafe() { | |
1107 | 0 | return deleted; |
1108 | } | |
1109 | ||
1110 | ||
1111 | /** | |
1112 | * Sets the <code>Deleted</code> value directly, without checking, | |
1113 | * for this Product <code>Persistent</code>. | |
1114 | * | |
1115 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
1116 | * @param cooked the pre-validated value to set | |
1117 | */ | |
1118 | public void setDeleted_unsafe(Boolean cooked) { | |
1119 | 0 | deleted = cooked; |
1120 | 0 | } |
1121 | ||
1122 | /** | |
1123 | * Retrieves the Deleted value, with locking, for this | |
1124 | * <code>Product</code> <code>Persistent</code>. | |
1125 | * | |
1126 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
1127 | * @throws AccessPoemException | |
1128 | * if the current <code>AccessToken</code> | |
1129 | * does not confer write access rights | |
1130 | * @return the value of the field <code>Deleted</code> for this | |
1131 | * <code>Product</code> <code>Persistent</code> | |
1132 | */ | |
1133 | ||
1134 | public Boolean getDeleted() | |
1135 | throws AccessPoemException { | |
1136 | 0 | readLock(); |
1137 | 0 | return getDeleted_unsafe(); |
1138 | } | |
1139 | ||
1140 | ||
1141 | /** | |
1142 | * Sets the <code>Deleted</code> value, with checking, for this | |
1143 | * <code>Product</code> <code>Persistent</code>. | |
1144 | * | |
1145 | * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods | |
1146 | * @param cooked a validated <code>int</code> | |
1147 | * @throws AccessPoemException | |
1148 | * if the current <code>AccessToken</code> | |
1149 | * does not confer write access rights | |
1150 | * @throws ValidationPoemException | |
1151 | * if the value is not valid | |
1152 | */ | |
1153 | public void setDeleted(Boolean cooked) | |
1154 | throws AccessPoemException, ValidationPoemException { | |
1155 | 0 | _getProductTable().getDeletedColumn(). |
1156 | getType().assertValidCooked(cooked); | |
1157 | 0 | writeLock(); |
1158 | 0 | setDeleted_unsafe(cooked); |
1159 | 0 | } |
1160 | ||
1161 | /** | |
1162 | * Sets the <code>Deleted</code> value, with checking, | |
1163 | * from a <code>boolean</code>, for this | |
1164 | * <code>Product</code> <code>Persistent</code>. | |
1165 | * | |
1166 | * Generated by org.melati.poem.prepro.BooleanFieldDef#generateBaseMethods | |
1167 | * @param cooked a <code>boolean</code> | |
1168 | * @throws AccessPoemException | |
1169 | * if the current <code>AccessToken</code> | |
1170 | * does not confer write access rights | |
1171 | * @throws ValidationPoemException | |
1172 | * if the value is not valid | |
1173 | */ | |
1174 | ||
1175 | public final void setDeleted(boolean cooked) | |
1176 | throws AccessPoemException, ValidationPoemException { | |
1177 | 0 | setDeleted(cooked ? Boolean.TRUE : Boolean.FALSE); |
1178 | 0 | } |
1179 | ||
1180 | ||
1181 | /** | |
1182 | * Retrieves the <code>Deleted</code> value as a <code>Field</code> | |
1183 | * from this <code>Product</code> <code>Persistent</code>. | |
1184 | * | |
1185 | * see org.melati.poem.prepro.FieldDef#generateFieldCreator | |
1186 | * @throws AccessPoemException | |
1187 | * if the current <code>AccessToken</code> | |
1188 | * does not confer write access rights | |
1189 | * @return the Boolean deleted | |
1190 | */ | |
1191 | public Field<Boolean> getDeletedField() throws AccessPoemException { | |
1192 | 0 | Column<Boolean> c = _getProductTable().getDeletedColumn(); |
1193 | 0 | return new Field<Boolean>((Boolean)c.getRaw(this), c); |
1194 | } | |
1195 | ||
1196 | ||
1197 | /** | |
1198 | * Retrieves the <code>Format</code> value, without locking, | |
1199 | * for this <code>Product</code> <code>Persistent</code>. | |
1200 | * | |
1201 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
1202 | * @return the Integer format | |
1203 | */ | |
1204 | public Integer getFormat_unsafe() { | |
1205 | 0 | return format; |
1206 | } | |
1207 | ||
1208 | ||
1209 | /** | |
1210 | * Sets the <code>Format</code> value directly, without checking, | |
1211 | * for this Product <code>Persistent</code>. | |
1212 | * | |
1213 | * see org.melati.poem.prepro.FieldDef#generateBaseMethods | |
1214 | * @param cooked the pre-validated value to set | |
1215 | */ | |
1216 | public void setFormat_unsafe(Integer cooked) { | |
1217 | 0 | format = cooked; |
1218 | 0 | } |
1219 | ||
1220 | /** | |
1221 | * Retrieves the Table Row Object ID. | |
1222 | * | |
1223 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
1224 | * @throws AccessPoemException | |
1225 | * if the current <code>AccessToken</code> | |
1226 | * does not confer read access rights | |
1227 | * @return the TROID as an <code>Integer</code> | |
1228 | */ | |
1229 | ||
1230 | public Integer getFormatTroid() | |
1231 | throws AccessPoemException { | |
1232 | 0 | readLock(); |
1233 | 0 | return getFormat_unsafe(); |
1234 | } | |
1235 | ||
1236 | ||
1237 | /** | |
1238 | * Sets the Table Row Object ID. | |
1239 | * | |
1240 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
1241 | * @param raw a Table Row Object Id | |
1242 | * @throws AccessPoemException | |
1243 | * if the current <code>AccessToken</code> | |
1244 | * does not confer write access rights | |
1245 | */ | |
1246 | public void setFormatTroid(Integer raw) | |
1247 | throws AccessPoemException { | |
1248 | 0 | setFormat(raw == null ? null : |
1249 | getBibliomaniaDatabaseTables().getBookFormatTable().getBookFormatObject(raw)); | |
1250 | 0 | } |
1251 | ||
1252 | ||
1253 | /** | |
1254 | * Retrieves the <code>Format</code> object referred to. | |
1255 | * | |
1256 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
1257 | * @throws AccessPoemException | |
1258 | * if the current <code>AccessToken</code> | |
1259 | * does not confer read access rights | |
1260 | * @throws NoSuchRowPoemException | |
1261 | * if the <code>Persistent</code> has yet to be allocated a TROID | |
1262 | * @return the <code>Format</code> as a <code>BookFormat</code> | |
1263 | */ | |
1264 | public BookFormat getFormat() | |
1265 | throws AccessPoemException, NoSuchRowPoemException { | |
1266 | 0 | Integer troid = getFormatTroid(); |
1267 | 0 | return troid == null ? null : |
1268 | getBibliomaniaDatabaseTables().getBookFormatTable().getBookFormatObject(troid); | |
1269 | } | |
1270 | ||
1271 | ||
1272 | /** | |
1273 | * Set the Format. | |
1274 | * | |
1275 | * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods | |
1276 | * @param cooked a validated <code>BookFormat</code> | |
1277 | * @throws AccessPoemException | |
1278 | * if the current <code>AccessToken</code> | |
1279 | * does not confer write access rights | |
1280 | */ | |
1281 | public void setFormat(BookFormat cooked) | |
1282 | throws AccessPoemException { | |
1283 | 0 | _getProductTable(). |
1284 | getFormatColumn(). | |
1285 | getType().assertValidCooked(cooked); | |
1286 | 0 | writeLock(); |
1287 | 0 | if (cooked == null) |
1288 | 0 | setFormat_unsafe(null); |
1289 | else { | |
1290 | 0 | cooked.existenceLock(); |
1291 | 0 | setFormat_unsafe(cooked.troid()); |
1292 | } | |
1293 | 0 | } |
1294 | ||
1295 | ||
1296 | /** | |
1297 | * Retrieves the <code>Format</code> value as a <code>Field</code> | |
1298 | * from this <code>Product</code> <code>Persistent</code>. | |
1299 | * | |
1300 | * see org.melati.poem.prepro.FieldDef#generateFieldCreator | |
1301 | * @throws AccessPoemException | |
1302 | * if the current <code>AccessToken</code> | |
1303 | * does not confer write access rights | |
1304 | * @return the Integer format | |
1305 | */ | |
1306 | public Field<Integer> getFormatField() throws AccessPoemException { | |
1307 | 0 | Column<Integer> c = _getProductTable().getFormatColumn(); |
1308 | 0 | return new Field<Integer>((Integer)c.getRaw(this), c); |
1309 | } | |
1310 | ||
1311 | 0 | private CachedSelection<ProductAssociation> productProductAssociations = null; |
1312 | /** References to this Product in the ProductAssociation table via its product field.*/ | |
1313 | @SuppressWarnings("unchecked") | |
1314 | public Enumeration<ProductAssociation> getProductProductAssociations() { | |
1315 | 0 | if (getTroid() == null) |
1316 | 0 | return new EmptyEnumeration<ProductAssociation>(); |
1317 | else { | |
1318 | 0 | if (productProductAssociations == null) |
1319 | 0 | productProductAssociations = |
1320 | getBibliomaniaDatabaseTables().getProductAssociationTable().getProductColumn().cachedSelectionWhereEq(getTroid()); | |
1321 | 0 | return productProductAssociations.objects(); |
1322 | } | |
1323 | } | |
1324 | ||
1325 | ||
1326 | /** References to this Product in the ProductAssociation table via its product field, as a List.*/ | |
1327 | public List<ProductAssociation> getProductProductAssociationList() { | |
1328 | 0 | return Collections.list(getProductProductAssociations()); |
1329 | } | |
1330 | ||
1331 | ||
1332 | ||
1333 | 0 | private CachedSelection<SupplierProduct> productSupplierProducts = null; |
1334 | /** References to this Product in the SupplierProduct table via its product field.*/ | |
1335 | @SuppressWarnings("unchecked") | |
1336 | public Enumeration<SupplierProduct> getProductSupplierProducts() { | |
1337 | 0 | if (getTroid() == null) |
1338 | 0 | return new EmptyEnumeration<SupplierProduct>(); |
1339 | else { | |
1340 | 0 | if (productSupplierProducts == null) |
1341 | 0 | productSupplierProducts = |
1342 | getBibliomaniaDatabaseTables().getSupplierProductTable().getProductColumn().cachedSelectionWhereEq(getTroid()); | |
1343 | 0 | return productSupplierProducts.objects(); |
1344 | } | |
1345 | } | |
1346 | ||
1347 | ||
1348 | /** References to this Product in the SupplierProduct table via its product field, as a List.*/ | |
1349 | public List<SupplierProduct> getProductSupplierProductList() { | |
1350 | 0 | return Collections.list(getProductSupplierProducts()); |
1351 | } | |
1352 | ||
1353 | ||
1354 | ||
1355 | 0 | private CachedSelection<ShopOrderItem> productShopOrderItems = null; |
1356 | /** References to this Product in the ShopOrderItem table via its product field.*/ | |
1357 | @SuppressWarnings("unchecked") | |
1358 | public Enumeration<ShopOrderItem> getProductShopOrderItems() { | |
1359 | 0 | if (getTroid() == null) |
1360 | 0 | return new EmptyEnumeration<ShopOrderItem>(); |
1361 | else { | |
1362 | 0 | if (productShopOrderItems == null) |
1363 | 0 | productShopOrderItems = |
1364 | getBibliomaniaDatabaseTables().getShopOrderItemTable().getProductColumn().cachedSelectionWhereEq(getTroid()); | |
1365 | 0 | return productShopOrderItems.objects(); |
1366 | } | |
1367 | } | |
1368 | ||
1369 | ||
1370 | /** References to this Product in the ShopOrderItem table via its product field, as a List.*/ | |
1371 | public List<ShopOrderItem> getProductShopOrderItemList() { | |
1372 | 0 | return Collections.list(getProductShopOrderItems()); |
1373 | } | |
1374 | ||
1375 | ||
1376 | ||
1377 | } | |
1378 |