switch from Fatalf to Panicf
This commit is contained in:
parent
a36fccfa1f
commit
9e605e34b1
47
main.go
47
main.go
@ -15,7 +15,6 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
var dbpool *pgxpool.Pool
|
var dbpool *pgxpool.Pool
|
||||||
|
|
||||||
var uploadFolder string
|
var uploadFolder string
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
@ -38,7 +37,7 @@ func main() {
|
|||||||
`
|
`
|
||||||
_, err = dbpool.Exec(context.Background(), sqlStmt)
|
_, err = dbpool.Exec(context.Background(), sqlStmt)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatalf("main: create table: %v\n", err)
|
log.Panicf("main: %v\n", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
faker := faker.New()
|
faker := faker.New()
|
||||||
@ -46,13 +45,13 @@ func main() {
|
|||||||
for i := 0; i < 10; i++ {
|
for i := 0; i < 10; i++ {
|
||||||
_, err = dbpool.Exec(context.Background(), "insert into videos(filepath) values($1)", faker.File().AbsoluteFilePathForUnix(2))
|
_, err = dbpool.Exec(context.Background(), "insert into videos(filepath) values($1)", faker.File().AbsoluteFilePathForUnix(2))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatalf("main: fill with fake data: %v\n", err)
|
log.Panicf("main: %v\n", err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
currentDir, err := os.Getwd()
|
currentDir, err := os.Getwd()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatalf("main: %v\n", err)
|
log.Panicf("main: %v\n", err)
|
||||||
}
|
}
|
||||||
uploadFolder = fmt.Sprintf("%s/videos", currentDir)
|
uploadFolder = fmt.Sprintf("%s/videos", currentDir)
|
||||||
|
|
||||||
@ -84,7 +83,7 @@ func initUpload(c *gin.Context) {
|
|||||||
err = rows.Scan(&filepath)
|
err = rows.Scan(&filepath)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
c.JSON(http.StatusInternalServerError, "")
|
c.JSON(http.StatusInternalServerError, "")
|
||||||
log.Fatalf("initUpload: %v\n", err)
|
log.Panicf("initUpload: %v\n", err)
|
||||||
}
|
}
|
||||||
if filepath == fmt.Sprintf("%s/%s", uploadFolder, fileName) {
|
if filepath == fmt.Sprintf("%s/%s", uploadFolder, fileName) {
|
||||||
c.JSON(http.StatusForbidden, "File already exists")
|
c.JSON(http.StatusForbidden, "File already exists")
|
||||||
@ -94,7 +93,7 @@ func initUpload(c *gin.Context) {
|
|||||||
err = rows.Err()
|
err = rows.Err()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
c.JSON(http.StatusInternalServerError, "")
|
c.JSON(http.StatusInternalServerError, "")
|
||||||
log.Fatalf("initUpload: %v\n", err)
|
log.Panicf("initUpload: %v\n", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
c.JSON(http.StatusOK, "Upload can proceed")
|
c.JSON(http.StatusOK, "Upload can proceed")
|
||||||
@ -134,10 +133,12 @@ func finishUpload(c *gin.Context) {
|
|||||||
_, err = dbpool.Exec(context.Background(), "insert into videos(filepath) values($1)", fmt.Sprintf("%s/%s", uploadFolder, fileName))
|
_, err = dbpool.Exec(context.Background(), "insert into videos(filepath) values($1)", fmt.Sprintf("%s/%s", uploadFolder, fileName))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
c.JSON(http.StatusInternalServerError, "")
|
c.JSON(http.StatusInternalServerError, "")
|
||||||
log.Fatalf("finishUpload: %v\n", err)
|
log.Panicf("finishUpload: %v\n", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
c.JSON(http.StatusOK, gin.H{}) // return list of videos
|
allVideos := gin.H{}
|
||||||
|
|
||||||
|
c.JSON(http.StatusOK, allVideos)
|
||||||
}
|
}
|
||||||
|
|
||||||
func listVideos(c *gin.Context) {
|
func listVideos(c *gin.Context) {
|
||||||
@ -149,40 +150,40 @@ func listVideos(c *gin.Context) {
|
|||||||
err = rows.Scan(&id, &filepath)
|
err = rows.Scan(&id, &filepath)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
c.JSON(http.StatusInternalServerError, "")
|
c.JSON(http.StatusInternalServerError, "")
|
||||||
log.Fatalf("listVideos: %v\n", err)
|
log.Panicf("listVideos: %v\n", err)
|
||||||
}
|
}
|
||||||
fmt.Println(id, filepath)
|
fmt.Println(id, filepath)
|
||||||
}
|
}
|
||||||
err = rows.Err()
|
err = rows.Err()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
c.JSON(http.StatusInternalServerError, "")
|
c.JSON(http.StatusInternalServerError, "")
|
||||||
log.Fatalf("listVideos: %v\n", err)
|
log.Panicf("listVideos: %v\n", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
c.JSON(http.StatusOK, gin.H{})
|
allVideos := gin.H{}
|
||||||
|
|
||||||
|
c.JSON(http.StatusOK, allVideos)
|
||||||
}
|
}
|
||||||
|
|
||||||
func getVideo(c *gin.Context) {
|
func getVideo(c *gin.Context) {
|
||||||
var err error
|
var err error
|
||||||
inputId, err := strconv.Atoi(c.Param("id"))
|
inputId, err := strconv.Atoi(c.Param("id"))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal(err)
|
log.Panicf("getVideo: %v\n", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
rows, _ := dbpool.Query(context.Background(), "select * from videos where id = $1", inputId)
|
rows, _ := dbpool.Query(context.Background(), "select filepath from videos where id = $1", inputId)
|
||||||
rows.Next()
|
rows.Next()
|
||||||
var id int
|
|
||||||
var filepath string
|
var filepath string
|
||||||
err = rows.Scan(&id, &filepath)
|
err = rows.Scan(&filepath)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
c.JSON(http.StatusInternalServerError, "")
|
c.JSON(http.StatusInternalServerError, "")
|
||||||
log.Fatalf("getVideo: %v\n", err)
|
log.Panicf("getVideo: %v\n", err)
|
||||||
}
|
}
|
||||||
fmt.Println(id, filepath)
|
|
||||||
err = rows.Err()
|
err = rows.Err()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
c.JSON(http.StatusInternalServerError, "")
|
c.JSON(http.StatusInternalServerError, "")
|
||||||
log.Fatalf("getVideo: %v\n", err)
|
log.Panicf("getVideo: %v\n", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
c.JSON(http.StatusOK, gin.H{})
|
c.JSON(http.StatusOK, gin.H{})
|
||||||
@ -191,7 +192,7 @@ func getVideo(c *gin.Context) {
|
|||||||
func deleteVideo(c *gin.Context) {
|
func deleteVideo(c *gin.Context) {
|
||||||
inputId, err := strconv.Atoi(c.Param("id"))
|
inputId, err := strconv.Atoi(c.Param("id"))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal(err)
|
log.Panicf("deleteVideo: %v\n", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
rows, _ := dbpool.Query(context.Background(), "select filepath from videos where id = $1", inputId)
|
rows, _ := dbpool.Query(context.Background(), "select filepath from videos where id = $1", inputId)
|
||||||
@ -199,14 +200,14 @@ func deleteVideo(c *gin.Context) {
|
|||||||
var filepath string
|
var filepath string
|
||||||
err = rows.Scan(&filepath)
|
err = rows.Scan(&filepath)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Printf("deleteVideo: %v\n", err)
|
log.Panicf("deleteVideo: %v\n", err)
|
||||||
c.JSON(http.StatusBadRequest, "Video does not exist")
|
c.JSON(http.StatusBadRequest, "Video does not exist")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
fmt.Println(filepath)
|
fmt.Println(filepath)
|
||||||
err = rows.Err()
|
err = rows.Err()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Printf("deleteVideo: %v\n", err)
|
log.Panicf("deleteVideo: %v\n", err)
|
||||||
c.JSON(http.StatusInternalServerError, "Scanning the row didn't work")
|
c.JSON(http.StatusInternalServerError, "Scanning the row didn't work")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -214,12 +215,12 @@ func deleteVideo(c *gin.Context) {
|
|||||||
_, err = dbpool.Exec(context.Background(), "delete from videos where id = $1", inputId)
|
_, err = dbpool.Exec(context.Background(), "delete from videos where id = $1", inputId)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
c.JSON(http.StatusInternalServerError, "")
|
c.JSON(http.StatusInternalServerError, "")
|
||||||
log.Fatalf("deleteVideo: %v\n", err)
|
log.Panicf("deleteVideo: %v\n", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
if err = os.Remove(filepath); err != nil {
|
if err = os.Remove(filepath); err != nil {
|
||||||
c.JSON(http.StatusInternalServerError, "")
|
c.JSON(http.StatusInternalServerError, "")
|
||||||
log.Fatalf("deleteVideo: %v\n", err)
|
log.Panicf("deleteVideo: %v\n", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
c.JSON(http.StatusOK, gin.H{}) // return list of videos
|
c.JSON(http.StatusOK, gin.H{}) // return list of videos
|
||||||
|
Loading…
Reference in New Issue
Block a user