Ignore:
Timestamp:
Jan 28, 2011, 12:30:39 PM (8 years ago)
Author:
robert@…
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/grails-app/services/nl/tno/metagenomics/integration/TrashService.groovy

    r7 r9  
    1919               
    2020                def l = []
    21                 l += study.auth
    22                
    23                 l.each { auth ->
    24                         auth.user.removeFromAuth( auth );
    25                         study.removeFromAuth( auth );
     21                if( study.auth ) {
     22                        l += study.auth
     23                       
     24                        l.each { auth ->
     25                                auth.user?.removeFromAuth( auth );
     26                                study.removeFromAuth( auth );
     27                        }
    2628                }
    2729               
     
    5052               
    5153                l = []
    52                 l += assay.assaySamples
    53                
    54                 l.each {
    55                         it.sample.removeFromAssaySamples( it );
    56                         assay.removeFromAssaySamples( it );
     54                if( assay.assaySamples ) {
     55                        l += assay.assaySamples
     56                       
     57                        l.each {
     58                                it.sample.removeFromAssaySamples( it );
     59                                assay.removeFromAssaySamples( it );
     60                        }
    5761                }
    5862
     
    6165                        study.removeFromAssays( assay );
    6266                }
    63                
    64                 /*
    65                 def assaySamples = assay.assaySamples.toList();
    66                 assaySamples.each {
    67                         it.assay = null
    68 
    69                         assay.removeFromAssaySamples( it );
    70                         it.sample.removeFromAssaySamples( it );
    71                         it.sample = null;
    72                         it.delete( flush: true );
    73                 }
    74 
    75                 assay.study.removeFromAssays( assay );
    76                 assay.study.save();
    77                 //assay.study = null
    78                 //assay.delete(flush:true);
    79                  */
    8067        }
    8168
     
    8976                // Remove associations
    9077                def l = []
    91                 l += sample.assaySamples
    92                
    93                 l.each {
    94                         it.assay.removeFromAssaySamples( it );
    95                         sample.removeFromAssaySamples( it );
     78                if( sample.assaySamples ) {
     79                        l += sample.assaySamples
     80                       
     81                        l.each {
     82                                it.assay.removeFromAssaySamples( it );
     83                                sample.removeFromAssaySamples( it );
     84                        }
    9685                }
    9786               
     
    122111           
    123112           def l = []
    124            l += assaySample.sequenceData
    125            
    126            l.each {
    127                    if( it ) {
    128                                 assaySample.removeFromSequenceData( it );
     113           if( assaySample.sequenceData ) {
     114                   l += assaySample.sequenceData
     115                   
     116                   l.each {
     117                           if( it ) {
     118                                        assaySample.removeFromSequenceData( it );
     119                           }
    129120                   }
    130121           }
     
    181172                                // Create dummy sample
    182173                                String newSampleToken = 'TrashSample ' + new Date().format( 'yyyyMMddHHmmssSSS') + ( Math.random() * 10000 );
    183                                 Sample dummySample = new Sample( sampleToken: newSampleToken, name: sample.name, study: trashcan );
     174                                Sample dummySample = Sample.cloneSample( sample, newSampleToken, trashcan );
    184175                                trashcan.addToSamples( dummySample );
    185176                                dummySample.save()
     
    218209                        // Create dummy sample
    219210                        String newSampleToken = 'TrashSample ' + new Date().format( 'yyyyMMddHHmmssSSS') + ( Math.random() * 10000 );
    220                         Sample dummySample = new Sample( sampleToken: newSampleToken, name: sample.name, study: trashcan );
     211                        Sample dummySample = Sample.cloneSample( sample, newSampleToken, trashcan );
    221212                        trashcan.addToSamples( dummySample );
    222213                        dummySample.save()
     
    264255                   // Create dummy sample
    265256                   String newSampleToken = 'TrashSample ' + new Date().format( 'yyyyMMddHHmmssSSS') + ( Math.random() * 10000 );
    266                    Sample dummySample = new Sample( sampleToken: newSampleToken, name: assaySample.sample.name, study: trashcan );
     257                   Sample dummySample = Sample.cloneSample( assaySample.sample, newSampleToken, trashcan );
    267258                   trashcan.addToSamples( dummySample );
    268259                   dummySample.save()
     
    336327                                        for( def j = numSamples - 1; j >= 0; j-- ) {
    337328                                                def s = sampleList[ j ];
    338                                                 if( !s.tagSequence && !s.oligoNumber && s.numSequences() == 0 ) {
     329                                                if( !s.containsData() ) {
    339330                                                        assayList[ i ].removeFromAssaySamples( s );
    340331                                                        s.sample?.delete();
Note: See TracChangeset for help on using the changeset viewer.