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 org.melati.poem.AccessPoemException;
7 import org.melati.poem.Column;
8 import org.melati.poem.Field;
9 import org.melati.poem.JdbcPersistent;
10 import org.melati.poem.NoSuchRowPoemException;
11 import org.melati.poem.ValidationPoemException;
12 import org.paneris.bibliomania.BibliomaniaDatabaseTables;
13 import org.paneris.bibliomania.Book;
14 import org.paneris.bibliomania.BookFormat;
15 import org.paneris.bibliomania.BookStocking;
16 import org.paneris.bibliomania.BookStockingTable;
17 import org.paneris.bibliomania.Bookshop;
18
19
20 /**
21 * Melati POEM generated abstract base class for a <code>Persistent</code>
22 * <code>BookStocking</code> Object.
23 *
24 * see org.melati.poem.prepro.TableDef#generatePersistentBaseJava
25 */
26 public abstract class BookStockingBase extends JdbcPersistent {
27
28
29 /**
30 * Retrieves the Database object.
31 *
32 * see org.melati.poem.prepro.TableDef#generatePersistentBaseJava
33 * @return the database
34 */
35 public BibliomaniaDatabaseTables getBibliomaniaDatabaseTables() {
36 return (BibliomaniaDatabaseTables)getDatabase();
37 }
38
39
40 /**
41 * Retrieves the <code>BookStockingTable</code> table
42 * which this <code>Persistent</code> is from.
43 *
44 * see org.melati.poem.prepro.TableDef#generatePersistentBaseJava
45 * @return the BookStockingTable
46 */
47 @SuppressWarnings("unchecked")
48 public BookStockingTable<BookStocking> getBookStockingTable() {
49 return (BookStockingTable<BookStocking>)getTable();
50 }
51
52 @SuppressWarnings("unchecked")
53 private BookStockingTable<BookStocking> _getBookStockingTable() {
54 return (BookStockingTable<BookStocking>)getTable();
55 }
56
57 // Fields in this table
58 /**
59 * id
60 */
61 protected Integer id;
62 /**
63 * shop - The bookshop
64 */
65 protected Integer shop;
66 /**
67 * book - The Bibliomania book corresponding to the stocked book, as far as
68 * can be determined
69 */
70 protected Integer book;
71 /**
72 * title - The bookshop's title for the book
73 */
74 protected String title;
75 /**
76 * author - The bookshop's author name for the book
77 */
78 protected String author;
79 /**
80 * Vendor product ID - The bookshop's internal product ID for the book
81 */
82 protected String vendorproductid;
83 /**
84 * isbn - The ISBN for the book
85 */
86 protected String isbn;
87 /**
88 * Delivery info - The bookshop's delivery time claim for the book
89 */
90 protected String deliveryinfo;
91 /**
92 * price - The bookshop's price description for the book
93 */
94 protected String price;
95 /**
96 * Price (number) - A numeric version of the price, if can be calculated ...
97 */
98 protected Integer pricenumber;
99 /**
100 * format - The bookshop's format description for the book
101 */
102 protected String format;
103 /**
104 * Format code - A code representing the book's format in a consistent way,
105 * as far as it can be determined
106 */
107 protected Integer formatcode;
108 /**
109 * publisher - The bookshop's publisher description for the book
110 */
111 protected String publisher;
112 /**
113 * Publication year - The bookshop's publication year description for the
114 * book
115 */
116 protected String publicationyear;
117 /**
118 * Detail URL - A scratchpad for storing info about the book's home page on
119 * the bookshop (or, unused)
120 */
121 protected String detailurl;
122 /**
123 * Thumbnail URL - An URL for the book's cover page image on the bookshop
124 */
125 protected String thumbnailurl;
126
127
128 /**
129 * Retrieves the <code>Id</code> value, without locking,
130 * for this <code>BookStocking</code> <code>Persistent</code>.
131 *
132 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
133 * @return the Integer id
134 */
135 public Integer getId_unsafe() {
136 return id;
137 }
138
139
140 /**
141 * Sets the <code>Id</code> value directly, without checking,
142 * for this BookStocking <code>Persistent</code>.
143 *
144 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
145 * @param cooked the pre-validated value to set
146 */
147 public void setId_unsafe(Integer cooked) {
148 id = cooked;
149 }
150
151 /**
152 * Retrieves the Id value, with locking, for this
153 * <code>BookStocking</code> <code>Persistent</code>.
154 *
155 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
156 * @throws AccessPoemException
157 * if the current <code>AccessToken</code>
158 * does not confer write access rights
159 * @return the value of the field <code>Id</code> for this
160 * <code>BookStocking</code> <code>Persistent</code>
161 */
162
163 public Integer getId()
164 throws AccessPoemException {
165 readLock();
166 return getId_unsafe();
167 }
168
169
170 /**
171 * Sets the <code>Id</code> value, with checking, for this
172 * <code>BookStocking</code> <code>Persistent</code>.
173 *
174 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
175 * @param cooked a validated <code>int</code>
176 * @throws AccessPoemException
177 * if the current <code>AccessToken</code>
178 * does not confer write access rights
179 * @throws ValidationPoemException
180 * if the value is not valid
181 */
182 public void setId(Integer cooked)
183 throws AccessPoemException, ValidationPoemException {
184 _getBookStockingTable().getIdColumn().
185 getType().assertValidCooked(cooked);
186 writeLock();
187 setId_unsafe(cooked);
188 }
189
190 /**
191 * Sets the <code>Id</code> value, with checking, for this
192 * <code>BookStocking</code> <code>Persistent</code>.
193 *
194 * Generated by org.melati.poem.prepro.IntegerFieldDef#generateBaseMethods
195 * @param cooked a validated <code>int</code>
196 * @throws AccessPoemException
197 * if the current <code>AccessToken</code>
198 * does not confer write access rights
199 * @throws ValidationPoemException
200 * if the value is not valid
201 */
202
203 public final void setId(int cooked)
204 throws AccessPoemException, ValidationPoemException {
205 setId(new Integer(cooked));
206 }
207
208
209 /**
210 * Retrieves the <code>Id</code> value as a <code>Field</code>
211 * from this <code>BookStocking</code> <code>Persistent</code>.
212 *
213 * see org.melati.poem.prepro.FieldDef#generateFieldCreator
214 * @throws AccessPoemException
215 * if the current <code>AccessToken</code>
216 * does not confer write access rights
217 * @return the Integer id
218 */
219 public Field<Integer> getIdField() throws AccessPoemException {
220 Column<Integer> c = _getBookStockingTable().getIdColumn();
221 return new Field<Integer>((Integer)c.getRaw(this), c);
222 }
223
224
225 /**
226 * Retrieves the <code>Shop</code> value, without locking,
227 * for this <code>BookStocking</code> <code>Persistent</code>.
228 *
229 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
230 * @return the Integer shop
231 */
232 public Integer getShop_unsafe() {
233 return shop;
234 }
235
236
237 /**
238 * Sets the <code>Shop</code> value directly, without checking,
239 * for this BookStocking <code>Persistent</code>.
240 *
241 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
242 * @param cooked the pre-validated value to set
243 */
244 public void setShop_unsafe(Integer cooked) {
245 shop = cooked;
246 }
247
248 /**
249 * Retrieves the Table Row Object ID.
250 *
251 * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods
252 * @throws AccessPoemException
253 * if the current <code>AccessToken</code>
254 * does not confer read access rights
255 * @return the TROID as an <code>Integer</code>
256 */
257
258 public Integer getShopTroid()
259 throws AccessPoemException {
260 readLock();
261 return getShop_unsafe();
262 }
263
264
265 /**
266 * Sets the Table Row Object ID.
267 *
268 * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods
269 * @param raw a Table Row Object Id
270 * @throws AccessPoemException
271 * if the current <code>AccessToken</code>
272 * does not confer write access rights
273 */
274 public void setShopTroid(Integer raw)
275 throws AccessPoemException {
276 setShop(raw == null ? null :
277 getBibliomaniaDatabaseTables().getBookshopTable().getBookshopObject(raw));
278 }
279
280
281 /**
282 * Retrieves the <code>Shop</code> object referred to.
283 *
284 * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods
285 * @throws AccessPoemException
286 * if the current <code>AccessToken</code>
287 * does not confer read access rights
288 * @throws NoSuchRowPoemException
289 * if the <code>Persistent</code> has yet to be allocated a TROID
290 * @return the <code>Shop</code> as a <code>Bookshop</code>
291 */
292 public Bookshop getShop()
293 throws AccessPoemException, NoSuchRowPoemException {
294 Integer troid = getShopTroid();
295 return troid == null ? null :
296 getBibliomaniaDatabaseTables().getBookshopTable().getBookshopObject(troid);
297 }
298
299
300 /**
301 * Set the Shop.
302 *
303 * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods
304 * @param cooked a validated <code>Bookshop</code>
305 * @throws AccessPoemException
306 * if the current <code>AccessToken</code>
307 * does not confer write access rights
308 */
309 public void setShop(Bookshop cooked)
310 throws AccessPoemException {
311 _getBookStockingTable().
312 getShopColumn().
313 getType().assertValidCooked(cooked);
314 writeLock();
315 if (cooked == null)
316 setShop_unsafe(null);
317 else {
318 cooked.existenceLock();
319 setShop_unsafe(cooked.troid());
320 }
321 }
322
323
324 /**
325 * Retrieves the <code>Shop</code> value as a <code>Field</code>
326 * from this <code>BookStocking</code> <code>Persistent</code>.
327 *
328 * see org.melati.poem.prepro.FieldDef#generateFieldCreator
329 * @throws AccessPoemException
330 * if the current <code>AccessToken</code>
331 * does not confer write access rights
332 * @return the Integer shop
333 */
334 public Field<Integer> getShopField() throws AccessPoemException {
335 Column<Integer> c = _getBookStockingTable().getShopColumn();
336 return new Field<Integer>((Integer)c.getRaw(this), c);
337 }
338
339
340 /**
341 * Retrieves the <code>Book</code> value, without locking,
342 * for this <code>BookStocking</code> <code>Persistent</code>.
343 *
344 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
345 * @return the Integer book
346 */
347 public Integer getBook_unsafe() {
348 return book;
349 }
350
351
352 /**
353 * Sets the <code>Book</code> value directly, without checking,
354 * for this BookStocking <code>Persistent</code>.
355 *
356 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
357 * @param cooked the pre-validated value to set
358 */
359 public void setBook_unsafe(Integer cooked) {
360 book = cooked;
361 }
362
363 /**
364 * Retrieves the Table Row Object ID.
365 *
366 * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods
367 * @throws AccessPoemException
368 * if the current <code>AccessToken</code>
369 * does not confer read access rights
370 * @return the TROID as an <code>Integer</code>
371 */
372
373 public Integer getBookTroid()
374 throws AccessPoemException {
375 readLock();
376 return getBook_unsafe();
377 }
378
379
380 /**
381 * Sets the Table Row Object ID.
382 *
383 * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods
384 * @param raw a Table Row Object Id
385 * @throws AccessPoemException
386 * if the current <code>AccessToken</code>
387 * does not confer write access rights
388 */
389 public void setBookTroid(Integer raw)
390 throws AccessPoemException {
391 setBook(raw == null ? null :
392 (Book)getBibliomaniaDatabaseTables().getBookTable().getBookObject(raw));
393 }
394
395
396 /**
397 * Retrieves the <code>Book</code> object referred to.
398 *
399 * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods
400 * @throws AccessPoemException
401 * if the current <code>AccessToken</code>
402 * does not confer read access rights
403 * @throws NoSuchRowPoemException
404 * if the <code>Persistent</code> has yet to be allocated a TROID
405 * @return the <code>Book</code> as a <code>Book</code>
406 */
407 public Book getBook()
408 throws AccessPoemException, NoSuchRowPoemException {
409 Integer troid = getBookTroid();
410 return troid == null ? null :
411 (Book)getBibliomaniaDatabaseTables().getBookTable().getBookObject(troid);
412 }
413
414
415 /**
416 * Set the Book.
417 *
418 * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods
419 * @param cooked a validated <code>Book</code>
420 * @throws AccessPoemException
421 * if the current <code>AccessToken</code>
422 * does not confer write access rights
423 */
424 public void setBook(Book cooked)
425 throws AccessPoemException {
426 _getBookStockingTable().
427 getBookColumn().
428 getType().assertValidCooked(cooked);
429 writeLock();
430 if (cooked == null)
431 setBook_unsafe(null);
432 else {
433 cooked.existenceLock();
434 setBook_unsafe(cooked.troid());
435 }
436 }
437
438
439 /**
440 * Retrieves the <code>Book</code> value as a <code>Field</code>
441 * from this <code>BookStocking</code> <code>Persistent</code>.
442 *
443 * see org.melati.poem.prepro.FieldDef#generateFieldCreator
444 * @throws AccessPoemException
445 * if the current <code>AccessToken</code>
446 * does not confer write access rights
447 * @return the Integer book
448 */
449 public Field<Integer> getBookField() throws AccessPoemException {
450 Column<Integer> c = _getBookStockingTable().getBookColumn();
451 return new Field<Integer>((Integer)c.getRaw(this), c);
452 }
453
454
455 /**
456 * Retrieves the <code>Title</code> value, without locking,
457 * for this <code>BookStocking</code> <code>Persistent</code>.
458 *
459 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
460 * @return the String title
461 */
462 public String getTitle_unsafe() {
463 return title;
464 }
465
466
467 /**
468 * Sets the <code>Title</code> value directly, without checking,
469 * for this BookStocking <code>Persistent</code>.
470 *
471 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
472 * @param cooked the pre-validated value to set
473 */
474 public void setTitle_unsafe(String cooked) {
475 title = cooked;
476 }
477
478 /**
479 * Retrieves the Title value, with locking, for this
480 * <code>BookStocking</code> <code>Persistent</code>.
481 * Field description:
482 * The bookshop's title for the book
483 *
484 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
485 * @throws AccessPoemException
486 * if the current <code>AccessToken</code>
487 * does not confer write access rights
488 * @return the value of the field <code>Title</code> for this
489 * <code>BookStocking</code> <code>Persistent</code>
490 */
491
492 public String getTitle()
493 throws AccessPoemException {
494 readLock();
495 return getTitle_unsafe();
496 }
497
498
499 /**
500 * Sets the <code>Title</code> value, with checking, for this
501 * <code>BookStocking</code> <code>Persistent</code>.
502 * Field description:
503 * The bookshop's title for the book
504 *
505 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
506 * @param cooked a validated <code>int</code>
507 * @throws AccessPoemException
508 * if the current <code>AccessToken</code>
509 * does not confer write access rights
510 * @throws ValidationPoemException
511 * if the value is not valid
512 */
513 public void setTitle(String cooked)
514 throws AccessPoemException, ValidationPoemException {
515 _getBookStockingTable().getTitleColumn().
516 getType().assertValidCooked(cooked);
517 writeLock();
518 setTitle_unsafe(cooked);
519 }
520
521
522 /**
523 * Retrieves the <code>Title</code> value as a <code>Field</code>
524 * from this <code>BookStocking</code> <code>Persistent</code>.
525 *
526 * see org.melati.poem.prepro.FieldDef#generateFieldCreator
527 * @throws AccessPoemException
528 * if the current <code>AccessToken</code>
529 * does not confer write access rights
530 * @return the String title
531 */
532 public Field<String> getTitleField() throws AccessPoemException {
533 Column<String> c = _getBookStockingTable().getTitleColumn();
534 return new Field<String>((String)c.getRaw(this), c);
535 }
536
537
538 /**
539 * Retrieves the <code>Author</code> value, without locking,
540 * for this <code>BookStocking</code> <code>Persistent</code>.
541 *
542 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
543 * @return the String author
544 */
545 public String getAuthor_unsafe() {
546 return author;
547 }
548
549
550 /**
551 * Sets the <code>Author</code> value directly, without checking,
552 * for this BookStocking <code>Persistent</code>.
553 *
554 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
555 * @param cooked the pre-validated value to set
556 */
557 public void setAuthor_unsafe(String cooked) {
558 author = cooked;
559 }
560
561 /**
562 * Retrieves the Author value, with locking, for this
563 * <code>BookStocking</code> <code>Persistent</code>.
564 * Field description:
565 * The bookshop's author name for the book
566 *
567 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
568 * @throws AccessPoemException
569 * if the current <code>AccessToken</code>
570 * does not confer write access rights
571 * @return the value of the field <code>Author</code> for this
572 * <code>BookStocking</code> <code>Persistent</code>
573 */
574
575 public String getAuthor()
576 throws AccessPoemException {
577 readLock();
578 return getAuthor_unsafe();
579 }
580
581
582 /**
583 * Sets the <code>Author</code> value, with checking, for this
584 * <code>BookStocking</code> <code>Persistent</code>.
585 * Field description:
586 * The bookshop's author name for the book
587 *
588 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
589 * @param cooked a validated <code>int</code>
590 * @throws AccessPoemException
591 * if the current <code>AccessToken</code>
592 * does not confer write access rights
593 * @throws ValidationPoemException
594 * if the value is not valid
595 */
596 public void setAuthor(String cooked)
597 throws AccessPoemException, ValidationPoemException {
598 _getBookStockingTable().getAuthorColumn().
599 getType().assertValidCooked(cooked);
600 writeLock();
601 setAuthor_unsafe(cooked);
602 }
603
604
605 /**
606 * Retrieves the <code>Author</code> value as a <code>Field</code>
607 * from this <code>BookStocking</code> <code>Persistent</code>.
608 *
609 * see org.melati.poem.prepro.FieldDef#generateFieldCreator
610 * @throws AccessPoemException
611 * if the current <code>AccessToken</code>
612 * does not confer write access rights
613 * @return the String author
614 */
615 public Field<String> getAuthorField() throws AccessPoemException {
616 Column<String> c = _getBookStockingTable().getAuthorColumn();
617 return new Field<String>((String)c.getRaw(this), c);
618 }
619
620
621 /**
622 * Retrieves the <code>Vendorproductid</code> value, without locking,
623 * for this <code>BookStocking</code> <code>Persistent</code>.
624 *
625 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
626 * @return the String vendorproductid
627 */
628 public String getVendorproductid_unsafe() {
629 return vendorproductid;
630 }
631
632
633 /**
634 * Sets the <code>Vendorproductid</code> value directly, without checking,
635 * for this BookStocking <code>Persistent</code>.
636 *
637 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
638 * @param cooked the pre-validated value to set
639 */
640 public void setVendorproductid_unsafe(String cooked) {
641 vendorproductid = cooked;
642 }
643
644 /**
645 * Retrieves the Vendorproductid value, with locking, for this
646 * <code>BookStocking</code> <code>Persistent</code>.
647 * Field description:
648 * The bookshop's internal product ID for the book
649 *
650 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
651 * @throws AccessPoemException
652 * if the current <code>AccessToken</code>
653 * does not confer write access rights
654 * @return the value of the field <code>Vendorproductid</code> for this
655 * <code>BookStocking</code> <code>Persistent</code>
656 */
657
658 public String getVendorproductid()
659 throws AccessPoemException {
660 readLock();
661 return getVendorproductid_unsafe();
662 }
663
664
665 /**
666 * Sets the <code>Vendorproductid</code> value, with checking, for this
667 * <code>BookStocking</code> <code>Persistent</code>.
668 * Field description:
669 * The bookshop's internal product ID for the book
670 *
671 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
672 * @param cooked a validated <code>int</code>
673 * @throws AccessPoemException
674 * if the current <code>AccessToken</code>
675 * does not confer write access rights
676 * @throws ValidationPoemException
677 * if the value is not valid
678 */
679 public void setVendorproductid(String cooked)
680 throws AccessPoemException, ValidationPoemException {
681 _getBookStockingTable().getVendorproductidColumn().
682 getType().assertValidCooked(cooked);
683 writeLock();
684 setVendorproductid_unsafe(cooked);
685 }
686
687
688 /**
689 * Retrieves the <code>Vendorproductid</code> value as a <code>Field</code>
690 * from this <code>BookStocking</code> <code>Persistent</code>.
691 *
692 * see org.melati.poem.prepro.FieldDef#generateFieldCreator
693 * @throws AccessPoemException
694 * if the current <code>AccessToken</code>
695 * does not confer write access rights
696 * @return the String vendorproductid
697 */
698 public Field<String> getVendorproductidField() throws AccessPoemException {
699 Column<String> c = _getBookStockingTable().getVendorproductidColumn();
700 return new Field<String>((String)c.getRaw(this), c);
701 }
702
703
704 /**
705 * Retrieves the <code>Isbn</code> value, without locking,
706 * for this <code>BookStocking</code> <code>Persistent</code>.
707 *
708 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
709 * @return the String isbn
710 */
711 public String getIsbn_unsafe() {
712 return isbn;
713 }
714
715
716 /**
717 * Sets the <code>Isbn</code> value directly, without checking,
718 * for this BookStocking <code>Persistent</code>.
719 *
720 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
721 * @param cooked the pre-validated value to set
722 */
723 public void setIsbn_unsafe(String cooked) {
724 isbn = cooked;
725 }
726
727 /**
728 * Retrieves the Isbn value, with locking, for this
729 * <code>BookStocking</code> <code>Persistent</code>.
730 * Field description:
731 * The ISBN for the book
732 *
733 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
734 * @throws AccessPoemException
735 * if the current <code>AccessToken</code>
736 * does not confer write access rights
737 * @return the value of the field <code>Isbn</code> for this
738 * <code>BookStocking</code> <code>Persistent</code>
739 */
740
741 public String getIsbn()
742 throws AccessPoemException {
743 readLock();
744 return getIsbn_unsafe();
745 }
746
747
748 /**
749 * Sets the <code>Isbn</code> value, with checking, for this
750 * <code>BookStocking</code> <code>Persistent</code>.
751 * Field description:
752 * The ISBN for the book
753 *
754 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
755 * @param cooked a validated <code>int</code>
756 * @throws AccessPoemException
757 * if the current <code>AccessToken</code>
758 * does not confer write access rights
759 * @throws ValidationPoemException
760 * if the value is not valid
761 */
762 public void setIsbn(String cooked)
763 throws AccessPoemException, ValidationPoemException {
764 _getBookStockingTable().getIsbnColumn().
765 getType().assertValidCooked(cooked);
766 writeLock();
767 setIsbn_unsafe(cooked);
768 }
769
770
771 /**
772 * Retrieves the <code>Isbn</code> value as a <code>Field</code>
773 * from this <code>BookStocking</code> <code>Persistent</code>.
774 *
775 * see org.melati.poem.prepro.FieldDef#generateFieldCreator
776 * @throws AccessPoemException
777 * if the current <code>AccessToken</code>
778 * does not confer write access rights
779 * @return the String isbn
780 */
781 public Field<String> getIsbnField() throws AccessPoemException {
782 Column<String> c = _getBookStockingTable().getIsbnColumn();
783 return new Field<String>((String)c.getRaw(this), c);
784 }
785
786
787 /**
788 * Retrieves the <code>Deliveryinfo</code> value, without locking,
789 * for this <code>BookStocking</code> <code>Persistent</code>.
790 *
791 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
792 * @return the String deliveryinfo
793 */
794 public String getDeliveryinfo_unsafe() {
795 return deliveryinfo;
796 }
797
798
799 /**
800 * Sets the <code>Deliveryinfo</code> value directly, without checking,
801 * for this BookStocking <code>Persistent</code>.
802 *
803 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
804 * @param cooked the pre-validated value to set
805 */
806 public void setDeliveryinfo_unsafe(String cooked) {
807 deliveryinfo = cooked;
808 }
809
810 /**
811 * Retrieves the Deliveryinfo value, with locking, for this
812 * <code>BookStocking</code> <code>Persistent</code>.
813 * Field description:
814 * The bookshop's delivery time claim for the book
815 *
816 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
817 * @throws AccessPoemException
818 * if the current <code>AccessToken</code>
819 * does not confer write access rights
820 * @return the value of the field <code>Deliveryinfo</code> for this
821 * <code>BookStocking</code> <code>Persistent</code>
822 */
823
824 public String getDeliveryinfo()
825 throws AccessPoemException {
826 readLock();
827 return getDeliveryinfo_unsafe();
828 }
829
830
831 /**
832 * Sets the <code>Deliveryinfo</code> value, with checking, for this
833 * <code>BookStocking</code> <code>Persistent</code>.
834 * Field description:
835 * The bookshop's delivery time claim for the book
836 *
837 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
838 * @param cooked a validated <code>int</code>
839 * @throws AccessPoemException
840 * if the current <code>AccessToken</code>
841 * does not confer write access rights
842 * @throws ValidationPoemException
843 * if the value is not valid
844 */
845 public void setDeliveryinfo(String cooked)
846 throws AccessPoemException, ValidationPoemException {
847 _getBookStockingTable().getDeliveryinfoColumn().
848 getType().assertValidCooked(cooked);
849 writeLock();
850 setDeliveryinfo_unsafe(cooked);
851 }
852
853
854 /**
855 * Retrieves the <code>Deliveryinfo</code> value as a <code>Field</code>
856 * from this <code>BookStocking</code> <code>Persistent</code>.
857 *
858 * see org.melati.poem.prepro.FieldDef#generateFieldCreator
859 * @throws AccessPoemException
860 * if the current <code>AccessToken</code>
861 * does not confer write access rights
862 * @return the String deliveryinfo
863 */
864 public Field<String> getDeliveryinfoField() throws AccessPoemException {
865 Column<String> c = _getBookStockingTable().getDeliveryinfoColumn();
866 return new Field<String>((String)c.getRaw(this), c);
867 }
868
869
870 /**
871 * Retrieves the <code>Price</code> value, without locking,
872 * for this <code>BookStocking</code> <code>Persistent</code>.
873 *
874 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
875 * @return the String price
876 */
877 public String getPrice_unsafe() {
878 return price;
879 }
880
881
882 /**
883 * Sets the <code>Price</code> value directly, without checking,
884 * for this BookStocking <code>Persistent</code>.
885 *
886 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
887 * @param cooked the pre-validated value to set
888 */
889 public void setPrice_unsafe(String cooked) {
890 price = cooked;
891 }
892
893 /**
894 * Retrieves the Price value, with locking, for this
895 * <code>BookStocking</code> <code>Persistent</code>.
896 * Field description:
897 * The bookshop's price description for the book
898 *
899 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
900 * @throws AccessPoemException
901 * if the current <code>AccessToken</code>
902 * does not confer write access rights
903 * @return the value of the field <code>Price</code> for this
904 * <code>BookStocking</code> <code>Persistent</code>
905 */
906
907 public String getPrice()
908 throws AccessPoemException {
909 readLock();
910 return getPrice_unsafe();
911 }
912
913
914 /**
915 * Sets the <code>Price</code> value, with checking, for this
916 * <code>BookStocking</code> <code>Persistent</code>.
917 * Field description:
918 * The bookshop's price description for the book
919 *
920 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
921 * @param cooked a validated <code>int</code>
922 * @throws AccessPoemException
923 * if the current <code>AccessToken</code>
924 * does not confer write access rights
925 * @throws ValidationPoemException
926 * if the value is not valid
927 */
928 public void setPrice(String cooked)
929 throws AccessPoemException, ValidationPoemException {
930 _getBookStockingTable().getPriceColumn().
931 getType().assertValidCooked(cooked);
932 writeLock();
933 setPrice_unsafe(cooked);
934 }
935
936
937 /**
938 * Retrieves the <code>Price</code> value as a <code>Field</code>
939 * from this <code>BookStocking</code> <code>Persistent</code>.
940 *
941 * see org.melati.poem.prepro.FieldDef#generateFieldCreator
942 * @throws AccessPoemException
943 * if the current <code>AccessToken</code>
944 * does not confer write access rights
945 * @return the String price
946 */
947 public Field<String> getPriceField() throws AccessPoemException {
948 Column<String> c = _getBookStockingTable().getPriceColumn();
949 return new Field<String>((String)c.getRaw(this), c);
950 }
951
952
953 /**
954 * Retrieves the <code>Pricenumber</code> value, without locking,
955 * for this <code>BookStocking</code> <code>Persistent</code>.
956 *
957 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
958 * @return the Integer pricenumber
959 */
960 public Integer getPricenumber_unsafe() {
961 return pricenumber;
962 }
963
964
965 /**
966 * Sets the <code>Pricenumber</code> value directly, without checking,
967 * for this BookStocking <code>Persistent</code>.
968 *
969 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
970 * @param cooked the pre-validated value to set
971 */
972 public void setPricenumber_unsafe(Integer cooked) {
973 pricenumber = cooked;
974 }
975
976 /**
977 * Retrieves the Pricenumber value, with locking, for this
978 * <code>BookStocking</code> <code>Persistent</code>.
979 * Field description:
980 * A numeric version of the price, if can be calculated ...
981 *
982 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
983 * @throws AccessPoemException
984 * if the current <code>AccessToken</code>
985 * does not confer write access rights
986 * @return the value of the field <code>Pricenumber</code> for this
987 * <code>BookStocking</code> <code>Persistent</code>
988 */
989
990 public Integer getPricenumber()
991 throws AccessPoemException {
992 readLock();
993 return getPricenumber_unsafe();
994 }
995
996
997 /**
998 * Sets the <code>Pricenumber</code> value, with checking, for this
999 * <code>BookStocking</code> <code>Persistent</code>.
1000 * Field description:
1001 * A numeric version of the price, if can be calculated ...
1002 *
1003 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
1004 * @param cooked a validated <code>int</code>
1005 * @throws AccessPoemException
1006 * if the current <code>AccessToken</code>
1007 * does not confer write access rights
1008 * @throws ValidationPoemException
1009 * if the value is not valid
1010 */
1011 public void setPricenumber(Integer cooked)
1012 throws AccessPoemException, ValidationPoemException {
1013 _getBookStockingTable().getPricenumberColumn().
1014 getType().assertValidCooked(cooked);
1015 writeLock();
1016 setPricenumber_unsafe(cooked);
1017 }
1018
1019 /**
1020 * Sets the <code>Pricenumber</code> value, with checking, for this
1021 * <code>BookStocking</code> <code>Persistent</code>.
1022 * Field description:
1023 * A numeric version of the price, if can be calculated ...
1024 *
1025 *
1026 * Generated by org.melati.poem.prepro.IntegerFieldDef#generateBaseMethods
1027 * @param cooked a validated <code>int</code>
1028 * @throws AccessPoemException
1029 * if the current <code>AccessToken</code>
1030 * does not confer write access rights
1031 * @throws ValidationPoemException
1032 * if the value is not valid
1033 */
1034
1035 public final void setPricenumber(int cooked)
1036 throws AccessPoemException, ValidationPoemException {
1037 setPricenumber(new Integer(cooked));
1038 }
1039
1040
1041 /**
1042 * Retrieves the <code>Pricenumber</code> value as a <code>Field</code>
1043 * from this <code>BookStocking</code> <code>Persistent</code>.
1044 *
1045 * see org.melati.poem.prepro.FieldDef#generateFieldCreator
1046 * @throws AccessPoemException
1047 * if the current <code>AccessToken</code>
1048 * does not confer write access rights
1049 * @return the Integer pricenumber
1050 */
1051 public Field<Integer> getPricenumberField() throws AccessPoemException {
1052 Column<Integer> c = _getBookStockingTable().getPricenumberColumn();
1053 return new Field<Integer>((Integer)c.getRaw(this), c);
1054 }
1055
1056
1057 /**
1058 * Retrieves the <code>Format</code> value, without locking,
1059 * for this <code>BookStocking</code> <code>Persistent</code>.
1060 *
1061 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
1062 * @return the String format
1063 */
1064 public String getFormat_unsafe() {
1065 return format;
1066 }
1067
1068
1069 /**
1070 * Sets the <code>Format</code> value directly, without checking,
1071 * for this BookStocking <code>Persistent</code>.
1072 *
1073 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
1074 * @param cooked the pre-validated value to set
1075 */
1076 public void setFormat_unsafe(String cooked) {
1077 format = cooked;
1078 }
1079
1080 /**
1081 * Retrieves the Format value, with locking, for this
1082 * <code>BookStocking</code> <code>Persistent</code>.
1083 * Field description:
1084 * The bookshop's format description for the book
1085 *
1086 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
1087 * @throws AccessPoemException
1088 * if the current <code>AccessToken</code>
1089 * does not confer write access rights
1090 * @return the value of the field <code>Format</code> for this
1091 * <code>BookStocking</code> <code>Persistent</code>
1092 */
1093
1094 public String getFormat()
1095 throws AccessPoemException {
1096 readLock();
1097 return getFormat_unsafe();
1098 }
1099
1100
1101 /**
1102 * Sets the <code>Format</code> value, with checking, for this
1103 * <code>BookStocking</code> <code>Persistent</code>.
1104 * Field description:
1105 * The bookshop's format description for the book
1106 *
1107 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
1108 * @param cooked a validated <code>int</code>
1109 * @throws AccessPoemException
1110 * if the current <code>AccessToken</code>
1111 * does not confer write access rights
1112 * @throws ValidationPoemException
1113 * if the value is not valid
1114 */
1115 public void setFormat(String cooked)
1116 throws AccessPoemException, ValidationPoemException {
1117 _getBookStockingTable().getFormatColumn().
1118 getType().assertValidCooked(cooked);
1119 writeLock();
1120 setFormat_unsafe(cooked);
1121 }
1122
1123
1124 /**
1125 * Retrieves the <code>Format</code> value as a <code>Field</code>
1126 * from this <code>BookStocking</code> <code>Persistent</code>.
1127 *
1128 * see org.melati.poem.prepro.FieldDef#generateFieldCreator
1129 * @throws AccessPoemException
1130 * if the current <code>AccessToken</code>
1131 * does not confer write access rights
1132 * @return the String format
1133 */
1134 public Field<String> getFormatField() throws AccessPoemException {
1135 Column<String> c = _getBookStockingTable().getFormatColumn();
1136 return new Field<String>((String)c.getRaw(this), c);
1137 }
1138
1139
1140 /**
1141 * Retrieves the <code>Formatcode</code> value, without locking,
1142 * for this <code>BookStocking</code> <code>Persistent</code>.
1143 *
1144 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
1145 * @return the Integer formatcode
1146 */
1147 public Integer getFormatcode_unsafe() {
1148 return formatcode;
1149 }
1150
1151
1152 /**
1153 * Sets the <code>Formatcode</code> value directly, without checking,
1154 * for this BookStocking <code>Persistent</code>.
1155 *
1156 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
1157 * @param cooked the pre-validated value to set
1158 */
1159 public void setFormatcode_unsafe(Integer cooked) {
1160 formatcode = cooked;
1161 }
1162
1163 /**
1164 * Retrieves the Table Row Object ID.
1165 *
1166 * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods
1167 * @throws AccessPoemException
1168 * if the current <code>AccessToken</code>
1169 * does not confer read access rights
1170 * @return the TROID as an <code>Integer</code>
1171 */
1172
1173 public Integer getFormatcodeTroid()
1174 throws AccessPoemException {
1175 readLock();
1176 return getFormatcode_unsafe();
1177 }
1178
1179
1180 /**
1181 * Sets the Table Row Object ID.
1182 *
1183 * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods
1184 * @param raw a Table Row Object Id
1185 * @throws AccessPoemException
1186 * if the current <code>AccessToken</code>
1187 * does not confer write access rights
1188 */
1189 public void setFormatcodeTroid(Integer raw)
1190 throws AccessPoemException {
1191 setFormatcode(raw == null ? null :
1192 getBibliomaniaDatabaseTables().getBookFormatTable().getBookFormatObject(raw));
1193 }
1194
1195
1196 /**
1197 * Retrieves the <code>Formatcode</code> object referred to.
1198 *
1199 * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods
1200 * @throws AccessPoemException
1201 * if the current <code>AccessToken</code>
1202 * does not confer read access rights
1203 * @throws NoSuchRowPoemException
1204 * if the <code>Persistent</code> has yet to be allocated a TROID
1205 * @return the <code>Formatcode</code> as a <code>BookFormat</code>
1206 */
1207 public BookFormat getFormatcode()
1208 throws AccessPoemException, NoSuchRowPoemException {
1209 Integer troid = getFormatcodeTroid();
1210 return troid == null ? null :
1211 getBibliomaniaDatabaseTables().getBookFormatTable().getBookFormatObject(troid);
1212 }
1213
1214
1215 /**
1216 * Set the Formatcode.
1217 *
1218 * Generated by org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods
1219 * @param cooked a validated <code>BookFormat</code>
1220 * @throws AccessPoemException
1221 * if the current <code>AccessToken</code>
1222 * does not confer write access rights
1223 */
1224 public void setFormatcode(BookFormat cooked)
1225 throws AccessPoemException {
1226 _getBookStockingTable().
1227 getFormatcodeColumn().
1228 getType().assertValidCooked(cooked);
1229 writeLock();
1230 if (cooked == null)
1231 setFormatcode_unsafe(null);
1232 else {
1233 cooked.existenceLock();
1234 setFormatcode_unsafe(cooked.troid());
1235 }
1236 }
1237
1238
1239 /**
1240 * Retrieves the <code>Formatcode</code> value as a <code>Field</code>
1241 * from this <code>BookStocking</code> <code>Persistent</code>.
1242 *
1243 * see org.melati.poem.prepro.FieldDef#generateFieldCreator
1244 * @throws AccessPoemException
1245 * if the current <code>AccessToken</code>
1246 * does not confer write access rights
1247 * @return the Integer formatcode
1248 */
1249 public Field<Integer> getFormatcodeField() throws AccessPoemException {
1250 Column<Integer> c = _getBookStockingTable().getFormatcodeColumn();
1251 return new Field<Integer>((Integer)c.getRaw(this), c);
1252 }
1253
1254
1255 /**
1256 * Retrieves the <code>Publisher</code> value, without locking,
1257 * for this <code>BookStocking</code> <code>Persistent</code>.
1258 *
1259 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
1260 * @return the String publisher
1261 */
1262 public String getPublisher_unsafe() {
1263 return publisher;
1264 }
1265
1266
1267 /**
1268 * Sets the <code>Publisher</code> value directly, without checking,
1269 * for this BookStocking <code>Persistent</code>.
1270 *
1271 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
1272 * @param cooked the pre-validated value to set
1273 */
1274 public void setPublisher_unsafe(String cooked) {
1275 publisher = cooked;
1276 }
1277
1278 /**
1279 * Retrieves the Publisher value, with locking, for this
1280 * <code>BookStocking</code> <code>Persistent</code>.
1281 * Field description:
1282 * The bookshop's publisher description for the book
1283 *
1284 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
1285 * @throws AccessPoemException
1286 * if the current <code>AccessToken</code>
1287 * does not confer write access rights
1288 * @return the value of the field <code>Publisher</code> for this
1289 * <code>BookStocking</code> <code>Persistent</code>
1290 */
1291
1292 public String getPublisher()
1293 throws AccessPoemException {
1294 readLock();
1295 return getPublisher_unsafe();
1296 }
1297
1298
1299 /**
1300 * Sets the <code>Publisher</code> value, with checking, for this
1301 * <code>BookStocking</code> <code>Persistent</code>.
1302 * Field description:
1303 * The bookshop's publisher description for the book
1304 *
1305 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
1306 * @param cooked a validated <code>int</code>
1307 * @throws AccessPoemException
1308 * if the current <code>AccessToken</code>
1309 * does not confer write access rights
1310 * @throws ValidationPoemException
1311 * if the value is not valid
1312 */
1313 public void setPublisher(String cooked)
1314 throws AccessPoemException, ValidationPoemException {
1315 _getBookStockingTable().getPublisherColumn().
1316 getType().assertValidCooked(cooked);
1317 writeLock();
1318 setPublisher_unsafe(cooked);
1319 }
1320
1321
1322 /**
1323 * Retrieves the <code>Publisher</code> value as a <code>Field</code>
1324 * from this <code>BookStocking</code> <code>Persistent</code>.
1325 *
1326 * see org.melati.poem.prepro.FieldDef#generateFieldCreator
1327 * @throws AccessPoemException
1328 * if the current <code>AccessToken</code>
1329 * does not confer write access rights
1330 * @return the String publisher
1331 */
1332 public Field<String> getPublisherField() throws AccessPoemException {
1333 Column<String> c = _getBookStockingTable().getPublisherColumn();
1334 return new Field<String>((String)c.getRaw(this), c);
1335 }
1336
1337
1338 /**
1339 * Retrieves the <code>Publicationyear</code> value, without locking,
1340 * for this <code>BookStocking</code> <code>Persistent</code>.
1341 *
1342 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
1343 * @return the String publicationyear
1344 */
1345 public String getPublicationyear_unsafe() {
1346 return publicationyear;
1347 }
1348
1349
1350 /**
1351 * Sets the <code>Publicationyear</code> value directly, without checking,
1352 * for this BookStocking <code>Persistent</code>.
1353 *
1354 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
1355 * @param cooked the pre-validated value to set
1356 */
1357 public void setPublicationyear_unsafe(String cooked) {
1358 publicationyear = cooked;
1359 }
1360
1361 /**
1362 * Retrieves the Publicationyear value, with locking, for this
1363 * <code>BookStocking</code> <code>Persistent</code>.
1364 * Field description:
1365 * The bookshop's publication year description for the book
1366 *
1367 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
1368 * @throws AccessPoemException
1369 * if the current <code>AccessToken</code>
1370 * does not confer write access rights
1371 * @return the value of the field <code>Publicationyear</code> for this
1372 * <code>BookStocking</code> <code>Persistent</code>
1373 */
1374
1375 public String getPublicationyear()
1376 throws AccessPoemException {
1377 readLock();
1378 return getPublicationyear_unsafe();
1379 }
1380
1381
1382 /**
1383 * Sets the <code>Publicationyear</code> value, with checking, for this
1384 * <code>BookStocking</code> <code>Persistent</code>.
1385 * Field description:
1386 * The bookshop's publication year description for the book
1387 *
1388 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
1389 * @param cooked a validated <code>int</code>
1390 * @throws AccessPoemException
1391 * if the current <code>AccessToken</code>
1392 * does not confer write access rights
1393 * @throws ValidationPoemException
1394 * if the value is not valid
1395 */
1396 public void setPublicationyear(String cooked)
1397 throws AccessPoemException, ValidationPoemException {
1398 _getBookStockingTable().getPublicationyearColumn().
1399 getType().assertValidCooked(cooked);
1400 writeLock();
1401 setPublicationyear_unsafe(cooked);
1402 }
1403
1404
1405 /**
1406 * Retrieves the <code>Publicationyear</code> value as a <code>Field</code>
1407 * from this <code>BookStocking</code> <code>Persistent</code>.
1408 *
1409 * see org.melati.poem.prepro.FieldDef#generateFieldCreator
1410 * @throws AccessPoemException
1411 * if the current <code>AccessToken</code>
1412 * does not confer write access rights
1413 * @return the String publicationyear
1414 */
1415 public Field<String> getPublicationyearField() throws AccessPoemException {
1416 Column<String> c = _getBookStockingTable().getPublicationyearColumn();
1417 return new Field<String>((String)c.getRaw(this), c);
1418 }
1419
1420
1421 /**
1422 * Retrieves the <code>Detailurl</code> value, without locking,
1423 * for this <code>BookStocking</code> <code>Persistent</code>.
1424 *
1425 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
1426 * @return the String detailurl
1427 */
1428 public String getDetailurl_unsafe() {
1429 return detailurl;
1430 }
1431
1432
1433 /**
1434 * Sets the <code>Detailurl</code> value directly, without checking,
1435 * for this BookStocking <code>Persistent</code>.
1436 *
1437 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
1438 * @param cooked the pre-validated value to set
1439 */
1440 public void setDetailurl_unsafe(String cooked) {
1441 detailurl = cooked;
1442 }
1443
1444 /**
1445 * Retrieves the Detailurl value, with locking, for this
1446 * <code>BookStocking</code> <code>Persistent</code>.
1447 * Field description:
1448 * A scratchpad for storing info about the book's home page on the
1449 * bookshop (or, unused)
1450 *
1451 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
1452 * @throws AccessPoemException
1453 * if the current <code>AccessToken</code>
1454 * does not confer write access rights
1455 * @return the value of the field <code>Detailurl</code> for this
1456 * <code>BookStocking</code> <code>Persistent</code>
1457 */
1458
1459 public String getDetailurl()
1460 throws AccessPoemException {
1461 readLock();
1462 return getDetailurl_unsafe();
1463 }
1464
1465
1466 /**
1467 * Sets the <code>Detailurl</code> value, with checking, for this
1468 * <code>BookStocking</code> <code>Persistent</code>.
1469 * Field description:
1470 * A scratchpad for storing info about the book's home page on the
1471 * bookshop (or, unused)
1472 *
1473 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
1474 * @param cooked a validated <code>int</code>
1475 * @throws AccessPoemException
1476 * if the current <code>AccessToken</code>
1477 * does not confer write access rights
1478 * @throws ValidationPoemException
1479 * if the value is not valid
1480 */
1481 public void setDetailurl(String cooked)
1482 throws AccessPoemException, ValidationPoemException {
1483 _getBookStockingTable().getDetailurlColumn().
1484 getType().assertValidCooked(cooked);
1485 writeLock();
1486 setDetailurl_unsafe(cooked);
1487 }
1488
1489
1490 /**
1491 * Retrieves the <code>Detailurl</code> value as a <code>Field</code>
1492 * from this <code>BookStocking</code> <code>Persistent</code>.
1493 *
1494 * see org.melati.poem.prepro.FieldDef#generateFieldCreator
1495 * @throws AccessPoemException
1496 * if the current <code>AccessToken</code>
1497 * does not confer write access rights
1498 * @return the String detailurl
1499 */
1500 public Field<String> getDetailurlField() throws AccessPoemException {
1501 Column<String> c = _getBookStockingTable().getDetailurlColumn();
1502 return new Field<String>((String)c.getRaw(this), c);
1503 }
1504
1505
1506 /**
1507 * Retrieves the <code>Thumbnailurl</code> value, without locking,
1508 * for this <code>BookStocking</code> <code>Persistent</code>.
1509 *
1510 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
1511 * @return the String thumbnailurl
1512 */
1513 public String getThumbnailurl_unsafe() {
1514 return thumbnailurl;
1515 }
1516
1517
1518 /**
1519 * Sets the <code>Thumbnailurl</code> value directly, without checking,
1520 * for this BookStocking <code>Persistent</code>.
1521 *
1522 * see org.melati.poem.prepro.FieldDef#generateBaseMethods
1523 * @param cooked the pre-validated value to set
1524 */
1525 public void setThumbnailurl_unsafe(String cooked) {
1526 thumbnailurl = cooked;
1527 }
1528
1529 /**
1530 * Retrieves the Thumbnailurl value, with locking, for this
1531 * <code>BookStocking</code> <code>Persistent</code>.
1532 * Field description:
1533 * An URL for the book's cover page image on the bookshop
1534 *
1535 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
1536 * @throws AccessPoemException
1537 * if the current <code>AccessToken</code>
1538 * does not confer write access rights
1539 * @return the value of the field <code>Thumbnailurl</code> for this
1540 * <code>BookStocking</code> <code>Persistent</code>
1541 */
1542
1543 public String getThumbnailurl()
1544 throws AccessPoemException {
1545 readLock();
1546 return getThumbnailurl_unsafe();
1547 }
1548
1549
1550 /**
1551 * Sets the <code>Thumbnailurl</code> value, with checking, for this
1552 * <code>BookStocking</code> <code>Persistent</code>.
1553 * Field description:
1554 * An URL for the book's cover page image on the bookshop
1555 *
1556 * Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
1557 * @param cooked a validated <code>int</code>
1558 * @throws AccessPoemException
1559 * if the current <code>AccessToken</code>
1560 * does not confer write access rights
1561 * @throws ValidationPoemException
1562 * if the value is not valid
1563 */
1564 public void setThumbnailurl(String cooked)
1565 throws AccessPoemException, ValidationPoemException {
1566 _getBookStockingTable().getThumbnailurlColumn().
1567 getType().assertValidCooked(cooked);
1568 writeLock();
1569 setThumbnailurl_unsafe(cooked);
1570 }
1571
1572
1573 /**
1574 * Retrieves the <code>Thumbnailurl</code> value as a <code>Field</code>
1575 * from this <code>BookStocking</code> <code>Persistent</code>.
1576 *
1577 * see org.melati.poem.prepro.FieldDef#generateFieldCreator
1578 * @throws AccessPoemException
1579 * if the current <code>AccessToken</code>
1580 * does not confer write access rights
1581 * @return the String thumbnailurl
1582 */
1583 public Field<String> getThumbnailurlField() throws AccessPoemException {
1584 Column<String> c = _getBookStockingTable().getThumbnailurlColumn();
1585 return new Field<String>((String)c.getRaw(this), c);
1586 }
1587
1588 }
1589