Module: AzureManagedDisk

Includes:
AzureDiskCommon
Defined in:
lib/disk/modules/AzureManagedDisk.rb

Constant Summary

Constants included from AzureDiskCommon

AzureDiskCommon::MAX_READ_LEN, AzureDiskCommon::SECTOR_LENGTH

Class Method Summary collapse

Instance Method Summary collapse

Methods included from AzureDiskCommon

#blob_properties, #blob_read, #d_close_common, #d_init_blob_disk, #d_init_common, #d_init_managed_disk, #d_read_common, #key, #managed_disk

Class Method Details

.new(svc, disk_name, dInfo = nil) ⇒ Object



7
8
9
10
11
12
13
14
# File 'lib/disk/modules/AzureManagedDisk.rb', line 7

def self.new(svc, disk_name, dInfo = nil)
  d_info = dInfo || OpenStruct.new
  d_info.storage_disk_svc = svc
  d_info.disk_name        = disk_name
  d_info.fileName         = disk_name

  MiqDisk.new(self, d_info, 0)
end

Instance Method Details

#d_closeObject



25
26
27
# File 'lib/disk/modules/AzureManagedDisk.rb', line 25

def d_close
  d_close_common
end

#d_initObject



16
17
18
19
20
21
22
23
# File 'lib/disk/modules/AzureManagedDisk.rb', line 16

def d_init
  @diskType         = "azure-managed"
  @blockSize        = SECTOR_LENGTH
  @disk_name        = @dInfo.disk_name
  @storage_disk_svc = @dInfo.storage_disk_svc
  @resource_group   = @dInfo.resource_group
  d_init_common(@dInfo)
end

#d_read(pos, len) ⇒ Object



29
30
31
32
# File 'lib/disk/modules/AzureManagedDisk.rb', line 29

def d_read(pos, len)
  $log.debug("AzureManagedDisk#d_read(#{pos}, #{len})")
  d_read_common(pos, len)
end

#d_sizeObject



34
35
36
# File 'lib/disk/modules/AzureManagedDisk.rb', line 34

def d_size
  @d_size ||= blob_headers[:content_range].split("/")[1].to_i
end

#d_write(_pos, _buf, _len) ⇒ Object



38
39
40
# File 'lib/disk/modules/AzureManagedDisk.rb', line 38

def d_write(_pos, _buf, _len)
  raise "Write operation not supported."
end