Sha256: c915bdb3d3260f6fece07d6ce20aed67612b427c9a9b8939c1825efce91ad52c
Contents?: true
Size: 1.34 KB
Versions: 4
Compression:
Stored size: 1.34 KB
Contents
require 'rack/ldp' require 'sinatra/base' class RDF::Lamprey < Sinatra::Base use Rack::LDP::ContentNegotiation use Rack::LDP::Errors use Rack::LDP::Responses use Rack::ConditionalGet use Rack::LDP::Requests # Set defaults in case user has not configured values configure do set :repository, RDF::Repository.new end get '/*' do RDF::LDP::Container.new(RDF::URI(request.url), settings.repository) .create('', 'text/turtle') if settings.repository.empty? RDF::LDP::Resource.find(RDF::URI(request.url), settings.repository) end patch '/*' do RDF::LDP::Resource.find(RDF::URI(request.url), settings.repository) end post '/*' do RDF::LDP::Resource.find(RDF::URI(request.url), settings.repository) end put '/*' do begin RDF::LDP::Resource.find(RDF::URI(request.url), settings.repository) rescue RDF::LDP::NotFound model = request.env.fetch('HTTP_LINK', '') RDF::LDP::Resource.interaction_model(model) .new(RDF::URI(request.url), settings.repository) end end options '/*' do RDF::LDP::Resource.find(RDF::URI(request.url), settings.repository) end head '/*' do RDF::LDP::Resource.find(RDF::URI(request.url), settings.repository) end delete '/*' do RDF::LDP::Resource.find(RDF::URI(request.url), settings.repository) end run! if app_file == $0 end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
rdf-ldp-0.6.0 | app/lamprey.rb |
rdf-ldp-0.5.1 | app/lamprey.rb |
rdf-ldp-0.5.0 | app/lamprey.rb |
rdf-ldp-0.4.0 | app/lamprey.rb |