source: trunk/grails-app/domain/dbnp/studycapturing/Template.groovy @ 176

Last change on this file since 176 was 176, checked in by keesvb, 12 years ago

added first version of importer data model, added helper methods to domain class for getting all entity fields, added study template fields

  • Property svn:keywords set to
    Date
    Author
    Rev
File size: 1005 bytes
Line 
1package dbnp.studycapturing
2
3/**
4 * The Template class describes a study template, which is basically an extension of the study capture entities
5 * in terms of extra fields (described by classes that extend the TemplateField class).
6 * At this moment, only extension of the subject entity is implemented.
7 *
8 * Revision information:
9 * $Rev: 176 $
10 * $Author: keesvb $
11 * $Date: 2010-02-08 11:42:46 +0000 (ma, 08 feb 2010) $
12 */
13class Template implements Serializable {
14        String name
15        //nimble.User owner
16
17        static hasMany = [studyFields: TemplateStudyField, subjectFields: TemplateSubjectField]
18
19        static constraints = {
20                name(unique: true)
21        }
22
23        def String toString() {
24                return this.name;
25        }
26
27        /**
28         * Look up the type of a certain template subject field
29         * @param fieldName The name of the template field
30         * @return The type (static member of TemplateFieldType) of the field, or null of the field does not exist
31         */
32        def TemplateFieldType getSubjectFieldType(String fieldName) {
33                def field = subjectFields.find {
34                        it.name == fieldName   
35                }
36                field?.type
37        }
38}
Note: See TracBrowser for help on using the repository browser.