matterhorn_whymper 1.0.2 → 1.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/lib/matterhorn/endpoint/event.rb +14 -14
- data/lib/matterhorn/endpoint/ingest.rb +1 -1
- data/lib/matterhorn_whymper/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
NGRjZTNkNjYwM2M0OGJlMGJiZGJjMTBiYTk3YjIwNmNmMTlkMjViMg==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
MzQ4MTkwNGMyNDQyZmVmZDJlODJjYWUwNjJiNDY5MDAwOGY0ZjI0Mg==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
NWU4MmJjN2MyYzg0NzZjNDU1NTQ0YTA3NDJjZjQ5OGNhNDdjYTY3OTA2OWU0
|
10
|
+
ZTlmMzZlZTlhNGEyNGEyNGUzOWZmNDI4YmE0MDdiODA1ZGJkNWVmMDMzZjQ1
|
11
|
+
NWEyYTBkNzE4MTY3ZDgxNjViNmFiYWM2ZGYyM2Y3YTEzYmJlOTc=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
ZmU1M2RkODAzMDVkYWM2ZjhmZmI4OWQ3N2IwYTM1MGJmOTRmYzZkNDk2MDg5
|
14
|
+
NWI3MDlkYjQxYjlmMDViMjU1N2I2YTgwYjNmNTFhNWRlMzZjOWJiN2ZlMGM5
|
15
|
+
MTJjYzA0ZDdhODZkYWYyMDRjZWFlMDMyODEyNmVlMDdhZjA0ZDE=
|
@@ -2,9 +2,10 @@ require 'json'
|
|
2
2
|
|
3
3
|
# ================================================================== Matterhorn::Endpoint::Event ===
|
4
4
|
|
5
|
-
# This endpoint is not a pure wrapper of the
|
5
|
+
# This endpoint is not a pure wrapper of the archive endpoint.
|
6
6
|
# Create should be done over ingest endpoint
|
7
7
|
# Update is implemented over the external API
|
8
|
+
# In the code the evnent_id is used. This id is equal to media_package_id.
|
8
9
|
#
|
9
10
|
class Matterhorn::Endpoint::Event < Matterhorn::Endpoint
|
10
11
|
|
@@ -16,16 +17,16 @@ class Matterhorn::Endpoint::Event < Matterhorn::Endpoint
|
|
16
17
|
|
17
18
|
# --------------------------------------------------------------------------------------- read ---
|
18
19
|
|
19
|
-
def read_media_package(
|
20
|
+
def read_media_package(event_id)
|
20
21
|
media_package = nil
|
21
22
|
begin
|
22
23
|
split_response http_endpoint_client.get(
|
23
|
-
"archive/archive/mediapackage/#{
|
24
|
+
"archive/archive/mediapackage/#{event_id}"
|
24
25
|
)
|
25
26
|
media_package = Matterhorn::MediaPackage.new(response_body)
|
26
27
|
rescue => ex
|
27
28
|
exception_handler('read_media_package', ex, {
|
28
|
-
404 => "The media package of event[#{
|
29
|
+
404 => "The media package of event[#{event_id}] could not be found."
|
29
30
|
}
|
30
31
|
)
|
31
32
|
end
|
@@ -33,10 +34,10 @@ class Matterhorn::Endpoint::Event < Matterhorn::Endpoint
|
|
33
34
|
end
|
34
35
|
|
35
36
|
|
36
|
-
def read_dublin_core(
|
37
|
+
def read_dublin_core(event_id)
|
37
38
|
dublin_core = nil
|
38
39
|
begin
|
39
|
-
mp = read_media_package(
|
40
|
+
mp = read_media_package(event_id)
|
40
41
|
if !mp.nil?
|
41
42
|
dc_uri = URI.parse(mp.dc_catalog_url)
|
42
43
|
split_response http_endpoint_client.get(dc_uri.request_uri)
|
@@ -44,7 +45,7 @@ class Matterhorn::Endpoint::Event < Matterhorn::Endpoint
|
|
44
45
|
end
|
45
46
|
rescue => ex
|
46
47
|
exception_handler('read_dublin_core', ex, {
|
47
|
-
404 => "The media package of event[#{
|
48
|
+
404 => "The media package of event[#{event_id}] could not be found."
|
48
49
|
}
|
49
50
|
)
|
50
51
|
end
|
@@ -55,12 +56,11 @@ class Matterhorn::Endpoint::Event < Matterhorn::Endpoint
|
|
55
56
|
# ------------------------------------------------------------------------------------- update ---
|
56
57
|
|
57
58
|
def changeable_element?(element_name)
|
58
|
-
['title', 'subject', 'description', 'language', 'license',
|
59
|
-
'contributer', 'source'].include?(element_name)
|
59
|
+
['title', 'subject', 'description', 'language', 'license', 'source'].include?(element_name)
|
60
60
|
end
|
61
61
|
|
62
62
|
|
63
|
-
def update_dublin_core(
|
63
|
+
def update_dublin_core(event_id, dublin_core)
|
64
64
|
updated = false
|
65
65
|
begin
|
66
66
|
dc_field_arr = []
|
@@ -73,14 +73,14 @@ class Matterhorn::Endpoint::Event < Matterhorn::Endpoint
|
|
73
73
|
end
|
74
74
|
end
|
75
75
|
split_response http_api_client.put(
|
76
|
-
"api/events/#{
|
76
|
+
"api/events/#{event_id}/metadata?type=dublincore/episode",
|
77
77
|
{ 'metadata' => dc_field_arr.to_json }
|
78
78
|
)
|
79
79
|
updated = true
|
80
80
|
rescue => ex
|
81
81
|
exception_handler('update_dublin_core', ex, {
|
82
82
|
400 => "The request is invaldi or inconsistent.",
|
83
|
-
404 => "The media package of event[#{
|
83
|
+
404 => "The media package of event[#{event_id}] could not be found."
|
84
84
|
}
|
85
85
|
)
|
86
86
|
end
|
@@ -90,10 +90,10 @@ class Matterhorn::Endpoint::Event < Matterhorn::Endpoint
|
|
90
90
|
|
91
91
|
# ------------------------------------------------------------------------------------- delete ---
|
92
92
|
|
93
|
-
def delete(
|
93
|
+
def delete(event_id)
|
94
94
|
begin
|
95
95
|
split_response http_endpoint_client.delete(
|
96
|
-
"archive/delete/#{
|
96
|
+
"archive/delete/#{event_id}"
|
97
97
|
)
|
98
98
|
rescue => ex
|
99
99
|
exception_handler('delete', ex, {})
|
@@ -153,7 +153,7 @@ class Matterhorn::Endpoint::Ingest < Matterhorn::Endpoint
|
|
153
153
|
end
|
154
154
|
|
155
155
|
|
156
|
-
def
|
156
|
+
def media_package_identifier
|
157
157
|
return nil unless @media_pkg_xml_remote
|
158
158
|
Matterhorn::MediaPackage.new(@media_pkg_xml_remote).identifier
|
159
159
|
end
|
@@ -5,7 +5,7 @@ module MatterhornWhymper
|
|
5
5
|
|
6
6
|
# -------------------------------------------------------------------------- const definitions ---
|
7
7
|
|
8
|
-
VERSION = "1.0.
|
8
|
+
VERSION = "1.0.3"
|
9
9
|
|
10
10
|
|
11
11
|
end # -------------------------------------------------------------------- end MatterhornWhymper ---
|