X-Git-Url: http://nitlanguage.org diff --git a/lib/github/hooks.nit b/lib/github/hooks.nit index 351042b..70f16c2 100644 --- a/lib/github/hooks.nit +++ b/lib/github/hooks.nit @@ -37,7 +37,7 @@ # redef class CommitCommentEvent # # redef fun log_event(l) do -# print "new comment on commit {comment.commit.sha}" +# print "new comment on commit {comment.commit_id}" # end # end # @@ -51,7 +51,7 @@ import events import nitcorn # A nitcorn listener for Github hooks. -class HookListener +abstract class HookListener # Api client used to perform Github API requests. var api: GithubAPI @@ -90,33 +90,33 @@ class HookListener # How to build events from received json objects. fun event_factory(kind: String, json: JsonObject): GithubEvent do if kind == "commit_comment" then - return new CommitCommentEvent.from_json(api, json) + return api.deserialize(json.to_json).as(CommitCommentEvent) else if kind == "create" then - return new CreateEvent.from_json(api, json) + return api.deserialize(json.to_json).as(CreateEvent) else if kind == "delete" then - return new DeleteEvent.from_json(api, json) + return api.deserialize(json.to_json).as(DeleteEvent) else if kind == "deployment" then - return new DeploymentEvent.from_json(api, json) + return api.deserialize(json.to_json).as(DeploymentEvent) else if kind == "deployment_status" then - return new DeploymentStatusEvent.from_json(api, json) + return api.deserialize(json.to_json).as(DeploymentStatusEvent) else if kind == "fork" then - return new ForkEvent.from_json(api, json) + return api.deserialize(json.to_json).as(ForkEvent) else if kind == "issues" then - return new IssuesEvent.from_json(api, json) + return api.deserialize(json.to_json).as(IssuesEvent) else if kind == "issue_comment" then - return new IssueCommentEvent.from_json(api, json) + return api.deserialize(json.to_json).as(IssueCommentEvent) else if kind == "member" then - return new MemberEvent.from_json(api, json) + return api.deserialize(json.to_json).as(MemberEvent) else if kind == "pull_request" then - return new PullRequestEvent.from_json(api, json) + return api.deserialize(json.to_json).as(PullRequestEvent) else if kind == "pull_request_review_comment" then - return new PullRequestReviewCommentEvent.from_json(api, json) + return api.deserialize(json.to_json).as(PullRequestReviewCommentEvent) else if kind == "push" then - return new PushEvent.from_json(api, json) + return api.deserialize(json.to_json).as(PushEvent) else if kind == "status" then - return new StatusEvent.from_json(api, json) + return api.deserialize(json.to_json).as(StatusEvent) else - return new GithubEvent.from_json(api, json) + return api.deserialize(json.to_json).as(GithubEvent) end end