diff variant_effect_predictor/Bio/EnsEMBL/Variation/Pipeline/FinishVariationClass.pm @ 0:1f6dce3d34e0

Uploaded
author mahtabm
date Thu, 11 Apr 2013 02:01:53 -0400
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/variant_effect_predictor/Bio/EnsEMBL/Variation/Pipeline/FinishVariationClass.pm	Thu Apr 11 02:01:53 2013 -0400
@@ -0,0 +1,43 @@
+package Bio::EnsEMBL::Variation::Pipeline::FinishVariationClass;
+
+use strict;
+use warnings;
+
+use base qw(Bio::EnsEMBL::Variation::Pipeline::BaseVariationProcess);
+
+my $DEBUG = 0;
+
+sub run {
+    my $self = shift;
+    
+    my $temp_var_table = $self->required_param('temp_var_table');
+    
+    my $temp_var_feat_table = $self->required_param('temp_var_feat_table');
+  
+    my $var_dba = $self->get_species_adaptor('variation');
+    
+    my $dbc = $var_dba->dbc;
+    
+    # copy the attribs across to the real tables
+
+    $dbc->do(qq{
+        UPDATE  variation_feature vf, $temp_var_feat_table tvf
+        SET     vf.class_attrib_id = tvf.class_attrib_id
+        WHERE   vf.variation_feature_id = tvf.variation_feature_id
+    });
+
+    $dbc->do(qq{
+        UPDATE  variation v, $temp_var_table tv
+        SET     v.class_attrib_id = tv.class_attrib_id
+        WHERE   v.variation_id = tv.variation_id
+    });
+    
+    # and get rid of the temp tables
+    $dbc->do(qq{DROP TABLE $temp_var_table});
+    $dbc->do(qq{DROP TABLE $temp_var_feat_table});
+    
+    return;
+}
+
+1;
+