Class: Arxiv::Manuscript
- Inherits:
-
Object
- Object
- Arxiv::Manuscript
- Includes:
- HappyMapper
- Defined in:
- lib/arxiv/models/manuscript.rb
Instance Method Summary collapse
- #arxiv_id ⇒ Object
- #arxiv_versioned_id ⇒ Object
- #available_in_pdf? ⇒ Boolean
- #content_types ⇒ Object
- #pdf_url ⇒ Object
- #revision? ⇒ Boolean
- #version ⇒ Object
Instance Method Details
#arxiv_id ⇒ Object
23 24 25 |
# File 'lib/arxiv/models/manuscript.rb', line 23 def arxiv_id arxiv_url.match(/([^\/]+)v\d+$/)[1] end |
#arxiv_versioned_id ⇒ Object
27 28 29 |
# File 'lib/arxiv/models/manuscript.rb', line 27 def arxiv_versioned_id arxiv_url.match(/([^\/]+)$/)[1] end |
#available_in_pdf? ⇒ Boolean
39 40 41 |
# File 'lib/arxiv/models/manuscript.rb', line 39 def available_in_pdf? content_types.any? { |type| type == "application/pdf" } end |
#content_types ⇒ Object
35 36 37 |
# File 'lib/arxiv/models/manuscript.rb', line 35 def content_types links.map(&:content_type) end |
#pdf_url ⇒ Object
43 44 45 |
# File 'lib/arxiv/models/manuscript.rb', line 43 def pdf_url links.find { |l| l.content_type == "application/pdf" }.url if available_in_pdf? end |
#revision? ⇒ Boolean
19 20 21 |
# File 'lib/arxiv/models/manuscript.rb', line 19 def revision? created_at != updated_at end |
#version ⇒ Object
31 32 33 |
# File 'lib/arxiv/models/manuscript.rb', line 31 def version arxiv_url.match(/v(\d+)$/)[1].to_i end |