Class: Pubid::Api::UrnGenerator
Instance Attribute Summary
#identifier
Instance Method Summary
collapse
#initialize, #maybe, #urn_edition, #urn_language, #urn_namespace, #urn_publisher, #urn_subpart
Instance Method Details
#generate ⇒ Object
28
29
30
31
32
33
34
35
36
37
38
|
# File 'lib/pubid/api/urn_generator.rb', line 28
def generate
parts = ["urn", "api"]
parts << urn_type
parts << urn_number if urn_number
parts << urn_part if urn_part
parts << urn_year if urn_year
parts[1] = identifier.publisher.to_s.downcase if identifier.publisher
parts.join(":")
end
|
#urn_number ⇒ Object
10
11
12
13
14
|
# File 'lib/pubid/api/urn_generator.rb', line 10
def urn_number
return nil unless identifier.code
identifier.code.value.to_s
end
|
#urn_part ⇒ Object
16
17
18
19
20
|
# File 'lib/pubid/api/urn_generator.rb', line 16
def urn_part
return nil unless identifier.part
"-#{identifier.part}"
end
|
#urn_type ⇒ Object
6
7
8
|
# File 'lib/pubid/api/urn_generator.rb', line 6
def urn_type
"std"
end
|
#urn_year ⇒ Object
22
23
24
25
26
|
# File 'lib/pubid/api/urn_generator.rb', line 22
def urn_year
return identifier.year.to_s if identifier.year
nil
end
|