Sha256: 73eaa3543fddd24cb7eff1640e80f339a731c106ed1a43a2df7ec2eb8be680d0
Contents?: true
Size: 910 Bytes
Versions: 2
Compression:
Stored size: 910 Bytes
Contents
module CollectionSpace class Client include DeepFind include Helpers attr_reader :config def initialize(config = Configuration.new) raise "Invalid configuration object" unless config.kind_of? CollectionSpace::Configuration @config = config end def get(path, options = {}) request 'GET', path, options end def post(path, payload) raise PayloadError.new if Nokogiri::XML(payload).errors.any? request 'POST', path, { body: payload } end def put(path, payload) raise PayloadError.new if Nokogiri::XML(payload).errors.any? request 'PUT', path, { body: payload } end def delete(path) request 'DELETE', path end private def request(method, path, options = {}) sleep config.throttle result = Request.new(config, method, path, options).execute Response.new result end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
collectionspace-client-0.1.1 | lib/collectionspace/client/client.rb |
collectionspace-client-0.1.0 | lib/collectionspace/client/client.rb |