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