View Javadoc

1   // Do not edit this file!  It was generated by Melati POEM's DSD preprocessor.
2   
3   package org.paneris.rimauresq.model.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.rimauresq.model.Product;
13  import org.paneris.rimauresq.model.RimauresqDatabaseTables;
14  import org.paneris.rimauresq.model.ShopOrder;
15  import org.paneris.rimauresq.model.ShopOrderItemTable;
16  import org.paneris.rimauresq.model.User;
17  
18  
19  /**
20   * Melati POEM generated abstract base class for a <code>Persistent</code> 
21   * <code>ShopOrderItem</code> Object.
22   *
23   * @generator org.melati.poem.prepro.TableDef#generatePersistentBaseJava 
24   */
25  public abstract class ShopOrderItemBase extends JdbcPersistent {
26  
27  
28   /**
29    * Retrieves the Database object.
30    * 
31    * @generator org.melati.poem.prepro.TableDef#generatePersistentBaseJava 
32    * @return the database
33    */
34    public RimauresqDatabaseTables getRimauresqDatabaseTables() {
35      return (RimauresqDatabaseTables)getDatabase();
36    }
37  
38  
39   /**
40    * Retrieves the  <code>ShopOrderItemTable</code> table 
41    * which this <code>Persistent</code> is from.
42    * 
43    * @generator org.melati.poem.prepro.TableDef#generatePersistentBaseJava 
44    * @return the ShopOrderItemTable
45    */
46    public ShopOrderItemTable getShopOrderItemTable() {
47      return (ShopOrderItemTable)getTable();
48    }
49  
50    private ShopOrderItemTable _getShopOrderItemTable() {
51      return (ShopOrderItemTable)getTable();
52    }
53  
54    // Fields in this table 
55   /**
56    * id 
57    */
58    protected Integer id;
59   /**
60    * User 
61    */
62    protected Integer user;
63   /**
64    * Product 
65    */
66    protected Integer product;
67   /**
68    * Quantity 
69    */
70    protected Integer quantity;
71   /**
72    * Order Number - The order number for this pruchase 
73    */
74    protected Integer order;
75   /**
76    * Amount (in GBP) - The amount of this line (in GBP) 
77    */
78    protected Double amount;
79  
80  
81   /**
82    * Retrieves the <code>Id</code> value, without locking, 
83    * for this <code>ShopOrderItem</code> <code>Persistent</code>.
84    *
85    * @generator org.melati.poem.prepro.FieldDef#generateBaseMethods 
86    * @return the Integer id
87    */
88    public Integer getId_unsafe() {
89      return id;
90    }
91  
92  
93   /**
94    * Sets the <code>Id</code> value directly, without checking, 
95    * for this ShopOrderItem <code>Persistent</code>.
96    * 
97    * @generator org.melati.poem.prepro.FieldDef#generateBaseMethods 
98    * @param cooked  the pre-validated value to set
99    */
100   public void setId_unsafe(Integer cooked) {
101     id = cooked;
102   }
103 
104  /**
105   * Retrieves the Id value, with locking, for this 
106   * <code>ShopOrderItem</code> <code>Persistent</code>.
107   * 
108   * @generator org.melati.poem.prepro.AtomFieldDef#generateBaseMethods 
109   * @throws AccessPoemException 
110   *         if the current <code>AccessToken</code> 
111   *         does not confer write access rights 
112   * @return the value of the field <code>Id</code> for this 
113   *         <code>ShopOrderItem</code> <code>Persistent</code>  
114   */
115 
116   public Integer getId()
117       throws AccessPoemException {
118     readLock();
119     return getId_unsafe();
120   }
121 
122 
123  /**
124   * Sets the <code>Id</code> value, with checking, for this 
125   * <code>ShopOrderItem</code> <code>Persistent</code>.
126   * 
127   * @generator org.melati.poem.prepro.AtomFieldDef#generateBaseMethods  
128   * @param cooked  a validated <code>int</code> 
129   * @throws AccessPoemException 
130   *         if the current <code>AccessToken</code> 
131   *         does not confer write access rights
132   * @throws ValidationPoemException 
133   *         if the value is not valid
134   */
135   public void setId(Integer cooked)
136       throws AccessPoemException, ValidationPoemException {
137     _getShopOrderItemTable().getIdColumn().
138       getType().assertValidCooked(cooked);
139     writeLock();
140     setId_unsafe(cooked);
141   }
142 
143  /**
144   * Sets the <code>Id</code> value, with checking, for this 
145   * <code>ShopOrderItem</code> <code>Persistent</code>.
146   * 
147   * @generator org.melati.poem.prepro.IntegerFieldDef#generateBaseMethods 
148   * @param cooked  a validated <code>int</code>
149   * @throws AccessPoemException 
150   *         if the current <code>AccessToken</code> 
151   *         does not confer write access rights
152   * @throws ValidationPoemException 
153   *         if the value is not valid
154   */
155 
156   public final void setId(int cooked)
157       throws AccessPoemException, ValidationPoemException {
158     setId(new Integer(cooked));
159   }
160 
161 
162  /**
163   * Retrieves the <code>Id</code> value as a <code>Field</code>
164   * from this <code>ShopOrderItem</code> <code>Persistent</code>.
165   * 
166   * @generator org.melati.poem.prepro.FieldDef#generateFieldCreator 
167   * @throws AccessPoemException 
168   *         if the current <code>AccessToken</code> 
169   *         does not confer write access rights
170   * @return the Integer id
171   */
172   public Field getIdField() throws AccessPoemException {
173     Column c = _getShopOrderItemTable().getIdColumn();
174     return new Field(c.getRaw(this), c);
175   }
176 
177 
178  /**
179   * Retrieves the <code>User</code> value, without locking, 
180   * for this <code>ShopOrderItem</code> <code>Persistent</code>.
181   *
182   * @generator org.melati.poem.prepro.FieldDef#generateBaseMethods 
183   * @return the Integer user
184   */
185   public Integer getUser_unsafe() {
186     return user;
187   }
188 
189 
190  /**
191   * Sets the <code>User</code> value directly, without checking, 
192   * for this ShopOrderItem <code>Persistent</code>.
193   * 
194   * @generator org.melati.poem.prepro.FieldDef#generateBaseMethods 
195   * @param cooked  the pre-validated value to set
196   */
197   public void setUser_unsafe(Integer cooked) {
198     user = cooked;
199   }
200 
201  /**
202   * Retrieves the Table Row Object ID. 
203   *
204   * @generator org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods 
205   * @throws AccessPoemException  
206   *         if the current <code>AccessToken</code> 
207   *         does not confer read access rights 
208   * @return the TROID as an <code>Integer</code> 
209   */
210 
211   public Integer getUserTroid()
212       throws AccessPoemException {
213     readLock();
214     return getUser_unsafe();
215   }
216 
217 
218  /**
219   * Sets the Table Row Object ID. 
220   * 
221   * @generator org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods 
222   * @param raw  a Table Row Object Id 
223   * @throws AccessPoemException  
224   *         if the current <code>AccessToken</code> 
225   *         does not confer write access rights
226   */
227   public void setUserTroid(Integer raw)
228       throws AccessPoemException {
229     setUser(raw == null ? null : 
230         (User)getRimauresqDatabaseTables().getUserTable().getUserObject(raw));
231   }
232 
233 
234  /**
235   * Retrieves the <code>User</code> object referred to.
236   *  
237   * @generator org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods 
238   * @throws AccessPoemException  
239   *         if the current <code>AccessToken</code> 
240   *         does not confer read access rights 
241   * @throws NoSuchRowPoemException  
242   *         if the <code>Persistent</code> has yet to be allocated a TROID 
243   * @return the <code>User</code> as a <code>User</code> 
244   */
245   public User getUser()
246       throws AccessPoemException, NoSuchRowPoemException {
247     Integer troid = getUserTroid();
248     return troid == null ? null :
249         (User)getRimauresqDatabaseTables().getUserTable().getUserObject(troid);
250   }
251 
252 
253  /**
254   * Set the User.
255   * 
256   * @generator org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods 
257   * @param cooked  a validated <code>User</code>
258   * @throws AccessPoemException  
259   *         if the current <code>AccessToken</code> 
260   *         does not confer write access rights 
261   */
262   public void setUser(User cooked)
263       throws AccessPoemException {
264     _getShopOrderItemTable().
265       getUserColumn().
266         getType().assertValidCooked(cooked);
267     writeLock();
268     if (cooked == null)
269       setUser_unsafe(null);
270     else {
271       cooked.existenceLock();
272       setUser_unsafe(cooked.troid());
273     }
274   }
275 
276 
277  /**
278   * Retrieves the <code>User</code> value as a <code>Field</code>
279   * from this <code>ShopOrderItem</code> <code>Persistent</code>.
280   * 
281   * @generator org.melati.poem.prepro.FieldDef#generateFieldCreator 
282   * @throws AccessPoemException 
283   *         if the current <code>AccessToken</code> 
284   *         does not confer write access rights
285   * @return the Integer user
286   */
287   public Field getUserField() throws AccessPoemException {
288     Column c = _getShopOrderItemTable().getUserColumn();
289     return new Field(c.getRaw(this), c);
290   }
291 
292 
293  /**
294   * Retrieves the <code>Product</code> value, without locking, 
295   * for this <code>ShopOrderItem</code> <code>Persistent</code>.
296   *
297   * @generator org.melati.poem.prepro.FieldDef#generateBaseMethods 
298   * @return the Integer product
299   */
300   public Integer getProduct_unsafe() {
301     return product;
302   }
303 
304 
305  /**
306   * Sets the <code>Product</code> value directly, without checking, 
307   * for this ShopOrderItem <code>Persistent</code>.
308   * 
309   * @generator org.melati.poem.prepro.FieldDef#generateBaseMethods 
310   * @param cooked  the pre-validated value to set
311   */
312   public void setProduct_unsafe(Integer cooked) {
313     product = cooked;
314   }
315 
316  /**
317   * Retrieves the Table Row Object ID. 
318   *
319   * @generator org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods 
320   * @throws AccessPoemException  
321   *         if the current <code>AccessToken</code> 
322   *         does not confer read access rights 
323   * @return the TROID as an <code>Integer</code> 
324   */
325 
326   public Integer getProductTroid()
327       throws AccessPoemException {
328     readLock();
329     return getProduct_unsafe();
330   }
331 
332 
333  /**
334   * Sets the Table Row Object ID. 
335   * 
336   * @generator org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods 
337   * @param raw  a Table Row Object Id 
338   * @throws AccessPoemException  
339   *         if the current <code>AccessToken</code> 
340   *         does not confer write access rights
341   */
342   public void setProductTroid(Integer raw)
343       throws AccessPoemException {
344     setProduct(raw == null ? null : 
345         getRimauresqDatabaseTables().getProductTable().getProductObject(raw));
346   }
347 
348 
349  /**
350   * Retrieves the <code>Product</code> object referred to.
351   *  
352   * @generator org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods 
353   * @throws AccessPoemException  
354   *         if the current <code>AccessToken</code> 
355   *         does not confer read access rights 
356   * @throws NoSuchRowPoemException  
357   *         if the <code>Persistent</code> has yet to be allocated a TROID 
358   * @return the <code>Product</code> as a <code>Product</code> 
359   */
360   public Product getProduct()
361       throws AccessPoemException, NoSuchRowPoemException {
362     Integer troid = getProductTroid();
363     return troid == null ? null :
364         getRimauresqDatabaseTables().getProductTable().getProductObject(troid);
365   }
366 
367 
368  /**
369   * Set the Product.
370   * 
371   * @generator org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods 
372   * @param cooked  a validated <code>Product</code>
373   * @throws AccessPoemException  
374   *         if the current <code>AccessToken</code> 
375   *         does not confer write access rights 
376   */
377   public void setProduct(Product cooked)
378       throws AccessPoemException {
379     _getShopOrderItemTable().
380       getProductColumn().
381         getType().assertValidCooked(cooked);
382     writeLock();
383     if (cooked == null)
384       setProduct_unsafe(null);
385     else {
386       cooked.existenceLock();
387       setProduct_unsafe(cooked.troid());
388     }
389   }
390 
391 
392  /**
393   * Retrieves the <code>Product</code> value as a <code>Field</code>
394   * from this <code>ShopOrderItem</code> <code>Persistent</code>.
395   * 
396   * @generator org.melati.poem.prepro.FieldDef#generateFieldCreator 
397   * @throws AccessPoemException 
398   *         if the current <code>AccessToken</code> 
399   *         does not confer write access rights
400   * @return the Integer product
401   */
402   public Field getProductField() throws AccessPoemException {
403     Column c = _getShopOrderItemTable().getProductColumn();
404     return new Field(c.getRaw(this), c);
405   }
406 
407 
408  /**
409   * Retrieves the <code>Quantity</code> value, without locking, 
410   * for this <code>ShopOrderItem</code> <code>Persistent</code>.
411   *
412   * @generator org.melati.poem.prepro.FieldDef#generateBaseMethods 
413   * @return the Integer quantity
414   */
415   public Integer getQuantity_unsafe() {
416     return quantity;
417   }
418 
419 
420  /**
421   * Sets the <code>Quantity</code> value directly, without checking, 
422   * for this ShopOrderItem <code>Persistent</code>.
423   * 
424   * @generator org.melati.poem.prepro.FieldDef#generateBaseMethods 
425   * @param cooked  the pre-validated value to set
426   */
427   public void setQuantity_unsafe(Integer cooked) {
428     quantity = cooked;
429   }
430 
431  /**
432   * Retrieves the Quantity value, with locking, for this 
433   * <code>ShopOrderItem</code> <code>Persistent</code>.
434   * 
435   * @generator org.melati.poem.prepro.AtomFieldDef#generateBaseMethods 
436   * @throws AccessPoemException 
437   *         if the current <code>AccessToken</code> 
438   *         does not confer write access rights 
439   * @return the value of the field <code>Quantity</code> for this 
440   *         <code>ShopOrderItem</code> <code>Persistent</code>  
441   */
442 
443   public Integer getQuantity()
444       throws AccessPoemException {
445     readLock();
446     return getQuantity_unsafe();
447   }
448 
449 
450  /**
451   * Sets the <code>Quantity</code> value, with checking, for this 
452   * <code>ShopOrderItem</code> <code>Persistent</code>.
453   * 
454   * @generator org.melati.poem.prepro.AtomFieldDef#generateBaseMethods  
455   * @param cooked  a validated <code>int</code> 
456   * @throws AccessPoemException 
457   *         if the current <code>AccessToken</code> 
458   *         does not confer write access rights
459   * @throws ValidationPoemException 
460   *         if the value is not valid
461   */
462   public void setQuantity(Integer cooked)
463       throws AccessPoemException, ValidationPoemException {
464     _getShopOrderItemTable().getQuantityColumn().
465       getType().assertValidCooked(cooked);
466     writeLock();
467     setQuantity_unsafe(cooked);
468   }
469 
470  /**
471   * Sets the <code>Quantity</code> value, with checking, for this 
472   * <code>ShopOrderItem</code> <code>Persistent</code>.
473   * 
474   * @generator org.melati.poem.prepro.IntegerFieldDef#generateBaseMethods 
475   * @param cooked  a validated <code>int</code>
476   * @throws AccessPoemException 
477   *         if the current <code>AccessToken</code> 
478   *         does not confer write access rights
479   * @throws ValidationPoemException 
480   *         if the value is not valid
481   */
482 
483   public final void setQuantity(int cooked)
484       throws AccessPoemException, ValidationPoemException {
485     setQuantity(new Integer(cooked));
486   }
487 
488 
489  /**
490   * Retrieves the <code>Quantity</code> value as a <code>Field</code>
491   * from this <code>ShopOrderItem</code> <code>Persistent</code>.
492   * 
493   * @generator org.melati.poem.prepro.FieldDef#generateFieldCreator 
494   * @throws AccessPoemException 
495   *         if the current <code>AccessToken</code> 
496   *         does not confer write access rights
497   * @return the Integer quantity
498   */
499   public Field getQuantityField() throws AccessPoemException {
500     Column c = _getShopOrderItemTable().getQuantityColumn();
501     return new Field(c.getRaw(this), c);
502   }
503 
504 
505  /**
506   * Retrieves the <code>Order</code> value, without locking, 
507   * for this <code>ShopOrderItem</code> <code>Persistent</code>.
508   *
509   * @generator org.melati.poem.prepro.FieldDef#generateBaseMethods 
510   * @return the Integer order
511   */
512   public Integer getOrder_unsafe() {
513     return order;
514   }
515 
516 
517  /**
518   * Sets the <code>Order</code> value directly, without checking, 
519   * for this ShopOrderItem <code>Persistent</code>.
520   * 
521   * @generator org.melati.poem.prepro.FieldDef#generateBaseMethods 
522   * @param cooked  the pre-validated value to set
523   */
524   public void setOrder_unsafe(Integer cooked) {
525     order = cooked;
526   }
527 
528  /**
529   * Retrieves the Table Row Object ID. 
530   *
531   * @generator org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods 
532   * @throws AccessPoemException  
533   *         if the current <code>AccessToken</code> 
534   *         does not confer read access rights 
535   * @return the TROID as an <code>Integer</code> 
536   */
537 
538   public Integer getOrderTroid()
539       throws AccessPoemException {
540     readLock();
541     return getOrder_unsafe();
542   }
543 
544 
545  /**
546   * Sets the Table Row Object ID. 
547   * 
548   * @generator org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods 
549   * @param raw  a Table Row Object Id 
550   * @throws AccessPoemException  
551   *         if the current <code>AccessToken</code> 
552   *         does not confer write access rights
553   */
554   public void setOrderTroid(Integer raw)
555       throws AccessPoemException {
556     setOrder(raw == null ? null : 
557         getRimauresqDatabaseTables().getShopOrderTable().getShopOrderObject(raw));
558   }
559 
560 
561  /**
562   * Retrieves the <code>Order</code> object referred to.
563   *  
564   * @generator org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods 
565   * @throws AccessPoemException  
566   *         if the current <code>AccessToken</code> 
567   *         does not confer read access rights 
568   * @throws NoSuchRowPoemException  
569   *         if the <code>Persistent</code> has yet to be allocated a TROID 
570   * @return the <code>Order</code> as a <code>ShopOrder</code> 
571   */
572   public ShopOrder getOrder()
573       throws AccessPoemException, NoSuchRowPoemException {
574     Integer troid = getOrderTroid();
575     return troid == null ? null :
576         getRimauresqDatabaseTables().getShopOrderTable().getShopOrderObject(troid);
577   }
578 
579 
580  /**
581   * Set the Order.
582   * 
583   * @generator org.melati.poem.prepro.ReferenceFieldDef#generateBaseMethods 
584   * @param cooked  a validated <code>ShopOrder</code>
585   * @throws AccessPoemException  
586   *         if the current <code>AccessToken</code> 
587   *         does not confer write access rights 
588   */
589   public void setOrder(ShopOrder cooked)
590       throws AccessPoemException {
591     _getShopOrderItemTable().
592       getOrderColumn().
593         getType().assertValidCooked(cooked);
594     writeLock();
595     if (cooked == null)
596       setOrder_unsafe(null);
597     else {
598       cooked.existenceLock();
599       setOrder_unsafe(cooked.troid());
600     }
601   }
602 
603 
604  /**
605   * Retrieves the <code>Order</code> value as a <code>Field</code>
606   * from this <code>ShopOrderItem</code> <code>Persistent</code>.
607   * 
608   * @generator org.melati.poem.prepro.FieldDef#generateFieldCreator 
609   * @throws AccessPoemException 
610   *         if the current <code>AccessToken</code> 
611   *         does not confer write access rights
612   * @return the Integer order
613   */
614   public Field getOrderField() throws AccessPoemException {
615     Column c = _getShopOrderItemTable().getOrderColumn();
616     return new Field(c.getRaw(this), c);
617   }
618 
619 
620  /**
621   * Retrieves the <code>Amount</code> value, without locking, 
622   * for this <code>ShopOrderItem</code> <code>Persistent</code>.
623   *
624   * @generator org.melati.poem.prepro.FieldDef#generateBaseMethods 
625   * @return the Double amount
626   */
627   public Double getAmount_unsafe() {
628     return amount;
629   }
630 
631 
632  /**
633   * Sets the <code>Amount</code> value directly, without checking, 
634   * for this ShopOrderItem <code>Persistent</code>.
635   * 
636   * @generator org.melati.poem.prepro.FieldDef#generateBaseMethods 
637   * @param cooked  the pre-validated value to set
638   */
639   public void setAmount_unsafe(Double cooked) {
640     amount = cooked;
641   }
642 
643  /**
644   * Retrieves the Amount value, with locking, for this 
645   * <code>ShopOrderItem</code> <code>Persistent</code>.
646   * Field description: 
647   *   The amount of this line (in GBP) 
648   * 
649   * @generator org.melati.poem.prepro.AtomFieldDef#generateBaseMethods 
650   * @throws AccessPoemException 
651   *         if the current <code>AccessToken</code> 
652   *         does not confer write access rights 
653   * @return the value of the field <code>Amount</code> for this 
654   *         <code>ShopOrderItem</code> <code>Persistent</code>  
655   */
656 
657   public Double getAmount()
658       throws AccessPoemException {
659     readLock();
660     return getAmount_unsafe();
661   }
662 
663 
664  /**
665   * Sets the <code>Amount</code> value, with checking, for this 
666   * <code>ShopOrderItem</code> <code>Persistent</code>.
667   * Field description: 
668   *   The amount of this line (in GBP) 
669   * 
670   * @generator org.melati.poem.prepro.AtomFieldDef#generateBaseMethods  
671   * @param cooked  a validated <code>int</code> 
672   * @throws AccessPoemException 
673   *         if the current <code>AccessToken</code> 
674   *         does not confer write access rights
675   * @throws ValidationPoemException 
676   *         if the value is not valid
677   */
678   public void setAmount(Double cooked)
679       throws AccessPoemException, ValidationPoemException {
680     _getShopOrderItemTable().getAmountColumn().
681       getType().assertValidCooked(cooked);
682     writeLock();
683     setAmount_unsafe(cooked);
684   }
685 
686  /**
687   * Sets the <code>Amount</code> value, with checking, for this <code>ShopOrderItem</code> <code>Persistent</code>.
688   * Field description: 
689   *   The amount of this line (in GBP) 
690   * 
691   * 
692   * @generator org.melati.poem.prepro.DoubleFieldDef#generateBaseMethods 
693   * @param cooked  a validated <code>int</code> 
694   * @throws AccessPoemException 
695   *         if the current <code>AccessToken</code> 
696   *         does not confer write access rights
697   * @throws ValidationPoemException 
698   *         if the value is not valid
699   */
700 
701   public final void setAmount(double cooked)
702       throws AccessPoemException, ValidationPoemException {
703     setAmount(new Double(cooked));
704   }
705 
706 
707  /**
708   * Retrieves the <code>Amount</code> value as a <code>Field</code>
709   * from this <code>ShopOrderItem</code> <code>Persistent</code>.
710   * 
711   * @generator org.melati.poem.prepro.FieldDef#generateFieldCreator 
712   * @throws AccessPoemException 
713   *         if the current <code>AccessToken</code> 
714   *         does not confer write access rights
715   * @return the Double amount
716   */
717   public Field getAmountField() throws AccessPoemException {
718     Column c = _getShopOrderItemTable().getAmountColumn();
719     return new Field(c.getRaw(this), c);
720   }
721 }
722