arena 0.1.0 → 0.1.1

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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 1ff2ee6a8ae7cbd5e1f5338814b3240249de79e0
4
+ data.tar.gz: 7a6dad62d2f1e6b4006378e70d2bbb8f663c974d
5
+ SHA512:
6
+ metadata.gz: c24cbb7bf757fe5d5a451ad0ecb00a99d0462a34fff68dd9d0cb38f08999870b6bb99e58caef3d1cea5ca9d714c23be1f2bf888517ecce35424fdf9dc779933e
7
+ data.tar.gz: 11dabfbd36bd6e1ea49643972dcf28f3431bc2d654187e26b487e7b71f924049f0f41fd7370e13d4605ce578c978021a6ebc4c19f3327d965e3c06d6ff10de70
data/README.md CHANGED
@@ -16,7 +16,7 @@ Or install it yourself as:
16
16
 
17
17
  ## Usage
18
18
 
19
- Register an application at http://dev.are.na
19
+ Register an application at [http://dev.are.na](http://dev.are.na).
20
20
 
21
21
  ### Configure for personal use (optional; be aware this grants access to everything your account has access to)
22
22
  ```ruby
data/arena.gemspec CHANGED
@@ -3,10 +3,10 @@ require File.expand_path('../lib/arena/version', __FILE__)
3
3
 
4
4
  Gem::Specification.new do |gem|
5
5
  gem.authors = ["dzuc"]
6
- gem.email = ["everyone@are.na"]
6
+ gem.email = ["everyone@aredotna.com"]
7
7
  gem.description = "Wrapper for Arena's API"
8
8
  gem.summary = "Wrapper for Arena's API"
9
- gem.homepage = "http://are.na/"
9
+ gem.homepage = "http://www.aredotna.com/"
10
10
 
11
11
  gem.files = `git ls-files`.split($\)
12
12
  gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
data/lib/arena.rb CHANGED
@@ -11,7 +11,7 @@ module Arena
11
11
  # Delegate to a Arena::Client
12
12
  #
13
13
  # @return [Arena::Client]
14
- #
14
+ #
15
15
  def client
16
16
  if @client
17
17
  @client
data/lib/arena/api.rb CHANGED
@@ -6,6 +6,7 @@ require "arena/search_results"
6
6
  require "arena/account"
7
7
  require "arena/comment"
8
8
  require "arena/feed"
9
+ require "arena/channel_feed"
9
10
 
10
11
  module Arena
11
12
  module API
@@ -44,6 +45,11 @@ module Arena
44
45
  object_from_response(Arena::ChannelResults, :get, "/channels/#{id}/channels", options)
45
46
  end
46
47
 
48
+ # Returns a paginated feed for a given Channel
49
+ def channel_feed(id, options={})
50
+ object_from_response(Arena::ChannelFeed, :get, "/channel/#{id}/feed", options)
51
+ end
52
+
47
53
  # Returns a full Block representation
48
54
  def block(id, options={})
49
55
  object_from_response(Arena::Block, :get, "/blocks/#{id}", options)
@@ -0,0 +1,21 @@
1
+ require "arena/base"
2
+ require "arena/story"
3
+
4
+ module Arena
5
+ class ChannelFeed < Arena::Base
6
+ attr_reader :type, :limit, :total, :offset, :range_start, :range_end
7
+
8
+ def stories
9
+ @stories ||= @attrs["items"].collect { |item| Arena::Story.new(item) } if stories?
10
+ end
11
+
12
+ alias items stories
13
+
14
+ private
15
+
16
+ def stories?
17
+ !@attrs["items"].nil?
18
+ end
19
+
20
+ end # Feed
21
+ end # Arena
data/lib/arena/client.rb CHANGED
@@ -17,11 +17,11 @@ module Arena
17
17
  end
18
18
 
19
19
  # Performs HTTP GET POST PUT and DELETE requests
20
- #
20
+ #
21
21
  %w(get post put delete).each do |method|
22
22
  define_method method do |path, options={}|
23
23
  options = { query: options, headers: set_headers }
24
-
24
+
25
25
  request(__method__, path, options)
26
26
  end
27
27
  end
@@ -43,7 +43,7 @@ module Arena
43
43
  end
44
44
 
45
45
  def error_message(response)
46
- "#{response['status']['code']}: #{response['status']['message']} - #{response['status']['description']}"
46
+ "#{response['code']}: #{response['message']} - #{response['description']}"
47
47
  end
48
48
 
49
49
  def request(method, path, options)
@@ -51,10 +51,10 @@ module Arena
51
51
  parsed = JSON.parse(response.body)
52
52
 
53
53
  raise Arena::Error.new(error_message(parsed)) if error?(response)
54
-
54
+
55
55
  parsed
56
56
  rescue JSON::ParserError, TypeError
57
57
  nil
58
58
  end
59
59
  end
60
- end
60
+ end
data/lib/arena/default.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  module Arena
2
2
  module Default
3
- BASE_DOMAIN = "api.are.na" unless defined? BASE_DOMAIN
3
+ BASE_DOMAIN = "arena-api.herokuapp.com" unless defined? BASE_DOMAIN
4
4
  API_VERSION = "v2" unless defined? API_VERSION
5
5
  USE_CACHING = false unless defined? USE_CACHING
6
6
  EXPIRES_IN = 600 unless defined? EXPIRES_IN # 10 minutes
data/lib/arena/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Arena
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
 
4
4
  def self.version
5
5
  VERSION
metadata CHANGED
@@ -1,72 +1,65 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: arena
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
5
- prerelease:
4
+ version: 0.1.1
6
5
  platform: ruby
7
6
  authors:
8
7
  - dzuc
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-05-21 00:00:00.000000000 Z
11
+ date: 2018-05-29 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rake
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
19
  version: '0'
22
20
  type: :development
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - ">="
28
25
  - !ruby/object:Gem::Version
29
26
  version: '0'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: json
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - ">="
36
32
  - !ruby/object:Gem::Version
37
33
  version: '0'
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - ">="
44
39
  - !ruby/object:Gem::Version
45
40
  version: '0'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: httparty
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - ">="
52
46
  - !ruby/object:Gem::Version
53
47
  version: '0'
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - ">="
60
53
  - !ruby/object:Gem::Version
61
54
  version: '0'
62
55
  description: Wrapper for Arena's API
63
56
  email:
64
- - everyone@are.na
57
+ - everyone@aredotna.com
65
58
  executables: []
66
59
  extensions: []
67
60
  extra_rdoc_files: []
68
61
  files:
69
- - .gitignore
62
+ - ".gitignore"
70
63
  - Gemfile
71
64
  - LICENSE
72
65
  - README.md
@@ -83,6 +76,7 @@ files:
83
76
  - lib/arena/cache/adaptor/padrino.rb
84
77
  - lib/arena/cache/adaptor/rails.rb
85
78
  - lib/arena/channel.rb
79
+ - lib/arena/channel_feed.rb
86
80
  - lib/arena/client.rb
87
81
  - lib/arena/comment.rb
88
82
  - lib/arena/configurable.rb
@@ -111,29 +105,28 @@ files:
111
105
  - lib/arena/version.rb
112
106
  - test/lib/arena/version_test.rb
113
107
  - test/test_helper.rb
114
- homepage: http://are.na/
108
+ homepage: http://www.aredotna.com/
115
109
  licenses: []
110
+ metadata: {}
116
111
  post_install_message:
117
112
  rdoc_options: []
118
113
  require_paths:
119
114
  - lib
120
115
  required_ruby_version: !ruby/object:Gem::Requirement
121
- none: false
122
116
  requirements:
123
- - - ! '>='
117
+ - - ">="
124
118
  - !ruby/object:Gem::Version
125
119
  version: '0'
126
120
  required_rubygems_version: !ruby/object:Gem::Requirement
127
- none: false
128
121
  requirements:
129
- - - ! '>='
122
+ - - ">="
130
123
  - !ruby/object:Gem::Version
131
124
  version: '0'
132
125
  requirements: []
133
126
  rubyforge_project:
134
- rubygems_version: 1.8.25
127
+ rubygems_version: 2.6.8
135
128
  signing_key:
136
- specification_version: 3
129
+ specification_version: 4
137
130
  summary: Wrapper for Arena's API
138
131
  test_files:
139
132
  - test/lib/arena/version_test.rb