Sha256: 6afe63f5a65222e5b861c57ff1dc2fc7a4e681f11a16c90bf48e67bc4bf023d7

Contents?: true

Size: 750 Bytes

Versions: 2

Compression:

Stored size: 750 Bytes

Contents

require_relative 'media_types'

class PeopleResource
  include Praxis::ResourceDefinition

  description 'People resource'

  media_type ::MediaTypes::Person

  version '1.0'

  routing do
    prefix "/people"
  end

  action :index do
    description 'index description'
    routing do
      get ''
    end
  end

  action :create do
    description 'create description'
    routing do
      post ''
    end

    payload do
      attribute :name, String, required: true
    end

    response :resource_created, media_type: 'application/json'
    response :resource_error
  end

  action :show do
    description 'show description'
    routing do
      get '/:id'
    end
    params do
      attribute :id, Integer, required: true
    end
  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
traxis-0.0.2 spec/support/resource_definitions.rb
traxis-0.0.1 spec/support/resource_definitions.rb