Changeset 365

Show
Ignore:
Timestamp:
03/17/09 18:48:41 (9 years ago)
Author:
samuraraujo
Message:
 
Files:
1 modified

Legend:

Unmodified
Added
Removed
  • Explorator/trunk/vendor/plugins/activerdf_sparql-1.3.6/lib/activerdf_sparql/sparql.rb

    r358 r365  
    3131    @reads = true 
    3232    @writes = false 
    33      @title =params[:title]  
     33    @title =params[:title]  
    3434    @url = params[:url] || '' 
    3535    @caching = params[:caching] || false 
     
    4040    raise ActiveRdfError, "Result format unsupported" unless [:xml, :json, :sparql_xml].include? @result_format 
    4141     
    42     @engine = params[:engine] 
    43     raise ActiveRdfError, "SPARQL engine unsupported" unless [:yars2, :sesame2, :joseki, :virtuoso].include? @engine 
     42     
     43     @engine = params[:engine] 
     44    if @engine == nil 
     45      response = Net::HTTP.get_response(URI.parse(@url))     
     46      if  response['server'].to_s.downcase.index('virtuoso') != nil   
     47        @engine = :virtuoso  
     48      else 
     49        @engine = :sesame2  
     50      end 
     51    end  
     52     raise ActiveRdfError, "SPARQL engine unsupported" unless [:yars2, :sesame2, :joseki, :virtuoso].include? @engine 
    4453     
    4554    @request_method = params[:request_method] || :get 
     
    5564  def query(query, &block)     
    5665    qs = Query2SPARQL.translate(query,@engine) 
    57   puts qs.to_s 
     66    puts qs.to_s 
    5867    if @caching 
    5968      result = query_cache(qs) 
     
    6574      end 
    6675    end 
    67     
     76     
    6877    result = execute_sparql_query(qs, header(query), &block) 
    6978    add_to_cache(qs, result) if @caching 
    7079    result = [] if result == "timeout" 
    71  
     80     
    7281    return result 
    7382  end 
     
    91100          open(url, header) do |f|             
    92101            response = f.read    
    93 #              puts response 
     102            #              puts response 
    94103          end 
    95104        end