public IDictionary <string, NoteUpdate> GetNoteUpdatesSince(int revision) { IDictionary <string, NoteUpdate> updatedNotes = new Dictionary <string, NoteUpdate>(); Evernote.EDAM.NoteStore.SyncState syncState = _noteStore.getSyncState(_authToken); // see if anything has changed // TODO - this check might be redundant, as Tomboy calls LatestRevision() beforehand if (syncState.UpdateCount <= revision) { return(updatedNotes); } if (revision < 0) { revision = 0; } //if we got this far, then Something has changed Evernote.EDAM.NoteStore.SyncChunk syncChunk; try { syncChunk = _noteStore.getSyncChunk(_authToken, revision, Int32.MaxValue, false); } catch (Exception e) { Logger.Error("[Evernote] Failure in getSyncChunk: " + e); return(updatedNotes); } if (syncChunk.Notes == null) { return(updatedNotes); } //every note we have should be new or updated, so tell Tomboy about it foreach (Evernote.EDAM.Type.Note note in syncChunk.Notes) { if (note.NotebookGuid != _tomboyNotebook.Guid) { continue; } string content = ""; try { content = CreateTomboyNoteContent(note); } catch (XmlSchemaValidationException e) { content = "Evernote had invalid XML"; } catch (Exception e) { Logger.Error("[Evernote] Unknown error creating Tomboy Note from Evernote:" + e + "\nEvernote: " + note); } string guid = GetCorrectGuid(note); NoteUpdate update = new NoteUpdate(content, note.Title, guid, note.UpdateSequenceNum); updatedNotes.Add(note.Guid, update); } return(updatedNotes); }