Changeset 414 for trunk/grails-app/domain
- Timestamp:
- May 12, 2010, 12:12:33 PM (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/grails-app/domain/dbnp/studycapturing/TemplateEntity.groovy
r413 r414 320 320 */ 321 321 def setFieldValue(String fieldName, value) { 322 322 // get the template field 323 323 TemplateField field = getField(this.giveFields(),fieldName) 324 324 … … 332 332 } 333 333 334 // Conveniencesetter for dates: handle string values for date fields334 // Magic setter for dates: handle string values for date fields 335 335 if (field.type == TemplateFieldType.DATE && value && value.class == String) { 336 336 // a string was given, attempt to transform it into a date instance … … 351 351 } 352 352 353 // Magic setter for ontology terms: handle string values 354 if (field.type == TemplateFieldType.ONTOLOGYTERM && value && value.class == String) { 355 // iterate through ontologies and find term 356 field.ontologies.each() { ontology -> 357 def term = ontology.giveTermByName(value) 358 359 // found a term? 360 if (term) { 361 value = term 362 } 363 } 364 } 365 353 366 // Set the field value 354 367 if (isDomainField(field)) { 355 if (!value) { 368 // got a value? 369 if (value) { 370 println "setting [" + ((super) ? super.class : '??') + "] domain field: [" + fieldName + "] ([" + value.toString() + "] of type [" + value.class + "])" 371 372 // set value 373 this[field.name] = value 374 } else { 356 375 println "removing [" + ((super) ? super.class : '??') + "] domain field: [" + fieldName + "]" 357 376 358 377 // remove value 359 378 this[field.name] = null 360 } else {361 println "setting [" + ((super) ? super.class : '??') + "] domain field: [" + fieldName + "] ([" + value.toString() + "] of type [" + value.class + "])"362 363 // set value364 this[field.name] = value365 379 } 366 380 } else { … … 386 400 /** 387 401 * Check if a given field is a domain field 388 * @param field402 * @param TemplateField field instance 389 403 * @return boolean 390 404 */ … … 393 407 } 394 408 395 boolean isDomainField(String fieldName) { 409 /** 410 * Check if a given field is a domain field 411 * @param String field name 412 * @return boolean 413 */ boolean isDomainField(String fieldName) { 396 414 return this.giveDomainFields()*.name.contains(fieldName) 397 415 }
Note: See TracChangeset
for help on using the changeset viewer.