30 lines
539 B
Go
30 lines
539 B
Go
package disks
|
|
|
|
import (
|
|
"finally-a-monolithic-linux-hw-monitor/app/common"
|
|
"finally-a-monolithic-linux-hw-monitor/app/disks/drivers"
|
|
)
|
|
|
|
type Disks struct {
|
|
drivers []common.Driver
|
|
}
|
|
|
|
func GetDisks() (Disks, error) {
|
|
disks := Disks{}
|
|
disks.drivers = []common.Driver{}
|
|
|
|
smart, err := drivers.NewSMARTDriver()
|
|
if err == nil {
|
|
disks.drivers = append(disks.drivers, smart)
|
|
}
|
|
|
|
return disks, nil
|
|
}
|
|
|
|
func (mem *Disks) Render(term common.Terminal) {
|
|
term.Header("Disks")
|
|
for _, driver := range mem.drivers {
|
|
driver.Render(term)
|
|
}
|
|
}
|