def fetch_and_cache_graph(rdf_url)
      begin
        graph = RDF::Graph.load(rdf_url)
        store(graph)
        graph
      rescue TriplestoreAdapter::TriplestoreException => tse
        puts "[ERROR] *****\n[ERROR] Unable to store graph in triplestore cache! Returning graph fetched from source.\n[ERROR] *****\n#{tse.message}"
        graph
      rescue => e
        raise TriplestoreAdapter::TriplestoreException, "fetch_and_cache_graph(#{rdf_url}) failed to load the graph with exception: #{e.message}"
      end
    end
def fetch_and_cache_graph(rdf_url)
      begin
        graph = RDF::Graph.load(rdf_url)
        store(graph)
        graph
      rescue TriplestoreAdapter::TriplestoreException => tse
        puts "[ERROR] *****\n[ERROR] Unable to store graph in triplestore cache! Returning graph fetched from source.\n[ERROR] *****\n#{tse.message}"
        graph
      rescue => e
        raise TriplestoreAdapter::TriplestoreException, "fetch_and_cache_graph(#{rdf_url}) failed to load the graph with exception: #{e.message}"
      end
    end
Fetch the graph from the source URL, and cache it for future use

 @private
 @param [String] url
 @return [RDF::Graph] if a graph is found
 @raise [Exception] if fetching the graph failed