From 0020e62ec8d5e85241b6372a3940114e40825700 Mon Sep 17 00:00:00 2001
From: Mauricio Giacomini Girardello <mauriciogiacomini4@gmail.com>
Date: Tue, 17 Nov 2015 11:46:49 -0200
Subject: [PATCH] fixing missing connection dependecy injection

---
 app/repositories/orient_db/learning_object/relation.rb      | 3 ++-
 .../orient_db/learning_object/relations_chain.rb            | 6 +++---
 app/repositories/orient_db/relation.rb                      | 4 +++-
 app/repositories/orient_db/relation_chain.rb                | 5 +++--
 app/repositories/orient_db/subject/relation.rb              | 3 ++-
 app/repositories/orient_db/subject/relations_chain.rb       | 4 ++--
 6 files changed, 15 insertions(+), 10 deletions(-)

diff --git a/app/repositories/orient_db/learning_object/relation.rb b/app/repositories/orient_db/learning_object/relation.rb
index f56115f8..a80bb397 100644
--- a/app/repositories/orient_db/learning_object/relation.rb
+++ b/app/repositories/orient_db/learning_object/relation.rb
@@ -3,8 +3,9 @@ module OrientDb
     class Relation < OrientDb::Relation
       include OrientDb::Methods::EdgeMethods
 
-      def initialize(learning_object)
+      def initialize(learning_object, connection)
         @learning_object = learning_object
+        @connection = connection
       end
 
     end
diff --git a/app/repositories/orient_db/learning_object/relations_chain.rb b/app/repositories/orient_db/learning_object/relations_chain.rb
index c5aa198d..6f6726b0 100644
--- a/app/repositories/orient_db/learning_object/relations_chain.rb
+++ b/app/repositories/orient_db/learning_object/relations_chain.rb
@@ -4,9 +4,9 @@ module OrientDb
 
       def relations
         [
-            OrientDb::LearningObject::SubjectsRelations.new(object),
-            OrientDb::LearningObject::AttributesRelations.new(object),
-            OrientDb::LearningObject::PublisherRelation.new(object)
+            OrientDb::LearningObject::SubjectsRelations.new(object, connection),
+            OrientDb::LearningObject::AttributesRelations.new(object, connection),
+            OrientDb::LearningObject::PublisherRelation.new(object, connection)
         ]
       end
 
diff --git a/app/repositories/orient_db/relation.rb b/app/repositories/orient_db/relation.rb
index 2d2bbcba..e13dc2fc 100644
--- a/app/repositories/orient_db/relation.rb
+++ b/app/repositories/orient_db/relation.rb
@@ -2,7 +2,7 @@ module OrientDb
 
   ##abstract class Relation
   class Relation
-    
+
     def can_create?
       raise NotImplementedError, 'Relation#can_execute? is an abstract method.'
     end
@@ -13,6 +13,8 @@ module OrientDb
 
     protected
 
+    attr_accessor :connection
+
     def execute
       raise NotImplementedError, 'Relation#execute is an abstract method.'
     end
diff --git a/app/repositories/orient_db/relation_chain.rb b/app/repositories/orient_db/relation_chain.rb
index 28f04db1..fae4ba62 100644
--- a/app/repositories/orient_db/relation_chain.rb
+++ b/app/repositories/orient_db/relation_chain.rb
@@ -1,9 +1,10 @@
 module OrientDb
   class RelationChain
-    attr_reader :object
+    attr_reader :object, :connection
 
-    def initialize(object)
+    def initialize(object, connection)
       @object = object
+      @connection = connection
     end
 
     def create
diff --git a/app/repositories/orient_db/subject/relation.rb b/app/repositories/orient_db/subject/relation.rb
index df88a69c..9dad6a50 100644
--- a/app/repositories/orient_db/subject/relation.rb
+++ b/app/repositories/orient_db/subject/relation.rb
@@ -3,8 +3,9 @@ module OrientDb
     class Relation < OrientDb::Relation
       include OrientDb::Methods::EdgeMethods
 
-      def initialize(subject)
+      def initialize(subject, connection)
         @subject = subject
+        @connection = connection
       end
 
     end
diff --git a/app/repositories/orient_db/subject/relations_chain.rb b/app/repositories/orient_db/subject/relations_chain.rb
index 3ef3ba94..fb26cf89 100644
--- a/app/repositories/orient_db/subject/relations_chain.rb
+++ b/app/repositories/orient_db/subject/relations_chain.rb
@@ -4,8 +4,8 @@ module OrientDb
 
       def relations
         [
-            OrientDb::Subject::SubtopicsRelations.new(object),
-            OrientDb::Subject::SupertopicsRelations.new(object)
+            OrientDb::Subject::SubtopicsRelations.new(object, connection),
+            OrientDb::Subject::SupertopicsRelations.new(object, connection)
         ]
       end
 
-- 
GitLab