Sha256: 8b90c4be248f241de0b465f49b0374f9632e42b2259bddf776933d89d05813ac

Contents?: true

Size: 1.07 KB

Versions: 1

Compression:

Stored size: 1.07 KB

Contents

module Ldp::Client::Methods
  def logger
    Ldp.logger
  end

  # Get a LDP Resource by URI
  def get url
    resp = http.get do |req|                          
      req.url url
      yield req if block_given?
    end

    if Ldp::Response.resource? resp
      Ldp::Response.wrap self, resp
    else
      resp
    end
  end

  # Delete a LDP Resource by URI
  def delete url
    http.delete do |req|
      req.url url
      yield req if block_given?
    end
  end

  # Post TTL to an LDP Resource
  def post url, body = nil, headers = {}
    logger.debug "POST [#{url}] #{body}"
    http.post do |req|
      req.url url
      req.headers = default_headers.merge headers
      req.body = body
      yield req if block_given?
    end
  end

  # Update an LDP resource with TTL by URI
  def put url, body, headers = {}
    logger.debug "PUT [#{url}] #{body}"
    http.put do |req|
      req.url url
      req.headers = default_headers.merge headers
      req.body = body
      yield req if block_given?
    end
  end

  private

  def default_headers
    {"Content-Type"=>"text/turtle"}
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ldp-0.0.3 lib/ldp/client/methods.rb