diff --git a/engines/dfc_provider/app/controllers/dfc_provider/supplied_products_controller.rb b/engines/dfc_provider/app/controllers/dfc_provider/supplied_products_controller.rb index 4edcbf19c3..e4daf3155f 100644 --- a/engines/dfc_provider/app/controllers/dfc_provider/supplied_products_controller.rb +++ b/engines/dfc_provider/app/controllers/dfc_provider/supplied_products_controller.rb @@ -43,7 +43,7 @@ module DfcProvider private def import - DfcLoader.connector.import(request.body) + DfcIo.import(request.body) end def variant diff --git a/engines/dfc_provider/app/services/dfc_io.rb b/engines/dfc_provider/app/services/dfc_io.rb index 238bb0abca..2457eb4a46 100644 --- a/engines/dfc_provider/app/services/dfc_io.rb +++ b/engines/dfc_provider/app/services/dfc_io.rb @@ -1,5 +1,8 @@ # frozen_string_literal: true +# Load our monkey-patches: +require "data_food_consortium/connector/connector" + # Our interface to the DFC Connector library. module DfcIo # Serialise DFC Connector subjects as JSON-LD string. @@ -8,4 +11,8 @@ module DfcIo DfcLoader.connector.export(*subjects) end + + def self.import(json_string_or_io) + DfcLoader.connector.import(json_string_or_io) + end end diff --git a/lib/data_food_consortium/connector/connector.rb b/lib/data_food_consortium/connector/connector.rb index 70f6733b3d..fd480f4fb6 100644 --- a/lib/data_food_consortium/connector/connector.rb +++ b/lib/data_food_consortium/connector/connector.rb @@ -1,7 +1,11 @@ # frozen_string_literal: true -require_relative "context" +# Load the original library first: +require "datafoodconsortium/connector" + +# Then our tools for monky-patching: require_relative "importer" +require_relative "context" module DataFoodConsortium module Connector