Class: Strobe::Resources::Application::PackFile
- Inherits:
-
Object
- Object
- Strobe::Resources::Application::PackFile
- Defined in:
- lib/strobe/resources/application.rb
Class Method Summary collapse
Instance Method Summary collapse
- #each(*args, &blk) ⇒ Object
- #eof ⇒ Object (also: #eof?)
- #file(path, body) ⇒ Object
- #headers ⇒ Object
-
#initialize(opts) ⇒ PackFile
constructor
A new instance of PackFile.
- #pos ⇒ Object
- #read(*args) ⇒ Object
- #rewind ⇒ Object
- #seek(*args) ⇒ Object
- #size ⇒ Object
- #to_io ⇒ Object
Constructor Details
#initialize(opts) ⇒ PackFile
Returns a new instance of PackFile.
216 217 218 219 220 |
# File 'lib/strobe/resources/application.rb', line 216 def initialize(opts) @opts = opts @files = [] @callback = opts[:callback] end |
Class Method Details
.build(opts) {|inst| ... } ⇒ Object
210 211 212 213 214 |
# File 'lib/strobe/resources/application.rb', line 210 def self.build(opts) inst = new(opts) yield inst inst end |
Instance Method Details
#each(*args, &blk) ⇒ Object
235 236 237 |
# File 'lib/strobe/resources/application.rb', line 235 def each(*args, &blk) to_io.each(*args, &blk) end |
#eof ⇒ Object Also known as: eof?
267 268 269 |
# File 'lib/strobe/resources/application.rb', line 267 def eof to_io.eof end |
#file(path, body) ⇒ Object
222 223 224 |
# File 'lib/strobe/resources/application.rb', line 222 def file(path, body) @files << [path, body] end |
#headers ⇒ Object
226 227 228 229 230 231 232 233 |
# File 'lib/strobe/resources/application.rb', line 226 def headers { 'Content-Type' => 'application/x-strobe-deploy', 'Content-Length' => size.to_s, 'Content-Encoding' => 'deflate', 'X-Strobe-Deploy-Protocol-Version' => '2' } end |
#pos ⇒ Object
259 260 261 |
# File 'lib/strobe/resources/application.rb', line 259 def pos to_io.pos end |
#read(*args) ⇒ Object
239 240 241 242 243 244 245 246 247 248 249 |
# File 'lib/strobe/resources/application.rb', line 239 def read(*args) ret = to_io.read(*args) if @callback && ret @callback.upload_progress(pos.to_f / size.to_f) elsif @callback @callback.upload_complete end ret end |
#rewind ⇒ Object
251 252 253 |
# File 'lib/strobe/resources/application.rb', line 251 def rewind to_io.rewind end |
#seek(*args) ⇒ Object
255 256 257 |
# File 'lib/strobe/resources/application.rb', line 255 def seek(*args) to_io.seek(*args) end |
#size ⇒ Object
263 264 265 |
# File 'lib/strobe/resources/application.rb', line 263 def size to_io.size end |
#to_io ⇒ Object
273 274 275 |
# File 'lib/strobe/resources/application.rb', line 273 def to_io @to_io ||= StringIO.new(to_s) end |