From 8d5467c3f915b7fe1a0e845592f227ea072d57b5 Mon Sep 17 00:00:00 2001
From: Mauricio Giacomini Girardello <mgg12@inf.ufpr.br>
Date: Tue, 19 Jan 2016 11:43:06 -0200
Subject: [PATCH] remove save method from learning object repository and
 improve create method

---
 .../orient_db/learning_object_repository.rb   | 25 ++++++++++---------
 1 file changed, 13 insertions(+), 12 deletions(-)

diff --git a/app/repositories/orient_db/learning_object_repository.rb b/app/repositories/orient_db/learning_object_repository.rb
index 8311af5b..b4812b23 100644
--- a/app/repositories/orient_db/learning_object_repository.rb
+++ b/app/repositories/orient_db/learning_object_repository.rb
@@ -25,7 +25,6 @@ module OrientDb
 
     # Usage:
     #   learning_object = repository.for(:learning_objects).get_by_dspace_id 123
-    #
     def get_by_dspace_id(id_dspace)
       result = select_by_property(odb_class, "id_dspace", id_dspace)
       build_object result.first
@@ -58,17 +57,6 @@ module OrientDb
       attribute_repository.find_all_by_learning_object learning_object
     end
 
-    def create_relations(learning_object)
-      relations = OrientDb::LearningObject::RelationsChain.new(learning_object, connection)
-      relations.create
-    end
-
-    def save(learning_object)
-      if learning_object.valid?
-        connection.command "INSERT INTO LearningObject CONTENT #{learning_object.to_json}"
-      end
-    end
-
     def types
       Rails.cache.fetch("learning_object/types", expires_in: 1.days) do
         query = "SELECT DISTINCT(type) FROM LearningObject GROUP BY type"
@@ -80,5 +68,18 @@ module OrientDb
       end
     end
 
+    def create(object)
+      super(object)
+      create_relations object
+      object
+    end
+
+    private
+
+    def create_relations(learning_object)
+      relations = OrientDb::Associations::LearningObjectAssociations.new(learning_object, connection)
+      relations.create
+    end
+
   end
 end
-- 
GitLab