docker-event-handler/events/event.go
2022-03-25 12:17:47 +01:00

28 lines
556 B
Go

package events
import (
"log"
dockerEvents "github.com/docker/docker/api/types/events"
"github.com/docker/docker/client"
)
//goland:noinspection GoSnakeCaseUsage
type Event interface {
__interface_event()
}
func Make(message dockerEvents.Message, client *client.Client) Event {
switch message.Type {
case "container":
return makeContainer(message, client)
case "network":
return makeNetwork(message, client)
case "volume":
return makeVolume(message, client)
default:
log.Printf("unknown event type %v", message.Type)
return nil
}
}