mirror of
https://github.com/MichaelMure/git-bug.git
synced 2024-12-13 20:13:15 +03:00
Github bridge: refactor message handling
This commit is contained in:
parent
db57227ae5
commit
b2e98ef07f
@ -62,11 +62,12 @@ func (gi *githubImporter) ImportAll(ctx context.Context, repo *cache.RepoCache,
|
||||
// We need the current event and one look ahead event.
|
||||
currEvent = nextEvent
|
||||
if currEvent == nil {
|
||||
currEvent = gi.mediator.NextImportEvent()
|
||||
currEvent = gi.getEventHandleMsgs()
|
||||
}
|
||||
if currEvent == nil {
|
||||
break
|
||||
}
|
||||
nextEvent = gi.getEventHandleMsgs()
|
||||
|
||||
switch event := currEvent.(type) {
|
||||
case MessageEvent:
|
||||
@ -78,7 +79,6 @@ func (gi *githubImporter) ImportAll(ctx context.Context, repo *cache.RepoCache,
|
||||
return
|
||||
}
|
||||
// second: create new issue
|
||||
nextEvent = gi.mediator.NextImportEvent()
|
||||
switch next := nextEvent.(type) {
|
||||
case IssueEditEvent:
|
||||
// consuming and using next event
|
||||
@ -100,7 +100,6 @@ func (gi *githubImporter) ImportAll(ctx context.Context, repo *cache.RepoCache,
|
||||
return
|
||||
}
|
||||
case TimelineEvent:
|
||||
nextEvent = gi.mediator.NextImportEvent()
|
||||
if next, ok := nextEvent.(CommentEditEvent); ok && event.Typename == "IssueComment" {
|
||||
// consuming and using next event
|
||||
nextEvent = nil
|
||||
@ -136,6 +135,19 @@ func (gi *githubImporter) ImportAll(ctx context.Context, repo *cache.RepoCache,
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func (gi *githubImporter) getEventHandleMsgs() ImportEvent {
|
||||
for {
|
||||
// read event from import mediator
|
||||
event := gi.mediator.NextImportEvent()
|
||||
// consume (and use) all message events
|
||||
if e, ok := event.(MessageEvent); ok {
|
||||
fmt.Println(e.msg)
|
||||
continue
|
||||
}
|
||||
return event
|
||||
}
|
||||
}
|
||||
|
||||
func (gi *githubImporter) commit(b *cache.BugCache, out chan<- core.ImportResult) error {
|
||||
if b == nil {
|
||||
return nil
|
||||
|
Loading…
Reference in New Issue
Block a user