Sha256: cec389c304dc1c39f2d6a28a4e37396d28c6a81c9318ea86bf6681c3f7454016
Contents?: true
Size: 1.23 KB
Versions: 1
Compression:
Stored size: 1.23 KB
Contents
require 'socket' require 'faraday' require 'faraday_middleware' require 'frenetic/concerns/configurable' require 'frenetic/middleware/hal_json' require 'frenetic/resource' require 'frenetic/resource_collection' require 'frenetic/version' class Frenetic extend Forwardable include Configurable def_delegators :connection, :get, :put, :post, :delete Error = Class.new(StandardError) ConfigError = Class.new(Error) ClientError = Class.new(Error) ServerError = Class.new(Error) ParsingError = Class.new(Error) HypermediaError = Class.new(Error) def connection @connection ||= begin validate_configuration! Faraday.new( config ) do |builder| configure_authentication builder builder.response :hal_json configure_caching builder @builder_config.call( builder ) if @builder_config builder.adapter config.adapter end end end # It is highly advised that the server responds with some cache headers and # the API Client is configured to use a Faraday caching strategy def description if response = get( config.url.to_s ) and response.success? response.body end end def schema description['_embedded']['schema'] end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
frenetic-0.0.20.alpha.0 | lib/frenetic.rb |