Changeset 181


Ignore:
Timestamp:
Nov 10, 2010, 10:09:57 AM (6 years ago)
Author:
adem.bilican@…
Message:

adding file error handling

Location:
grails-app/controllers/importer
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • grails-app/controllers/importer/ImporterController.groovy

    r178 r181  
    186186                // there is a file
    187187                else if ((tabbedTable.replaceAll("^\\s+", "").size() == 0) && (params['file'] != "null" )) {
    188                     flow.tabDelimitedString = fileService.get(params['file'])
    189                     flow.file = params['file']
    190                     success()
     188                    try {
     189                        flow.tabDelimitedString = fileService.get(params['file'])
     190                        flow.file = params['file']
     191                        success()
     192                    }
     193                    catch (Exception e){
     194                        fileService.delete(params['file'])
     195                        flash.errors = "File Error : Please check the file integrity. It should be an Excel sheet."
     196                        error()
     197                    }
    191198                }
    192199                // catch error if there is nothing to do
     
    283290                def studySubjects = []
    284291                for (subject in CommunicationManager
    285                                                 .getSubjects( session.sessionToken, flow.selectedStudyID.toString() )){
     292                    .getSubjects( session.sessionToken, flow.selectedStudyID.toString() )){
    286293                    studySubjects.add(subject)
    287294                }
     
    852859        for (i in 0..params['name'].size()-1){
    853860            def subAssay = new SimpleAssayMeasurementType(
    854                     name: params['name'].getAt(i),
    855                     unit: params['unit'].getAt(i),
    856                     detectableLimit: params['limit'].getAt(i).toDouble()
    857                 )
    858                 subAssay.save(flush:true)
    859                 flow.measurementTypes.add(subAssay.name)
     861                name: params['name'].getAt(i),
     862                unit: params['unit'].getAt(i),
     863                detectableLimit: params['limit'].getAt(i).toDouble()
     864            )
     865            subAssay.save(flush:true)
     866            flow.measurementTypes.add(subAssay.name)
    860867        }
    861868    }
     
    920927
    921928
    922         def test = {
    923                 render params
    924                 render session.sessionToken
    925                 render '<br>'
    926                 CommunicationManager.metaClass.getMethods().each {render it.toString() + '<br>'}
    927                 render '<br>'
    928                 render '<br>'
    929                 render '<br>'
    930                 try {
    931                 render CommunicationManager.getStudies( session.sessionToken )
    932                 } catch (Exception e) { println e }
    933         }
     929    def test = {
     930        render params
     931        render session.sessionToken
     932        render '<br>'
     933        CommunicationManager.metaClass.getMethods().each {render it.toString() + '<br>'}
     934        render '<br>'
     935        render '<br>'
     936        render '<br>'
     937        try {
     938            render CommunicationManager.getStudies( session.sessionToken )
     939        } catch (Exception e) { println e }
     940    }
    934941
    935942}
  • grails-app/controllers/importer/MeasurementTypeImporterController.groovy

    r161 r181  
    7171                // there is a file
    7272                else if ((tabbedTable.replaceAll("^\\s+", "").size() == 0) && (params['file'] != "null" )) {
    73 //                    try{
    74                         this.parseData(ImporterService, fileService.get(params['file']) ,flow)
     73                    try{
     74                        this.parseData(ImporterService, fileService.get(params['file']) ,flow,flash)
    7575                        flow.file = params['file']
    7676                        success()
    77 //                    }
    78 //                    catch (Exception e){
    79 //                        flash.errors = "File Error : Please check the file integrity"
    80 //                        error()
    81 //                    }
     77                    }
     78                    catch (Exception e){
     79                        fileService.delete(params['file'])
     80                        flash.errors = "File Error : Please check the file integrity. It should be an Excel sheet."
     81                        error()
     82                    }
    8283                }
    8384                // catch error if there is nothing to do
     
    129130     * parseData will parse the pasted tab-delimited data
    130131     */
    131     def parseData(ImporterService, tabDelimited, flow){
     132    def parseData(ImporterService, tabDelimited, flow,flash){
    132133        def headersList= []
    133134        def datamatrix = []
    134         def wb = getWorkBook(tabDelimited)
     135        def wb = getWorkBook(tabDelimited,flash)
    135136        // getHeader contains information about headers
    136137        for (header in ImporterService.getHeader(wb, 0)){
     
    156157     *
    157158     */
    158     private Workbook getWorkBook( tabbed ) {
     159    private Workbook getWorkBook( tabbed ,flash) {
    159160        def wb
    160161        if (tabbed instanceof File) {
Note: See TracChangeset for help on using the changeset viewer.