craftar 0.0.2 → 0.0.4

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: 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: