Sha256: 1d30ea71aa6cbc4a5d13e1c3f37d0d4c826186b12c1b826c03888766253c096c

Contents?: true

Size: 893 Bytes

Versions: 16

Compression:

Stored size: 893 Bytes

Contents

require 'link_thumbnailer/model'
require 'link_thumbnailer/video_parser'

module LinkThumbnailer
  module Models
    class Video < ::LinkThumbnailer::Model

      attr_reader :src, :size, :duration, :provider, :id, :embed_code

      def initialize(src, size = nil)
        @src        = src
        @id         = parser.id
        @size       = size || parser.size
        @duration   = parser.duration
        @provider   = parser.provider
        @embed_code = parser.embed_code
      end

      def to_s
        src.to_s
      end

      def as_json(*)
        {
          id:         id,
          src:        src.to_s,
          size:       size,
          duration:   duration,
          provider:   provider,
          embed_code: embed_code
        }
      end

      private

      def parser
        @parser ||= ::LinkThumbnailer::VideoParser.new(self)
      end

    end
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
link_thumbnailer-3.3.1 lib/link_thumbnailer/models/video.rb
link_thumbnailer-3.3.0 lib/link_thumbnailer/models/video.rb
link_thumbnailer-3.2.1 lib/link_thumbnailer/models/video.rb
link_thumbnailer-3.2.0 lib/link_thumbnailer/models/video.rb
link_thumbnailer-3.1.2 lib/link_thumbnailer/models/video.rb
link_thumbnailer-3.1.1 lib/link_thumbnailer/models/video.rb
link_thumbnailer-3.1.0 lib/link_thumbnailer/models/video.rb
link_thumbnailer-3.0.3 lib/link_thumbnailer/models/video.rb
link_thumbnailer-3.0.2 lib/link_thumbnailer/models/video.rb
link_thumbnailer-3.0.1 lib/link_thumbnailer/models/video.rb
link_thumbnailer-3.0.0 lib/link_thumbnailer/models/video.rb
link_thumbnailer-2.6.1 lib/link_thumbnailer/models/video.rb
link_thumbnailer-2.6.0 lib/link_thumbnailer/models/video.rb
link_thumbnailer-2.5.2 lib/link_thumbnailer/models/video.rb
link_thumbnailer-2.5.1 lib/link_thumbnailer/models/video.rb
link_thumbnailer-2.5.0 lib/link_thumbnailer/models/video.rb