Changeset 350
- Timestamp:
- Apr 19, 2010, 3:45:35 PM (14 years ago)
- Location:
- trunk/grails-app
- Files:
-
- 5 deleted
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/grails-app/controllers/dbnp/studycapturing/WizardController.groovy
r349 r350 241 241 //params.classification = Term.findByName(params.classification) 242 242 243 /* TODO: rewrite to Event template 244 243 245 // fetch protocol by name (as posted by the form) 244 246 params.protocol = Protocol.findByName(params.protocol) … … 246 248 // transform checkbox form value to boolean 247 249 params.isSamplingEvent = (params.containsKey('isSamplingEvent')) 250 248 251 249 252 // instantiate EventDescription with parameters … … 262 265 error() 263 266 } 267 268 */ 264 269 }.to "eventDescriptions" 265 270 on("delete") { 266 271 def delete = params.get('do') as int; 267 272 273 /* TODO: rewrite to Event template 274 268 275 // handle form data 269 276 if (!this.handleEventDescriptions(flow, flash, params)) { … … 285 292 flow.eventDescriptions.remove(delete) 286 293 } 294 295 */ 287 296 }.to "eventDescriptions" 288 297 on("previous") { -
trunk/grails-app/domain/dbnp/data/Ontology.groovy
r299 r350 4 4 * This class describes an existing ontology, of which terms can be stored (actually 'cached' would be a better description) 5 5 * in the (global) Term store. 6 * This information is mapped from the BioPortal NCBO REST service, e.g.: http://rest.bioontology.org/bioportal/ontologies/38802 7 * @see http://www.bioontology.org/wiki/index.php/NCBO_REST_services 6 8 * 7 9 * Revision information: … … 11 13 */ 12 14 class Ontology implements Serializable { 13 String name 14 String shortName 15 String url 15 String name // BioPortal: displayLabel 16 String description // BioPortal: description 17 String url // BioPortal: homepage 18 String versionNumber // BioPortal: versionNumber 19 int ncboId // BioPortal: ontologyId 20 int ncboVersionedId // BioPortal: id 16 21 } -
trunk/grails-app/domain/dbnp/data/Term.groovy
r306 r350 7 7 * The Term object should point to an existing term in an online ontology, therefore instances of this class can also 8 8 * be seen as a cache of elements of the external ontology. 9 * BioPortal example: Mus musculus: http://rest.bioontology.org/bioportal/concepts/38802/NCBITaxon:10090 9 10 * 10 11 * Revision information: … … 15 16 class Term implements Serializable { 16 17 static searchable = true 17 String name 18 Ontology ontology 19 String accession 18 19 String name // BioPortal: label (preferred name) 20 Ontology ontology // Parent ontology 21 String accession // BioPortal: fullId 20 22 21 23 static constraints = { 24 accession(unique: 'ontology') 22 25 } 23 26 … … 26 29 } 27 30 28 29 /*30 * Very scary behaviour... commenting this code out. Refactor31 * your code that relies on this by using something like32 * Term.findByName( string ) instead...33 *34 * Jeroen 2010032335 *36 37 // Covenenice method for delivering Terms.38 // if the term is already defined, use it.39 // otherwise, create it and return it.40 // should be removed when ontologies work.41 static getTerm( string ) {42 def term = Term.find("from Term as t where t.name = '${string}'")43 if( term==null ) { term = new Term()44 term.name=string45 term.ontology = Ontology.find('from Ontology as o')46 term.accession = ''47 if( !term.save(flush:true) ) {48 term.errors.each{ println it }49 }50 }51 return term52 }53 54 *55 */56 31 } -
trunk/grails-app/services/dbnp/importer/ImporterService.groovy
r334 r350 19 19 import org.apache.poi.poifs.filesystem.POIFSFileSystem 20 20 import org.apache.poi.ss.usermodel.DataFormatter 21 import org.apache.poi.hssf.usermodel.HSSFDateUtil 21 22 22 import dbnp.studycapturing.TemplateFieldType 23 23 import dbnp.studycapturing.Template … … 25 25 import dbnp.studycapturing.Subject 26 26 import dbnp.studycapturing.Event 27 import dbnp.studycapturing.Protocol 27 28 28 import dbnp.studycapturing.Sample 29 29 30 import dbnp.data.Ontology31 30 import dbnp.data.Term 32 31 … … 223 222 persistEntity(entity) 224 223 break 225 case Protocol: print "Persisting Protocol `" + entity.name + "`: "226 persistEntity(entity)227 break228 224 case Sample : print "Persisting Sample `" + entity.name +"`: " 229 225 persistEntity(entity) … … 264 260 def subject = new Subject(name:"New subject", species:Term.findByName("Homo sapiens"), template:template) 265 261 def event = new Event(eventdescription:"New event", template:template) 266 def protocol = new Protocol(name:"New protocol", template:template)267 262 def sample = new Sample(name:"New sample", template:template) 268 263 … … 283 278 if (mc.identifier) { event.eventdescription = value; break } 284 279 event.setFieldValue(mc.property.name, value) 285 break286 case Protocol : (record.any {it.getClass()==mc.entity}) ? 0 : record.add(protocol)287 if (mc.identifier) { protocol.name = value; break }288 protocol.setFieldValue(mc.property.name, value)289 280 break 290 281 case Sample : (record.any {it.getClass()==mc.entity}) ? record.add(sample) : 0
Note: See TracChangeset
for help on using the changeset viewer.