ahub 0.9.0 → 0.10.0

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: eea5556dd0851e625a33b94ba6f13b52cafb9fd2
4
- data.tar.gz: 28bcc8ef3dd56cab63dde2ed88f9947dcd926224
3
+ metadata.gz: e3e902cfaa02f5bd66bcae1e6ad9b768d23aaf57
4
+ data.tar.gz: c138bb17202cac0246b7521245f09227a6a5ed98
5
5
  SHA512:
6
- metadata.gz: 3568aadc748266d1dd76f748f1024cb7e81a80a660388f35260a458ddd6c4323e61d790453547182710f89707babd42de33e69a81133b510431219dc0f564135
7
- data.tar.gz: addb0b83bd90477da95c1b384ee281bef1d1b64f12f462cd231f1bfe822f041729c1d3b8d8684764b8b6183c9a82e5f6a55e1542d064d9e3431bf7daa50bbfed
6
+ metadata.gz: ab53f73c3745ef70bab51fe4d48bd3d44e2ab7e1967802e9b67278fb9d3f76d8ae98ece237e07608b992e387f25576b4966a30eb941fac596e7e55011c99bb5a
7
+ data.tar.gz: 5ac02a3a7deda534386c927baf1c22997a009c39fcca0b0e8045c6eeef1307d351ad0d2379d9d09e2f18a0c33382f744d62e6fd207e557fd43bb8340659a4d3e
data/lib/ahub/answer.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  module Ahub
2
2
  class Answer
3
3
  include Ahub::APIResource
4
+ include Ahub::Deletable
4
5
 
5
6
  def self.create(question_id:, body:, username:, password:)
6
7
  url = "#{Ahub::DOMAIN}/services/v2/question/#{question_id}/answer.json"
@@ -12,10 +12,6 @@ module Ahub
12
12
  raise NotImplementedError
13
13
  end
14
14
 
15
- def destroy
16
- raise NotImplementedError
17
- end
18
-
19
15
  def initialize(attrs)
20
16
  @attributes = attrs
21
17
  attrs.each_pair do |k,v|
@@ -80,7 +76,8 @@ module Ahub
80
76
  end
81
77
 
82
78
  def get_resources(url:, headers:, klass:)
83
- JSON.parse(RestClient.get(url, headers), symbolize_names:true)[:list].map do |node|
79
+ response = JSON.parse(RestClient.get(url, headers), symbolize_names:true)
80
+ response[:list].map do |node|
84
81
  klass.new(node)
85
82
  end
86
83
  end
@@ -0,0 +1,34 @@
1
+ require 'base64'
2
+ require 'active_support/concern'
3
+
4
+ module Ahub
5
+ module Deletable
6
+ extend ActiveSupport::Concern
7
+
8
+ included do
9
+ alias_method :restore, :undelete
10
+ end
11
+
12
+ def delete(headers:)
13
+ self.class.update_node(action: :delete, node_id: id, headers: headers)
14
+ end
15
+
16
+ def undelete(headers:)
17
+ self.class.update_node(action: :undelete, node_id: id, headers: headers)
18
+ end
19
+
20
+ class_methods do
21
+ def update_node(action:, node_id:, headers:)
22
+ raise Exception.new('Unknown Action: use :delete or :undelete') unless %i(delete undelete).include?(action)
23
+ url = "#{Ahub::DOMAIN}/services/v2/node/#{node_id}/#{action}.json"
24
+
25
+ begin
26
+ response = RestClient.put(url, {}.to_json, headers)
27
+ response.code == 200
28
+ rescue Exception => e
29
+ false
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
data/lib/ahub/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Ahub
2
- VERSION = "0.9.0"
2
+ VERSION = "0.10.0"
3
3
  end
data/lib/ahub.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  require 'dotenv'
2
2
  require 'rest_client'
3
3
  require 'ahub/modules/api_resource'
4
+ require 'ahub/modules/deletable'
4
5
  require 'ahub/version'
5
6
  require 'ahub/user'
6
7
  require 'ahub/question'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ahub
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.0
4
+ version: 0.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Abel Martin
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-11-23 00:00:00.000000000 Z
11
+ date: 2015-11-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -148,6 +148,7 @@ files:
148
148
  - lib/ahub/answer.rb
149
149
  - lib/ahub/group.rb
150
150
  - lib/ahub/modules/api_resource.rb
151
+ - lib/ahub/modules/deletable.rb
151
152
  - lib/ahub/question.rb
152
153
  - lib/ahub/space.rb
153
154
  - lib/ahub/topic.rb