Sha256: fc020abc514ec3e0c20b20ed74ed80703d865dc1ea7e2752c424b548dc0ac9c7

Contents?: true

Size: 1.15 KB

Versions: 6

Compression:

Stored size: 1.15 KB

Contents

require 'ldp/version'
require 'linkeddata'
require 'logger'
require 'singleton'

module Ldp
  RDF::Graph.send(:include, RDF::Isomorphic)

  require 'ldp/client'
  require 'ldp/uri'

  extend Uri

  autoload :Response, 'ldp/response'
  autoload :Resource, 'ldp/resource'
  autoload :Container, 'ldp/container'

  autoload :Orm, 'ldp/orm'

  class HttpError < RuntimeError; end
  class BadRequest < HttpError; end # 400
  class NotFound < HttpError; end # 404
  class Gone < HttpError; end # 410
  class EtagMismatch < HttpError; end # 412

  class UnexpectedContentType < RuntimeError; end

  # Returned when there is no result (e.g. 404)
  class NoneClass
    include Singleton
  end
  # The single global instance of NoneClass, representing the empty Option
  None = NoneClass.instance # :doc:

  class << self
    def logger
      @logger ||= Logger.new(STDOUT).tap do |log|
        log.level = Logger::WARN
      end
    end

    def instrument *args, &block
      if defined?(::ActiveSupport) && defined?(::ActiveSupport::Notifications)
        ActiveSupport::Notifications.instrument *args, &block
      else
        yield
      end
    end

    attr_writer :logger
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
ldp-0.3.1 lib/ldp.rb
ldp-0.3.0 lib/ldp.rb
ldp-0.2.3 lib/ldp.rb
ldp-0.2.2 lib/ldp.rb
ldp-0.2.1 lib/ldp.rb
ldp-0.2.0 lib/ldp.rb