github.com/cloud-foundations/dominator@v0.0.0-20221004181915-6e4fee580046/imageserver/rpcd/deleteImage.go (about) 1 package rpcd 2 3 import ( 4 "errors" 5 6 "github.com/Cloud-Foundations/Dominator/lib/srpc" 7 "github.com/Cloud-Foundations/Dominator/proto/imageserver" 8 ) 9 10 func (t *srpcType) DeleteImage(conn *srpc.Conn, 11 request imageserver.DeleteImageRequest, 12 reply *imageserver.DeleteImageResponse) error { 13 username := conn.Username() 14 if err := t.checkMutability(); err != nil { 15 return err 16 } 17 if !t.imageDataBase.CheckImage(request.ImageName) { 18 return errors.New("image does not exist") 19 } 20 if username == "" { 21 t.logger.Printf("DeleteImage(%s)\n", request.ImageName) 22 } else { 23 t.logger.Printf("DeleteImage(%s) by %s\n", request.ImageName, username) 24 } 25 return t.imageDataBase.DeleteImage(request.ImageName, 26 conn.GetAuthInformation()) 27 }