Sha256: 405ee99136d101cce5a147062da87f2e3bd17af4340fa3321c8a012078944113

Contents?: true

Size: 659 Bytes

Versions: 10

Compression:

Stored size: 659 Bytes

Contents

require 'video_info'

module LinkThumbnailer
  class VideoParser

    attr_reader :parser

    def initialize(video)
      @parser = ::VideoInfo.new(video.src.to_s)
    rescue ::VideoInfo::UrlError
      @parser = nil
    end

    def id
      parser.video_id
    rescue NoMethodError
      nil
    end

    def size
      [parser.width, parser.height]
    rescue NoMethodError
      []
    end

    def duration
      parser.duration
    rescue NoMethodError
      nil
    end

    def provider
      parser.provider
    rescue NoMethodError
      nil
    end

    def embed_code
      parser.embed_code
    rescue NoMethodError
      nil
    end

  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
link_thumbnailer-2.5.1 lib/link_thumbnailer/video_parser.rb
link_thumbnailer-2.5.0 lib/link_thumbnailer/video_parser.rb
link_thumbnailer-2.4.0 lib/link_thumbnailer/video_parser.rb
link_thumbnailer-2.3.2 lib/link_thumbnailer/video_parser.rb
link_thumbnailer-2.3.1 lib/link_thumbnailer/video_parser.rb
link_thumbnailer-2.3.0 lib/link_thumbnailer/video_parser.rb
link_thumbnailer-2.2.3 lib/link_thumbnailer/video_parser.rb
link_thumbnailer-2.2.2 lib/link_thumbnailer/video_parser.rb
link_thumbnailer-2.2.1 lib/link_thumbnailer/video_parser.rb
link_thumbnailer-2.2.0 lib/link_thumbnailer/video_parser.rb