package main

import (
	"bufio"
	"flag"
	"fmt"
	"github.com/oz123/gupta"
	"log"
	"os"
	"time"
)

func main() {
	var freq int
	var partition, netInterface string
	var load, memory, cpu bool

	flag.IntVar(&freq, "frequency", 5, "Frequency of polling in secods")
	flag.IntVar(&freq, "f", 5, "Frequency of polling in secods")
	flag.BoolVar(&memory, "m", false, "Poll memory")
	flag.BoolVar(&load, "l", false, "Poll load")
	flag.BoolVar(&cpu, "c", false, "poll CPU usage")
	flag.StringVar(&partition, "p", "", "Poll disk usage (partition)")
	flag.StringVar(&netInterface, "n", "", "Network usage (interface)")

	flag.Parse()
	f, err := os.Open("/proc/stat")
	defer f.Close()
	rd := bufio.NewReader(f)
	line, err := rd.ReadString('\n')
	if err != nil {
		log.Fatalf("could not read /proc/stat, error: %v", err)
	}

	fmt.Println(gupta.Hello())

	for true {
		cpustat := gupta.NewCPUStat(line)
		fmt.Printf("cpustat %d\n", cpustat.User)
		time.Sleep(time.Duration(freq) * time.Second)
	}
}