craftar 0.0.2 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6b647093e23e1d6a63888cd3d0846572200c0f10
4
- data.tar.gz: 8e8aeba8b960be4143486400d5d5813613372069
3
+ metadata.gz: bc2377d48b8f2f45dfb3f384c941880d494073b2
4
+ data.tar.gz: 9fbd558c2dac5ddb8053a5a884dbd4f1bdc2dac1
5
5
  SHA512:
6
- metadata.gz: 91233e972c8b4f6c6cbceb9d9edbd41eec61890b2e17f31c8ebfe5b04d4d1766bcb9ba53fd58601a93b6ff5a7c4642bbb04ddd80274c748edc66b97784320aa5
7
- data.tar.gz: 673c232e1ba83e041f37e4528b4e1d9d460a872517266b3c9c46b9321872094895ebb77eb496649de55246e30b94a9243835ba39515d037ec2c2a3021f55c01f
6
+ metadata.gz: 3745827133bf06805d6a1aa4e6c65cc8c460786207c38f993145938f976d5c08d482845f8ea4e778f9e0fc5ddbcb7a92c375452323bf85d520283d156953a077
7
+ data.tar.gz: 6d47152a2137a08778824c960452e9c69d76a4000cb56623f4fb4c0f262d0419cbfc7e89f645611ce2be22b76f6b9581f42afd424d85719f39c5693b894f4bf9
@@ -1,8 +1,12 @@
1
1
  require 'craftar/base'
2
+
3
+ require 'craftar/app'
2
4
  require 'craftar/collection'
5
+ require 'craftar/collection_bundle'
3
6
  require 'craftar/item'
4
7
  require 'craftar/image'
5
8
  require 'craftar/token'
9
+ require 'craftar/sdk_version'
6
10
  require 'craftar/media'
7
11
  module Craftar
8
12
  class << self; attr_accessor :api_key; end
@@ -0,0 +1,26 @@
1
+ module Craftar
2
+ class App < Craftar::Base
3
+ attr_reader :uuid, :name, :resource_uri, :collection
4
+ def self.craftar_name
5
+ 'app'
6
+ end
7
+
8
+ def initialize(opts)
9
+ @name = opts[:name]
10
+ @uuid = opts[:uuid]
11
+ @collection = opts[:collection]
12
+ @resource_uri = opts[:resource_uri]
13
+ end
14
+
15
+ def save
16
+ response = json_call(:post, name: @name, collection: @collection)
17
+ @uuid = response['uuid']
18
+ @resource_uri = response['resource_uri']
19
+ self
20
+ end
21
+
22
+ def update(opts)
23
+ raise 'You cannot update an application id'
24
+ end
25
+ end
26
+ end
@@ -59,7 +59,11 @@ module Craftar
59
59
  "/#{self.class.craftar_name}/",
60
60
  query: { api_key: Craftar.api_key }.merge!(opts)
61
61
  )
62
- raise (response ['error']['message']) if response['error']
62
+ if response['error']
63
+ error_message = self.class.craftar_name + ': ' + response['error']['message']
64
+ error_message += response['error']['details'] if response['error']['details']
65
+ raise error_message
66
+ end
63
67
  response
64
68
  end
65
69
 
@@ -74,7 +78,12 @@ module Craftar
74
78
  body: opts.to_json,
75
79
  headers: { 'Content-Type' => 'application/json' }
76
80
  ))
77
- raise response ['error']['message'] if response['error']
81
+ if response['error']
82
+
83
+ error_message = self.class.craftar_name + ': ' + response['error']['message']
84
+ error_message += response['error']['details'] if response['error']['details']
85
+ raise error_message
86
+ end
78
87
  response
79
88
  end
80
89
 
@@ -0,0 +1,46 @@
1
+ module Craftar
2
+ class CollectionBundle < Craftar::Base
3
+ attr_reader :uuid, :app, :collection, :file, :resource_uri, :status, :version
4
+ def self.craftar_name
5
+ 'collectionbundle'
6
+ end
7
+
8
+ def initialize(opts)
9
+ @uuid = opts[:uuid]
10
+ @resource_uri = opts[:resource_uri]
11
+ @app = opts[:app]
12
+ @collection = opts[:collection]
13
+ @version = opts[:version]
14
+ @file = opts[:file]
15
+ @status = opts[:status]
16
+ end
17
+
18
+ def save
19
+ response = json_call(:post, app: @app, collection: @collection, version: @version)
20
+ update_attributes(response)
21
+ self
22
+ end
23
+
24
+ def update(opts)
25
+ attributes = {
26
+ app: opts[:app],
27
+ collection: opts[:collection],
28
+ version: opts[:version]
29
+ }.select { |_, value| !value.nil? }
30
+
31
+ response = json_call(:put, attributes)
32
+ update_attributes(response)
33
+ self
34
+ end
35
+
36
+ def update_attributes(response)
37
+ @uuid = response['uuid']
38
+ @app = response['app']
39
+ @collection = response['collection']
40
+ @file = response['file']
41
+ @resource_uri = response['resource_uri']
42
+ @status = response['status']
43
+ @version = response['version']
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,28 @@
1
+ module Craftar
2
+ class SdkVersion < Craftar::Base
3
+ attr_reader :resource_uri, :uuid, :version
4
+
5
+ def self.craftar_name
6
+ 'version'
7
+ end
8
+
9
+ def self.create
10
+ raise 'You cannot create a sdk version'
11
+ end
12
+
13
+ def initialize(opts)
14
+ @uuid = opts[:uuid]
15
+ @resource_uri = opts[:resource_uri]
16
+ @version = opts[:version]
17
+ end
18
+
19
+
20
+ def save
21
+ raise 'You cannot save a sdk version'
22
+ end
23
+
24
+ def destroy
25
+ raise 'You cannot destroy a sdk version'
26
+ end
27
+ end
28
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: craftar
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marieke Gueye
@@ -30,6 +30,20 @@ dependencies:
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
32
  version: 3.2.0
33
+ - !ruby/object:Gem::Dependency
34
+ name: pry
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: '0'
40
+ type: :development
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
33
47
  - !ruby/object:Gem::Dependency
34
48
  name: httmultiparty
35
49
  requirement: !ruby/object:Gem::Requirement
@@ -58,11 +72,14 @@ extensions: []
58
72
  extra_rdoc_files: []
59
73
  files:
60
74
  - lib/craftar.rb
75
+ - lib/craftar/app.rb
61
76
  - lib/craftar/base.rb
62
77
  - lib/craftar/collection.rb
78
+ - lib/craftar/collection_bundle.rb
63
79
  - lib/craftar/image.rb
64
80
  - lib/craftar/item.rb
65
81
  - lib/craftar/media.rb
82
+ - lib/craftar/sdk_version.rb
66
83
  - lib/craftar/token.rb
67
84
  homepage: https://github.com/mkou/craftar
68
85
  licenses: