diff options
author | mguetlein <martin.guetlein@gmail.com> | 2011-02-08 08:57:31 +0100 |
---|---|---|
committer | mguetlein <martin.guetlein@gmail.com> | 2011-02-08 08:57:31 +0100 |
commit | c37cc91893457cb91ddb2a32b9ac76090bd6c521 (patch) | |
tree | 529f6465f8f431c42e03140b2f6ccfe2ac5c149d /lib/parser.rb | |
parent | 281a0bade2ca1d1bb040c54704650b69f6da24a5 (diff) |
not using rapper directly, use rest client and tmp-file
Diffstat (limited to 'lib/parser.rb')
-rw-r--r-- | lib/parser.rb | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/lib/parser.rb b/lib/parser.rb index e055eec..27dfeee 100644 --- a/lib/parser.rb +++ b/lib/parser.rb @@ -35,10 +35,18 @@ module OpenTox else uri = @uri end - uri += "?subjectid=#{CGI.escape(subjectid)}" if subjectid + # avoid using rapper directly because of 2 reasons: + # * http errors wont be noticed + # * subjectid cannot be sent as header + ##uri += "?subjectid=#{CGI.escape(subjectid)}" if subjectid + ## `rapper -i rdfxml -o ntriples #{uri} 2>/dev/null`.each_line do |line| + file = Tempfile.new("ot-rdfxml") + file.puts OpenTox::RestClientWrapper.get @uri,{:subjectid => subjectid,:accept => "application/rdf+xml"} + file.close + file = "file://"+file.path statements = [] parameter_ids = [] - `rapper -i rdfxml -o ntriples #{uri} 2>/dev/null`.each_line do |line| + `rapper -i rdfxml -o ntriples #{file} 2>/dev/null`.each_line do |line| triple = line.to_triple @metadata[triple[1]] = triple[2].split('^^').first if triple[0] == @uri and triple[1] != RDF['type'] statements << triple |