start building out different commands in main()
This commit is contained in:
+53
-5
@@ -8,12 +8,14 @@ package main
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"net/url"
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
|
|
||||||
"github.com/mitchellh/go-homedir"
|
"github.com/mitchellh/go-homedir"
|
||||||
|
|
||||||
"golang.nytpu.com/comitium/core"
|
"golang.nytpu.com/comitium/core"
|
||||||
|
"golang.nytpu.com/comitium/fetch"
|
||||||
)
|
)
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
@@ -54,14 +56,60 @@ func main() {
|
|||||||
|
|
||||||
switch os.Args[1] {
|
switch os.Args[1] {
|
||||||
case "refresh":
|
case "refresh":
|
||||||
fmt.Println("Refresh")
|
if len(c.Args()) != 0 {
|
||||||
|
fmt.Fprint(os.Stderr, "\"refresh\" doesn't take an argument!\n\n")
|
||||||
|
usage()
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
// TODO
|
||||||
|
fmt.Fprintln(os.Stderr, "Not Yet Implemented")
|
||||||
case "list":
|
case "list":
|
||||||
fmt.Println("List")
|
if len(c.Args()) != 0 {
|
||||||
|
fmt.Fprint(os.Stderr, "\"list\" doesn't take an argument!\n\n")
|
||||||
|
usage()
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
// TODO
|
||||||
|
fmt.Fprintln(os.Stderr, "Not Yet Implemented")
|
||||||
case "add":
|
case "add":
|
||||||
fmt.Println("Add")
|
if len(c.Args()) < 1 {
|
||||||
fmt.Printf("Format: %v\n", *addTypeFlag)
|
fmt.Fprint(os.Stderr, "Please provide a URL to add.\n\n")
|
||||||
|
usage()
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
remote, err := url.Parse(c.Arg(0))
|
||||||
|
if err != nil {
|
||||||
|
fmt.Fprintf(os.Stderr, "Error parsing URL: %v\n", err)
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
if !*addTypeFlag {
|
||||||
|
// feed
|
||||||
|
err = fetch.Feed(&core.Data, remote, c.Arg(1))
|
||||||
|
if err != nil {
|
||||||
|
fmt.Fprintf(os.Stderr, "Error adding feed: %v\n", err)
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// page
|
||||||
|
err = fetch.Page(&core.Data, remote, c.Arg(1))
|
||||||
|
if err != nil {
|
||||||
|
fmt.Fprintf(os.Stderr, "Error adding page: %v\n", err)
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
err = core.Data.WriteJSON(dataPath)
|
||||||
|
if err != nil {
|
||||||
|
fmt.Fprintf(os.Stderr, "Error writing json: %v\n", err)
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
case "remove":
|
case "remove":
|
||||||
fmt.Println("Remove")
|
if len(c.Args()) < 1 {
|
||||||
|
fmt.Fprint(os.Stderr, "Please provide a URL to remove.\n\n")
|
||||||
|
usage()
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
// TODO
|
||||||
|
fmt.Fprintln(os.Stderr, "Not Yet Implemented")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user