Class: Bootloader::DeviceMap
- Inherits:
-
Object
- Object
- Bootloader::DeviceMap
- Extended by:
- Forwardable
- Includes:
- Yast::Logger
- Defined in:
- src/lib/bootloader/device_map.rb
Overview
Class representing grub device map structure
Constant Summary
Instance Method Summary (collapse)
- - (Object) clear_mapping
- - (Boolean) contain_disk?(disk)
- - (Object) disks_order
- - (Boolean) empty?
-
- (DeviceMap) initialize
constructor
A new instance of DeviceMap.
- - (Object) propose
- - (Object) read
- - (Object) size
- - (Object) to_hash
- - (Object) to_s
- - (Object) write
Constructor Details
- (DeviceMap) initialize
Returns a new instance of DeviceMap
18 19 20 21 22 23 24 25 |
# File 'src/lib/bootloader/device_map.rb', line 18 def initialize # lazy load to avoid circular dependencies Yast.import "Arch" Yast.import "BootStorage" Yast.import "Mode" Yast.import "Storage" @model = CFA::Grub2::DeviceMap.new end |
Instance Method Details
- (Object) clear_mapping
48 49 50 51 52 |
# File 'src/lib/bootloader/device_map.rb', line 48 def clear_mapping grub_devices.each do |grub_dev| remove_mapping(grub_dev) end end |
- (Boolean) contain_disk?(disk)
54 55 56 57 58 59 |
# File 'src/lib/bootloader/device_map.rb', line 54 def contain_disk?(disk) disk = grub_device_for(disk) || grub_device_for(::Bootloader::UdevMapping.to_mountby_device(disk)) !disk.nil? end |
- (Object) disks_order
61 62 63 |
# File 'src/lib/bootloader/device_map.rb', line 61 def disks_order sorted_disks.map { |d| system_device_for(d) } end |
- (Boolean) empty?
44 45 46 |
# File 'src/lib/bootloader/device_map.rb', line 44 def empty? size == 0 end |
- (Object) propose
65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
# File 'src/lib/bootloader/device_map.rb', line 65 def propose @model = CFA::Grub2::DeviceMap.new if Yast::Mode.config log.info("Skipping device map proposing in Config mode") return end fill_mapping order_boot_device reduce_to_bios_limit end |
- (Object) read
31 32 33 |
# File 'src/lib/bootloader/device_map.rb', line 31 def read @model.load end |
- (Object) size
40 41 42 |
# File 'src/lib/bootloader/device_map.rb', line 40 def size grub_devices.size end |
- (Object) to_hash
80 81 82 |
# File 'src/lib/bootloader/device_map.rb', line 80 def to_hash grub_devices.each_with_object({}) { |k, r| r[k] = system_device_for(k) } end |
- (Object) to_s
27 28 29 |
# File 'src/lib/bootloader/device_map.rb', line 27 def to_s "Device Map: #{to_hash}" end |
- (Object) write
35 36 37 38 |
# File 'src/lib/bootloader/device_map.rb', line 35 def write log.info "writing device map: #{self}" @model.save end |