Finished adding GitHub Event mapping structs
This commit is contained in:
@@ -0,0 +1,71 @@
|
||||
package github
|
||||
|
||||
import "github.com/joeybloggs/webhooks"
|
||||
|
||||
// Webhook instance contains all methods needed to process events
|
||||
type Webhook struct {
|
||||
provider webhooks.Provider
|
||||
}
|
||||
|
||||
// Config defines the configuration to create a new GitHubWebhook instance
|
||||
type Config struct {
|
||||
Provider webhooks.Provider
|
||||
}
|
||||
|
||||
// Event defines a GitHub hook event type
|
||||
type Event string
|
||||
|
||||
// GitHub hook types
|
||||
const (
|
||||
// AnyEvent Event = "*"
|
||||
CommitCommentEvent Event = "commit_comment"
|
||||
CreateEvent Event = "create"
|
||||
DeleteEvent Event = "delete"
|
||||
DeploymentEvent Event = "deployment"
|
||||
DeploymentStatusEvent Event = "deployment_status"
|
||||
ForkEvent Event = "fork"
|
||||
GollumEvent Event = "gollum"
|
||||
IssueCommentEvent Event = "issue_comment"
|
||||
IssuesEvent Event = "issues"
|
||||
MemberEvent Event = "member"
|
||||
MembershipEvent Event = "membership"
|
||||
PageBuildEvent Event = "page_build"
|
||||
PublicEvent Event = "public"
|
||||
PullRequestReviewCommentEvent Event = "pull_request_review_comment"
|
||||
PullRequestEvent Event = "pull_request"
|
||||
PushEvent Event = "push"
|
||||
RepositoryEvent Event = "repository"
|
||||
ReleaseEvent Event = "release"
|
||||
StatusEvent Event = "status"
|
||||
TeamAddEvent Event = "team_add"
|
||||
WatchEvent Event = "watch"
|
||||
)
|
||||
|
||||
// EventSubtype defines a GitHub Hook Event subtype
|
||||
type EventSubtype string
|
||||
|
||||
// GitHub hook event subtypes
|
||||
const (
|
||||
NoSubtype EventSubtype = ""
|
||||
BranchSubtype EventSubtype = "branch"
|
||||
TagSubtype EventSubtype = "tag"
|
||||
PullSubtype EventSubtype = "pull"
|
||||
IssueSubtype EventSubtype = "issues"
|
||||
)
|
||||
|
||||
// Provider returns the Webhook's provider
|
||||
func (w Webhook) Provider() webhooks.Provider {
|
||||
return w.provider
|
||||
}
|
||||
|
||||
// UnderlyingProvider returns the Config's Provider
|
||||
func (c Config) UnderlyingProvider() webhooks.Provider {
|
||||
return c.Provider
|
||||
}
|
||||
|
||||
// New creates and returns a WebHook instance denoted by the Provider type
|
||||
func New(config *Config) *Webhook {
|
||||
return &Webhook{
|
||||
provider: config.Provider,
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user