Sha256: 63e735169fc99ea3a7dc74e29413e4afe75b49f0804d4b2e8209598c951dd30f

Contents?: true

Size: 383 Bytes

Versions: 4

Compression:

Stored size: 383 Bytes

Contents

module ActivityStreams
  class Collection < Base
    attr_optional :total_count, :items, :url

    def validate_attributes!
      super
      if items.blank? && url.blank?
        raise AttrMissing.new('Either "items" or "url" is required')
      end
      to_iri :url
      validate_attribute! :items, item_class, :arrayed!
    end

    def item_class
      Object
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
activitystreams-0.0.4 lib/activitystreams/collection.rb
activitystreams-0.0.3 lib/activitystreams/collection.rb
activitystreams-0.0.2 lib/activitystreams/collection.rb
activitystreams-0.0.1 lib/activitystreams/collection.rb