module Tripod::SparqlClient::Update

Public Class Methods

update(sparql) click to toggle source

Runs a sparql update against the endpoint. Returns true if success.

@example Run a query

Tripod::SparqlClient::Update.update('DELETE {?s ?p ?o} WHERE {?s ?p ?o};')

@return [ true ]

# File lib/tripod/sparql_client.rb, line 100
def self.update(sparql)
  begin
    headers = Tripod.extra_endpoint_headers
    RestClient::Request.execute(
      :method => :post,
      :url => Tripod.update_endpoint,
      :timeout => Tripod.timeout_seconds,
      :payload => { update: sparql }.merge(Tripod.extra_endpoint_params),
      :headers => headers
    )
    true
  rescue RestClient::BadRequest => e
    # just re-raise as a BadSparqlRequest Exception
    raise Tripod::Errors::BadSparqlRequest.new(e.http_body, e)
  end
end