rdf-sesame 3.0.1 → 3.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f05b6d47318fbb72fc0b23fc39ecbc284a77bcc7
4
- data.tar.gz: 4fdfc60cdc422cfe0b419eed3150beb29881e646
3
+ metadata.gz: 81e945bdae025d02344f1f922d0a8198d496a8a6
4
+ data.tar.gz: 231f50e659948ba540ce310cf0049c09439cd4fe
5
5
  SHA512:
6
- metadata.gz: ed8b957c75380bef0b2be6c38974785321b00da5c9e4c41729b8928b0db733792ae66ec53725fcd8242017232810638e0e0c3df322e185932d8cece16169a0cb
7
- data.tar.gz: fcb03b4f168c3f3a1db2b33eb72779c0ff7e1c8708a6a1653a89fbd153c21e5ec7723dd4c7b1d97601def697f119c5757270fe012e8350896b1e868dbe1c6ad1
6
+ metadata.gz: 107aae6cee8f1833cfa424be8b5d517dfb0f93168dd17d677579602754f29dcbaf0c532f80c85d3c4e6f92f75ed8ed2fb00b6005b4f3f561862beaae94797fe5
7
+ data.tar.gz: 15fdd01ce4d3187deaa8daaaf69d71aa759fcde4adede76a759be29bfb8d68938eb7bea3b1586f0dcaa91ca3b24a5cc6de79c83949db83adcfa2c3bc84c8b5a7
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.0.1
1
+ 3.1.0
@@ -325,21 +325,13 @@ module RDF::Sesame
325
325
  options[:format] = Server::ACCEPT_JSON unless options[:format]
326
326
  options[:parsing] = :full unless options[:parsing]
327
327
 
328
- parameters = { :query => query, :queryLn => queryLn, :infer => options[:infer] }
328
+ parameters = { :queryLn => queryLn, :infer => options[:infer] }
329
329
 
330
- response = if query.size > MAX_LENGTH_GET_QUERY
331
- headers = Server::CONTENT_TYPE_X_FORM.merge(options[:format])
332
- server.post(path, Addressable::URI.form_encode(parameters), headers)
333
- else
334
- params = Addressable::URI.form_encode(parameters).gsub("+", "%20").to_s
335
- url = Addressable::URI.parse(path)
336
- unless url.normalize.query.nil?
337
- url.query = [url.query, params].compact.join('&')
338
- else
339
- url.query = [url.query, params].compact.join('?')
340
- end
341
- server.get(url, options[:format])
342
- end
330
+ response = server.post(
331
+ encode_url_parameters(path, parameters),
332
+ query,
333
+ Server::CONTENT_TYPE_SPARQL_QUERY.merge(options[:format])
334
+ )
343
335
 
344
336
  results = if (options[:parsing] == :full)
345
337
  parse_response(response)
@@ -364,10 +356,14 @@ module RDF::Sesame
364
356
  # @param [Hash] options
365
357
  # @return [Boolean]
366
358
  def write_query(query, queryLn, options)
367
- parameters = {}
368
- parameters[:update] = query
369
- parameters[:infer] = options[:infer]
370
- response = server.post(path(:statements), Addressable::URI.form_encode(parameters), Server::CONTENT_TYPE_X_FORM)
359
+ parameters = { infer: options[:infer] }
360
+
361
+ response = server.post(
362
+ encode_url_parameters(path(:statements), parameters),
363
+ query,
364
+ Server::CONTENT_TYPE_SPARQL_UPDATE
365
+ )
366
+
371
367
  response.code == "204"
372
368
  end
373
369
 
@@ -642,6 +638,22 @@ module RDF::Sesame
642
638
  options
643
639
  end
644
640
 
641
+ # @private
642
+ #
643
+ # Encode in the URL parameters
644
+ def encode_url_parameters(path, parameters)
645
+ params = Addressable::URI.form_encode(parameters).gsub("+", "%20").to_s
646
+ url = Addressable::URI.parse(path)
647
+
648
+ unless url.normalize.query.nil?
649
+ url.query = [url.query, params].compact.join('&')
650
+ else
651
+ url.query = [url.query, params].compact.join('?')
652
+ end
653
+
654
+ url
655
+ end
656
+
645
657
  # @private
646
658
  #
647
659
  # Fetch the graph names from SESAME API
@@ -57,6 +57,8 @@ module RDF::Sesame
57
57
 
58
58
  CONTENT_TYPE_TEXT = {'Content-Type' => 'text/plain'}.freeze
59
59
  CONTENT_TYPE_X_FORM = {'Content-Type' => 'application/x-www-form-urlencoded' }.freeze
60
+ CONTENT_TYPE_SPARQL_QUERY = {'Content-Type' => 'application/sparql-query'}.freeze
61
+ CONTENT_TYPE_SPARQL_UPDATE = {'Content-Type' => 'application/sparql-update'}.freeze
60
62
 
61
63
  RESULT_BOOL = 'text/boolean'.freeze
62
64
  RESULT_JSON = 'application/sparql-results+json'.freeze
@@ -1,11 +1,10 @@
1
1
  module RDF; module Sesame
2
2
  module VERSION
3
3
  MAJOR = 3
4
- MINOR = 0
5
- TINY = 1
6
- EXTRA = nil
4
+ MINOR = 1
5
+ TINY = 0
7
6
 
8
- STRING = [MAJOR, MINOR, TINY, EXTRA].compact.join('.')
7
+ STRING = [MAJOR, MINOR, TINY].compact.join('.')
9
8
 
10
9
  ##
11
10
  # @return [String]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rdf-sesame
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.1
4
+ version: 3.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Arto Bendiken
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2018-07-17 00:00:00.000000000 Z
12
+ date: 2019-01-25 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rdf
@@ -132,7 +132,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
132
132
  version: '0'
133
133
  requirements: []
134
134
  rubyforge_project: rdf
135
- rubygems_version: 2.6.14.1
135
+ rubygems_version: 2.6.14.3
136
136
  signing_key:
137
137
  specification_version: 4
138
138
  summary: Sesame 2.0 adapter for RDF.rb.