rapa 0.5.6 → 0.5.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ce98f6b502d46dd9d7cb38fb92e89c3e4b553778
4
- data.tar.gz: 0d00bb4820cb94acefb0a6ce5437b4e55adf18c6
3
+ metadata.gz: daf9368b0cd3989155910e650b483b6355b3b978
4
+ data.tar.gz: 282726a68609c28e82d8ef83cddb0c6c9e96d1ed
5
5
  SHA512:
6
- metadata.gz: 5fc309ea1f69fd616ef8b7192c2e98621a04fadd99c219415df07fe9f08a0e82b71c7e909df5d9c942fa309f9e23710b742c70ce91fce8b52c6ecce514efe51b
7
- data.tar.gz: 7fef34cbe6bc607e3f4c9fe1d230b49248b9bc62eacb47132dbe7f937bd850bd2713bcbd320dc0d491174b713aaf6aa229afad8f0ca5ec0ba3c78e237a8f5f8f
6
+ metadata.gz: 0e297e43370320522f9ad2294c57203f50949e0ea9a72e2eb946ef38908bb2aa5627e4eee9aa8494d98a4dd08964c399c8074534d49f0d40ef1fcbf3a6e04522
7
+ data.tar.gz: c789502c0e33767cd9cc4de8a12d2260fa111c2f23339d061385c2a2d1a9c3def98241f3569140e0ba66134f0cfa03995a3c8690a539798075a2326e37626322
data/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## v0.5.7
2
+
3
+ - Add `Rapa::Resources::ItemResources#crators`
4
+ - Fix `Rapa::Resources::ItemResources#crator_name` on multiple creators item
5
+ - Fix `Rapa::Resources::ItemResources#crator_role` on multiple creators item
6
+
1
7
  ## v0.5.6
2
8
 
3
9
  - Fix faraday middlewares order
data/README.md CHANGED
@@ -118,6 +118,7 @@ Available methods:
118
118
  - `#authors`
119
119
  - `#binding`
120
120
  - `#browse_nodes`
121
+ - `#creators`
121
122
  - `#creator_name`
122
123
  - `#creator_role`
123
124
  - `#ean`
data/lib/rapa.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  require "rapa/alternate_version"
2
2
  require "rapa/browse_node"
3
3
  require "rapa/client"
4
+ require "rapa/creator"
4
5
  require "rapa/encoder"
5
6
  require "rapa/error"
6
7
  require "rapa/image"
@@ -0,0 +1,21 @@
1
+ module Rapa
2
+ class Creator
3
+ # @return [Hash]
4
+ attr_reader :source
5
+
6
+ # @param source [Hash]
7
+ def initialize(source)
8
+ @source = source
9
+ end
10
+
11
+ # @return [String]
12
+ def name
13
+ source["__content__"]
14
+ end
15
+
16
+ # @return [String]
17
+ def role
18
+ source["Role"]
19
+ end
20
+ end
21
+ end
@@ -60,14 +60,32 @@ module Rapa
60
60
  end
61
61
  end
62
62
 
63
+ # @return [Array<Rapa::Creator>]
64
+ def creators
65
+ case creator_source_or_sources = source.dig("ItemAttributes", "Creator")
66
+ when ::Array
67
+ creator_source_or_sources
68
+ when ::Hash
69
+ [creator_source_or_sources]
70
+ else
71
+ []
72
+ end.map do |creator_source|
73
+ ::Rapa::Creator.new(creator_source)
74
+ end
75
+ end
76
+
63
77
  # @return [String, nil]
64
78
  def creator_name
65
- source.dig("ItemAttributes", "Creator", "__content__")
79
+ if creators.first
80
+ creators.first.name
81
+ end
66
82
  end
67
83
 
68
84
  # @return [String, nil]
69
85
  def creator_role
70
- source.dig("ItemAttributes", "Creator", "Role")
86
+ if creators.first
87
+ creators.first.role
88
+ end
71
89
  end
72
90
 
73
91
  # @return [String, nil]
data/lib/rapa/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Rapa
2
- VERSION = "0.5.6"
2
+ VERSION = "0.5.7"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rapa
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.6
4
+ version: 0.5.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryo Nakamura
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-10-10 00:00:00.000000000 Z
11
+ date: 2017-11-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -154,6 +154,7 @@ files:
154
154
  - lib/rapa/alternate_version.rb
155
155
  - lib/rapa/browse_node.rb
156
156
  - lib/rapa/client.rb
157
+ - lib/rapa/creator.rb
157
158
  - lib/rapa/encoder.rb
158
159
  - lib/rapa/error.rb
159
160
  - lib/rapa/image.rb