Sha256: dc1d95c59d37a87474b1494ab1a57595658597634234442baad30fa53fee7dee

Contents?: true

Size: 532 Bytes

Versions: 2

Compression:

Stored size: 532 Bytes

Contents

module DataCatalog

  class Categories < Base
    include Resource

    model Category

    # == Permissions

    roles Roles
    permission :read   => :basic
    permission :modify => :curator

    # == Properties
    
    property :name

    property :sources do |category|
      category.sources.map do |source|
        {
          "id"    => source.id,
          "href"  => "/sources/#{source.id}",
          "title" => source.title,
          "url"   => source.url,
        }
      end
    end
  end
  
  Categories.build

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
sinatra_resource-0.2.0 examples/datacatalog/resources/categories.rb
sinatra_resource-0.1.0 examples/datacatalog/resources/categories.rb