Change lastSequence on every change
diff --git a/apigee_sync.go b/apigee_sync.go index 9f02e91..be087ec 100644 --- a/apigee_sync.go +++ b/apigee_sync.go
@@ -29,10 +29,12 @@ if ede, ok := e.(apid.EventDeliveryEvent); ok { if ev, ok := ede.Event.(*common.ChangeList); ok { - lastSequence = ev.LastSequence - err := persistChange(lastSequence) - if err != nil { - log.Panic("Unable to update Sequence in DB") + if lastSequence != ev.LastSequence { + lastSequence = ev.LastSequence + err := persistChange(lastSequence) + if err != nil { + log.Panic("Unable to update Sequence in DB") + } } changeFinished = true @@ -167,6 +169,14 @@ return err } + if lastSequence != resp.LastSequence { + lastSequence = resp.LastSequence + err := persistChange(lastSequence) + if err != nil { + log.Panic("Unable to update Sequence in DB") + } + } + /* If valid data present, Emit to plugins */ if len(resp.Changes) > 0 { changeFinished = false @@ -191,6 +201,14 @@ } } else { log.Debugf("No Changes detected for Scopes: %s", scopes) + + if lastSequence != resp.LastSequence { + lastSequence = resp.LastSequence + err := persistChange(lastSequence) + if err != nil { + log.Panic("Unable to update Sequence in DB") + } + } } } }