matterhorn_whymper 1.2.0 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- M2I3ZTY1N2YxMTMxMDUwZTQ3MDRlZDZiNWMwNzRlOTU2OGY2MTIzMA==
4
+ ODc0MmI0ZTFjZTgyY2MyZWE5MjNmYzE2NzMyMDQzOGM3NWE1YjlkNg==
5
5
  data.tar.gz: !binary |-
6
- YmIyNzY5OTYxNTg3NWU2NWRlNjg3Mzk5ODRmY2E0NzJmY2M4OWQyZg==
6
+ YWI3YzllZWY4ZGEyMWVlY2Y3Mjk1Yzk0NjBiZjQ3MzkxMmNhZGY4YQ==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- NzhjMjU0MGMzMTEwMmFhYWFiZTAwNWE5N2VhYWQ0OGFkOGYyNzJiYjNhMDg1
10
- NzAyOWMzNWIwNGIzNGJkYzg4ZmE5NDYwYjA5NWMzNjQ3ZWRkMjA4ZjhkYTNm
11
- ZGE3ZWNmYWE3MzFiYmY5ZDBhNjBkNzJhMjRiZGMwYzg5ODhmMDY=
9
+ MjkzYzYxZTdiNTE5ZTAyZGJjOGUxMzEwNzVhOTRiZWI4YTg2NDIzY2MxNzVj
10
+ ZWYyY2UyOTVjNDcyNmQ2MmQzY2ViNDQ1YmE4N2RlNzQ5ZTY4YTc5Yzc4ZGMw
11
+ NjE1ZGNiZjA5ZTA4MGRkNWQ4MTMzZThjMTg4YjQ1YzI2ZGUyMWQ=
12
12
  data.tar.gz: !binary |-
13
- NjQ5MjhmNGNhMDk3MmQ1NjU3Nzk2NjA0OGUzMzY2YmU2MDdkOGZkM2MzZjNl
14
- YjA2OTUzMDFmNjJiNzAyMWFhNGU4YjUyYmYxOWJiYmI3NDRmNjJiYjU5ZTRm
15
- Y2M1OTY4MzBmMTE0YjMyYzY5MTM2OWY1ODRlMDljODNhM2U0MzM=
13
+ ZWE2ZjY2Mzc5ZDNiZDBhOTUxN2QwOWY5MmE3YzY1ZjUyMDU3ZWJlYjliNTY3
14
+ NDczNzdjYzI5NTQ4M2JmOWM0MGQ0Njg3MjE1ODJkYWNjNjk1OTkzYTE2ODRl
15
+ YzA4Y2NlMmRhODM4YTRiZTgwMjJlMGQ3ZTFlN2Q1OWNmOWFkNmY=
@@ -0,0 +1,87 @@
1
+ require 'uri'
2
+
3
+
4
+ # ============================================================ Matterhorn::Endpoint::Staticfiles ===
5
+
6
+ class Matterhorn::Endpoint::Staticfiles < Matterhorn::Endpoint
7
+
8
+
9
+ # -------------------------------------------------------------------------- endpoint methodes ---
10
+
11
+ # ------------------------------------------------------------------------------------- create ---
12
+
13
+ # Uploads a file into the static file folder on Mattherhorn.
14
+ # Return the uuid of this uploaded resources.
15
+ #
16
+ def upload(file)
17
+ uuid = nil
18
+ begin
19
+ split_response http_endpoint_client.post(
20
+ "staticfiles",
21
+ { 'BODY' => file }
22
+ )
23
+ uuid = response_body
24
+ rescue => ex
25
+ exception_handler('create', ex, {
26
+ 400 => "No filename or file to upload found. Or the uploaded size is too big"
27
+ }
28
+ )
29
+ end
30
+ uuid
31
+ end
32
+
33
+
34
+ # Persists a recently uploaded file to the permanent storage.
35
+ #
36
+ def persist(uuid)
37
+ persisted = false
38
+ begin
39
+ split_response http_endpoint_client.post(
40
+ "staticfiles/#{uuid}/persist",
41
+ {}
42
+ )
43
+ persisted = true
44
+ rescue => ex
45
+ exception_handler('read', ex, {
46
+ 400 => "No file by the given UUID #{uuid} found."
47
+ }
48
+ )
49
+ end
50
+ persisted
51
+ end
52
+
53
+
54
+ # --------------------------------------------------------------------------------------- read ---
55
+
56
+
57
+
58
+ # ------------------------------------------------------------------------------------- update ---
59
+
60
+
61
+
62
+ # ------------------------------------------------------------------------------------- delete ---
63
+
64
+ # Remove the static file.
65
+ #
66
+ def delete(uuid)
67
+ deleted = false
68
+ begin
69
+ split_response http_endpoint_client.delete(
70
+ "staticfiles/#{uuid}"
71
+ )
72
+ deleted = true
73
+ rescue => ex
74
+ exception_handler('read', ex, {
75
+ 400 => "No file by the given UUID #{uuid} found."
76
+ }
77
+ )
78
+ end
79
+ deleted
80
+ end
81
+
82
+
83
+ # ---------------------------------------------------------------------------- private section ---
84
+ private
85
+
86
+
87
+ end # -------------------------------------------------------- Matterhorn::Endpoint::Staticfiles ---
@@ -5,7 +5,7 @@ module MatterhornWhymper
5
5
 
6
6
  # -------------------------------------------------------------------------- const definitions ---
7
7
 
8
- VERSION = "1.2.0"
8
+ VERSION = "1.3.0"
9
9
 
10
10
 
11
11
  end # -------------------------------------------------------------------- end MatterhornWhymper ---
@@ -11,6 +11,7 @@ require 'matterhorn/endpoint'
11
11
  require 'matterhorn/endpoint/event'
12
12
  require 'matterhorn/endpoint/ingest'
13
13
  require 'matterhorn/endpoint/series'
14
+ require 'matterhorn/endpoint/staticfiles'
14
15
  require 'matterhorn/endpoint/workflow'
15
16
  require 'matterhorn/error'
16
17
  require 'matterhorn/http_client'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: matterhorn_whymper
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Fritschi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-07-20 00:00:00.000000000 Z
11
+ date: 2015-07-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: multipart-post
@@ -143,6 +143,7 @@ files:
143
143
  - lib/matterhorn/endpoint/event.rb
144
144
  - lib/matterhorn/endpoint/ingest.rb
145
145
  - lib/matterhorn/endpoint/series.rb
146
+ - lib/matterhorn/endpoint/staticfiles.rb
146
147
  - lib/matterhorn/endpoint/workflow.rb
147
148
  - lib/matterhorn/error.rb
148
149
  - lib/matterhorn/http_client.rb