Class: CephRuby::RadosAIOObject

Inherits:
RadosObject show all
Defined in:
lib/ceph-ruby/rados_aio_object.rb

Overview

Asynchronous object operations on Rados Object

Instance Attribute Summary collapse

Attributes inherited from RadosObject

#name, #pool

Instance Method Summary collapse

Methods inherited from RadosObject

#<=>, #eql?, #exists?, #log, #mtime, #overwrite, #read_full, #resize, #size, stat_hash, #xattr, #xattr_enumerator

Constructor Details

#initialize(pool, name) ⇒ RadosAIOObject

Returns a new instance of RadosAIOObject.



6
7
8
9
# File 'lib/ceph-ruby/rados_aio_object.rb', line 6

def initialize(pool, name)
  super(pool, name)
  self.completions = []
end

Instance Attribute Details

#completionsObject

Returns the value of attribute completions.



4
5
6
# File 'lib/ceph-ruby/rados_aio_object.rb', line 4

def completions
  @completions
end

Instance Method Details

#append(completion, _data) ⇒ Object



25
26
27
# File 'lib/ceph-ruby/rados_aio_object.rb', line 25

def append(completion, _data)
  completions << completion
end

#cancel(completion) ⇒ Object



33
34
35
# File 'lib/ceph-ruby/rados_aio_object.rb', line 33

def cancel(completion)
  completions << completion
end

#destroy(completion) ⇒ Object



21
22
23
# File 'lib/ceph-ruby/rados_aio_object.rb', line 21

def destroy(completion)
  completions << completion
end

#read(completion, _offset, _size) ⇒ Object



11
12
13
# File 'lib/ceph-ruby/rados_aio_object.rb', line 11

def read(completion, _offset, _size)
  completions << completion
end

#stat(completion) ⇒ Object



29
30
31
# File 'lib/ceph-ruby/rados_aio_object.rb', line 29

def stat(completion)
  completions << completion
end

#write(completion, _offset, data) ⇒ Object



15
16
17
18
19
# File 'lib/ceph-ruby/rados_aio_object.rb', line 15

def write(completion, _offset, data)
  completions << completion
  size = data.size
  p size
end