Sha256: 519cef1bde8e99470dae239698fea059035f5b7c826d5b92b681d88e77c4e614

Contents?: true

Size: 971 Bytes

Versions: 1

Compression:

Stored size: 971 Bytes

Contents

require 'pina/models/uploaded_document_pairing'

module Pina
  class UploadedDocumentPairing
    extend Pina::Resource

    class << self
      def find(id)
        response = Pina::RestAdapter.get([:uploaded_documents, id, :pairings])

        return Pina::Models::UploadedDocumentPairing.new(attributes(response)) if
          response.ok?

        response
      end

      def create(params)
        response = Pina::RestAdapter.post([:uploaded_documents, params[:uploaded_document_id], :pairings],
                                          params.except(:uploaded_document_id))

        if response.ok?
          # TODO: implement uploaded_documents/:id/pairings response object in Fantozzi api
          response
        else
          Pina::Models::Error.new(attributes_for_error(response))
        end
      end

      private

      def attributes_for_error(response)
        response.to_hash.merge(status_code: response.status_code)
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
pina-0.15.0 lib/pina/uploaded_document_pairing.rb