EvernoteAPI って若干使いにくくない?
前書き
ちょっと前に EvernoteAPI なるものと戯れていた。
そのときに、EvernoteAPI の使い方とかを調べるわけだが、まぁ少ない少ない。
自慢じゃないけど英語に対する苦手意識 100 点な私は、もちのろんで日本語サイトばっか探してたけど、それでも大体同じ方の記事くらいしか見つからない。
で、仕方なく本でも買って本格的にやるかーーと、ネットでろくに調べず本屋に行ったが...無い!!
Evernote の使い方みたいな本は腐るほどあるのに、EvernoteAPI に関する書籍が無い!!
なんてこったーーー!!そりゃ需要が無いからだろって?!ここに欲している人が居るでゴワす(ノД`)・゜・。
とゆーことで、自分で EvernoteAPI を触ってみた時のノウハウをここに残しておこうと思うのです___〆(・_・*)メモメモ
まずは
Evernote の大きな概念としては、ノートブックとノートがある。簡単に言うとね。
ノートブックは複数のノートを束ねるものであり、ノートが末端の情報 1 つ 1 つを指す。
図だとこんな感じかな。簡単だけど。
EvernoteAPIでは?
じゃ〜 EvernoteAPI ではどうか。
API でももちろん同名のクラス達が居るので、もちろんこんな風に書けると普通なら(?)思うよね。
... List<Note> notes = notebook.findNotes(...); ...
EvernoteAPI では、NoteStore(.Client) というクラスが、ノートに関する振る舞いを司っていて、ノートブックを取得するのも、ノートを取得するのも、はたまたタグを取得するのも全てこの NoteStore.Client というクラスを介して取得する必要があるのだ。
具体的には以下のような感じ。
... // ノートブックを取得 Notebook notebook = noteStore.getNotebook(authenticationToken, guid); ... // ノートを取得 NoteList noteList = noteStore.findNotes(authenticationToken, filter, offset, maxNotes); List<Note> notes = nodeList.getNotes(); ... // タグを取得 Tag tag = noteStore.getTag(authenticationToken, guid); ...
ちなみに上記のコードの中で使用している noteStore は、実際には NoteStore のインナークラスである Client というクラスを指す。
上記のコードに出てくるクラス達のパッケージ構成は以下のようになっている。
もう後書き
それではもう少し詳しく見ていきたいところをグッとこらえて、続きは次回ということで。
authenticationToken って何やねん?!guid って何やねん?!?!
怒らないでもう少し待ってて下さい(人;´Д`)ゴメンネ