Changeset 1284 for trunk/grails-app/domain
- Timestamp:
- Dec 20, 2010, 3:48:26 PM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/grails-app/domain/dbnp/studycapturing/TemplateEntity.groovy
r1264 r1284 22 22 23 23 // Maps for storing the different template field values 24 Map templateStringFields = [:]25 Map templateTextFields = [:]26 Map templateStringListFields = [:]27 Map templateDoubleFields = [:]28 Map templateDateFields = [:]29 Map templateBooleanFields = [:]30 Map templateTemplateFields = [:]31 Map templateModuleFields = [:]32 Map templateLongFields = [:]24 Map templateStringFields = [:] 25 Map templateTextFields = [:] 26 Map templateStringListFields = [:] 27 Map templateDoubleFields = [:] 28 Map templateDateFields = [:] 29 Map templateBooleanFields = [:] 30 Map templateTemplateFields = [:] 31 Map templateModuleFields = [:] 32 Map templateLongFields = [:] 33 33 34 34 // N.B. If you try to set Long.MIN_VALUE for a reltime field, an error will occur 35 35 // However, this will never occur in practice: this value represents 3 bilion centuries 36 Map templateRelTimeFields = [:] // Contains relative times in seconds37 Map templateFileFields = [:] // Contains filenames38 Map templateTermFields = [:]36 Map templateRelTimeFields = [:] // Contains relative times in seconds 37 Map templateFileFields = [:] // Contains filenames 38 Map templateTermFields = [:] 39 39 40 40 // define relationships 41 41 static hasMany = [ 42 templateStringFields : String,43 templateTextFields : String,44 templateStringListFields : TemplateFieldListItem,45 templateDoubleFields : double,46 templateDateFields : Date,47 templateTermFields : Term,48 templateRelTimeFields : long,49 templateFileFields : String,50 templateBooleanFields : boolean,51 templateTemplateFields : Template,52 templateModuleFields : AssayModule,53 templateLongFields : long,54 systemFields : TemplateField42 templateStringFields : String, 43 templateTextFields : String, 44 templateStringListFields : TemplateFieldListItem, 45 templateDoubleFields : double, 46 templateDateFields : Date, 47 templateTermFields : Term, 48 templateRelTimeFields : long, 49 templateFileFields : String, 50 templateBooleanFields : boolean, 51 templateTemplateFields : Template, 52 templateModuleFields : AssayModule, 53 templateLongFields : long, 54 systemFields : TemplateField 55 55 ] 56 56 … … 58 58 // so we can validate is the required 59 59 // template fields are set 60 boolean requiredFieldsSet = false61 Set requiredFields = []60 Template requiredFieldsTemplate = null 61 Set requiredFields = [] 62 62 63 63 /** … … 74 74 */ 75 75 final Set getRequiredFields() { 76 if (template) { 77 // template is set, check if required fields 78 // have already been fetched 79 if (!requiredFieldsSet) { 80 // no, fetch required fields 81 requiredFields = template.getRequiredFields() 82 requiredFieldsSet = true 83 } 84 85 // return the required fields 86 return requiredFields 87 } else { 88 // template is not yet set, return 89 // an empty set 90 return [] 91 } 92 } 93 94 // overload transients from Identity 95 // and append requiredFields vars 96 static transients = [ "identifier", "iterator", "maximumIdentity", "requiredFieldsSet", "requiredFields" ] 76 // check if template is set 77 if (template && !template.equals(requiredFieldsTemplate)) { 78 // template has been set or was changed, fetch 79 // required fields for this template 80 requiredFields = template.getRequiredFields() 81 requiredFieldsTemplate = template 82 } else if (!template) { 83 // template is not yet set, or was reset 84 requiredFieldsTemplate = null 85 requiredFields = [] 86 } 87 88 89 // return the required fields 90 return requiredFields 91 } 92 93 // overload transients from Identity and append requiredFields vars 94 static transients = [ "identifier", "iterator", "maximumIdentity", "requiredFields", "requiredFieldsTemplate" ] 97 95 98 96 // define the mapping
Note: See TracChangeset
for help on using the changeset viewer.