active_fedora_streamable 0.1.0 → 0.2.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.
data/README.textile CHANGED
@@ -3,7 +3,7 @@ An ActiveFedora mixin that allows a datastream dissemination response to be stre
3
3
  Include the mixin in your ActiveFedora::Datastream subclass:
4
4
 
5
5
  bc. class BigData < ActiveFedora::Datastream
6
- include ActiveFedora::Datastreams::Streamable
6
+ include ActiveFedora::Streamable::Datastreams
7
7
  end
8
8
 
9
9
  bc. class DataContainer < ActiveFedora::Base
@@ -1,10 +1,10 @@
1
1
  # -*- encoding: utf-8 -*-
2
2
  $:.push File.expand_path("../lib", __FILE__)
3
- require "active_fedora_streamable"
3
+ require "active_fedora_streamable/version"
4
4
 
5
5
  Gem::Specification.new do |s|
6
6
  s.name = "active_fedora_streamable"
7
- s.version = ActiveFedora::Datastreams::Streamable::VERSION
7
+ s.version = ActiveFedora::Streamable::Datastreams::VERSION
8
8
  s.platform = Gem::Platform::RUBY
9
9
  s.authors = ["Benjamin Armintor"]
10
10
  s.email = ["armintor@gmail.com"]
@@ -16,7 +16,7 @@ Gem::Specification.new do |s|
16
16
 
17
17
  s.add_dependency('active-fedora', '>=4.2.0')
18
18
  s.add_dependency("activesupport", '~>3.2.0')
19
- s.add_dependency("rubydora", '~>0.5.9')
19
+ s.add_dependency("rubydora", '~>0.5.11')
20
20
  s.add_development_dependency("yard")
21
21
  s.add_development_dependency("RedCloth") # for RDoc formatting
22
22
  s.add_development_dependency("rake")
@@ -1,29 +1,29 @@
1
1
  require 'active-fedora'
2
- module ActiveFedora::Datastreams
2
+ module ActiveFedora
3
3
  module Streamable
4
- VERSION = '0.1.0'
5
- # the output of this method should be assigned to the response_body of a controller
6
- # the bytes returned from the datastream dissemination will be written to the response
7
- # piecemeal rather than being loaded into memory as a String
8
- def stream(controller, parms=Hash.new)
9
- parms = {:dsid=>self.dsid, :pid=>self.pid, :finished=>false}.merge parms
10
- controller.headers['Last-Modified'] = self.lastModifiedDate || Time.now.ctime.to_s
11
- if self.dsSize
12
- controller.headers['Content-Length'] = self.dsSize.to_s
13
- else
14
- controller.headers['Transfer-Encoding'] = 'chunked'
15
- end
16
- #controller.response_body = ActiveFedora::Datastreams::Streamable::Streamer.new parms
17
- controller.response_body = Enumerator.new do |blk|
18
- repo = ActiveFedora::Base.connection_for_pid(parms[:pid])
19
- repo.datastream_dissemination(parms) do |res|
20
- res.read_body do |seg|
21
- blk << seg
4
+ module Datastreams
5
+ # the output of this method should be assigned to the response_body of a controller
6
+ # the bytes returned from the datastream dissemination will be written to the response
7
+ # piecemeal rather than being loaded into memory as a String
8
+ def stream(controller, parms=Hash.new)
9
+ parms = {:dsid=>self.dsid, :pid=>self.pid, :finished=>false}.merge parms
10
+ controller.headers['Last-Modified'] = self.lastModifiedDate || Time.now.ctime.to_s
11
+ if self.dsSize
12
+ controller.headers['Content-Length'] = self.dsSize.to_s
13
+ else
14
+ controller.headers['Transfer-Encoding'] = 'chunked'
15
+ end
16
+ #controller.response_body = ActiveFedora::Datastreams::Streamable::Streamer.new parms
17
+ controller.response_body = Enumerator.new do |blk|
18
+ repo = ActiveFedora::Base.connection_for_pid(parms[:pid])
19
+ repo.datastream_dissemination(parms) do |res|
20
+ res.read_body do |seg|
21
+ blk << seg
22
+ end
22
23
  end
23
- # this is a hack for https://github.com/archiloque/rest-client/issues/134
24
- repo.client.options.delete :block_response
25
24
  end
26
25
  end
26
+ require 'active_fedora_streamable/version'
27
27
  end
28
28
  end
29
29
  end
metadata CHANGED
@@ -1,155 +1,154 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: active_fedora_streamable
3
- version: !ruby/object:Gem::Version
4
- hash: 27
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.0
5
5
  prerelease:
6
- segments:
7
- - 0
8
- - 1
9
- - 0
10
- version: 0.1.0
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Benjamin Armintor
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2012-07-19 00:00:00 Z
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
12
+ date: 2012-07-20 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
21
15
  name: active-fedora
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
24
- none: false
25
- requirements:
26
- - - ">="
27
- - !ruby/object:Gem::Version
28
- hash: 55
29
- segments:
30
- - 4
31
- - 2
32
- - 0
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
33
21
  version: 4.2.0
34
22
  type: :runtime
35
- version_requirements: *id001
36
- - !ruby/object:Gem::Dependency
37
- name: activesupport
38
23
  prerelease: false
39
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: !ruby/object:Gem::Requirement
40
25
  none: false
41
- requirements:
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: 4.2.0
30
+ - !ruby/object:Gem::Dependency
31
+ name: activesupport
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
42
35
  - - ~>
43
- - !ruby/object:Gem::Version
44
- hash: 15
45
- segments:
46
- - 3
47
- - 2
48
- - 0
36
+ - !ruby/object:Gem::Version
49
37
  version: 3.2.0
50
38
  type: :runtime
51
- version_requirements: *id002
52
- - !ruby/object:Gem::Dependency
53
- name: rubydora
54
39
  prerelease: false
55
- requirement: &id003 !ruby/object:Gem::Requirement
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: 3.2.0
46
+ - !ruby/object:Gem::Dependency
47
+ name: rubydora
48
+ requirement: !ruby/object:Gem::Requirement
56
49
  none: false
57
- requirements:
50
+ requirements:
58
51
  - - ~>
59
- - !ruby/object:Gem::Version
60
- hash: 25
61
- segments:
62
- - 0
63
- - 5
64
- - 9
65
- version: 0.5.9
52
+ - !ruby/object:Gem::Version
53
+ version: 0.5.11
66
54
  type: :runtime
67
- version_requirements: *id003
68
- - !ruby/object:Gem::Dependency
69
- name: yard
70
55
  prerelease: false
71
- requirement: &id004 !ruby/object:Gem::Requirement
72
- none: false
73
- requirements:
74
- - - ">="
75
- - !ruby/object:Gem::Version
76
- hash: 3
77
- segments:
78
- - 0
79
- version: "0"
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: 0.5.11
62
+ - !ruby/object:Gem::Dependency
63
+ name: yard
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
80
70
  type: :development
81
- version_requirements: *id004
82
- - !ruby/object:Gem::Dependency
83
- name: RedCloth
84
71
  prerelease: false
85
- requirement: &id005 !ruby/object:Gem::Requirement
86
- none: false
87
- requirements:
88
- - - ">="
89
- - !ruby/object:Gem::Version
90
- hash: 3
91
- segments:
92
- - 0
93
- version: "0"
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
78
+ - !ruby/object:Gem::Dependency
79
+ name: RedCloth
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ! '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
94
86
  type: :development
95
- version_requirements: *id005
96
- - !ruby/object:Gem::Dependency
97
- name: rake
98
87
  prerelease: false
99
- requirement: &id006 !ruby/object:Gem::Requirement
100
- none: false
101
- requirements:
102
- - - ">="
103
- - !ruby/object:Gem::Version
104
- hash: 3
105
- segments:
106
- - 0
107
- version: "0"
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ - !ruby/object:Gem::Dependency
95
+ name: rake
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ! '>='
100
+ - !ruby/object:Gem::Version
101
+ version: '0'
108
102
  type: :development
109
- version_requirements: *id006
110
- - !ruby/object:Gem::Dependency
111
- name: rspec
112
103
  prerelease: false
113
- requirement: &id007 !ruby/object:Gem::Requirement
114
- none: false
115
- requirements:
116
- - - ">="
117
- - !ruby/object:Gem::Version
118
- hash: 43
119
- segments:
120
- - 2
121
- - 9
122
- - 0
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ - !ruby/object:Gem::Dependency
111
+ name: rspec
112
+ requirement: !ruby/object:Gem::Requirement
113
+ none: false
114
+ requirements:
115
+ - - ! '>='
116
+ - !ruby/object:Gem::Version
123
117
  version: 2.9.0
124
118
  type: :development
125
- version_requirements: *id007
126
- - !ruby/object:Gem::Dependency
127
- name: mocha
128
119
  prerelease: false
129
- requirement: &id008 !ruby/object:Gem::Requirement
130
- none: false
131
- requirements:
132
- - - "="
133
- - !ruby/object:Gem::Version
134
- hash: 61
135
- segments:
136
- - 0
137
- - 10
138
- - 5
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ! '>='
124
+ - !ruby/object:Gem::Version
125
+ version: 2.9.0
126
+ - !ruby/object:Gem::Dependency
127
+ name: mocha
128
+ requirement: !ruby/object:Gem::Requirement
129
+ none: false
130
+ requirements:
131
+ - - '='
132
+ - !ruby/object:Gem::Version
139
133
  version: 0.10.5
140
134
  type: :development
141
- version_requirements: *id008
142
- description: An ActiveFedora mixin that allows a datastream dissemination response to be streamed back in blocks without reading all content into memory.
143
- email:
135
+ prerelease: false
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - '='
140
+ - !ruby/object:Gem::Version
141
+ version: 0.10.5
142
+ description: An ActiveFedora mixin that allows a datastream dissemination response
143
+ to be streamed back in blocks without reading all content into memory.
144
+ email:
144
145
  - armintor@gmail.com
145
146
  executables: []
146
-
147
147
  extensions: []
148
-
149
- extra_rdoc_files:
148
+ extra_rdoc_files:
150
149
  - LICENSE.txt
151
150
  - README.textile
152
- files:
151
+ files:
153
152
  - Gemfile
154
153
  - LICENSE.txt
155
154
  - README.textile
@@ -157,37 +156,28 @@ files:
157
156
  - lib/active_fedora_streamable.rb
158
157
  homepage: https://github.com/cul/active_fedora_streamable
159
158
  licenses: []
160
-
161
159
  post_install_message:
162
160
  rdoc_options: []
163
-
164
- require_paths:
161
+ require_paths:
165
162
  - lib
166
- required_ruby_version: !ruby/object:Gem::Requirement
163
+ required_ruby_version: !ruby/object:Gem::Requirement
167
164
  none: false
168
- requirements:
169
- - - ">="
170
- - !ruby/object:Gem::Version
171
- hash: 3
172
- segments:
173
- - 0
174
- version: "0"
175
- required_rubygems_version: !ruby/object:Gem::Requirement
165
+ requirements:
166
+ - - ! '>='
167
+ - !ruby/object:Gem::Version
168
+ version: '0'
169
+ required_rubygems_version: !ruby/object:Gem::Requirement
176
170
  none: false
177
- requirements:
178
- - - ">="
179
- - !ruby/object:Gem::Version
180
- hash: 3
181
- segments:
182
- - 0
183
- version: "0"
171
+ requirements:
172
+ - - ! '>='
173
+ - !ruby/object:Gem::Version
174
+ version: '0'
184
175
  requirements: []
185
-
186
176
  rubyforge_project:
187
177
  rubygems_version: 1.8.24
188
178
  signing_key:
189
179
  specification_version: 3
190
- summary: An ActiveFedora mixin that allows a datastream dissemination response to be streamed back
180
+ summary: An ActiveFedora mixin that allows a datastream dissemination response to
181
+ be streamed back
191
182
  test_files: []
192
-
193
183
  has_rdoc: