@@ -31,29 +31,31 @@ def notebook_guids
31
31
32
32
def notebook_list
33
33
guids = self . notebook_guids
34
- self . fetch_notebook_list . map { |nl | Ever2boost ::NoteList . new ( title : nl . name , hash : nl . hash , guid : nl . guid ) }
34
+ self . fetch_notebook_list . map { |nl | Ever2boost ::NoteList . new ( title : nl . name , guid : nl . guid ) }
35
35
end
36
36
37
37
def number_of_note ( filter )
38
38
note_counts_hash = self . note_store . findNoteCounts ( self . developer_token , filter , true ) . notebookCounts
39
- note_counts_hash . values . last || 0
39
+ note_counts_hash . nil? ? 0 : note_counts_hash . values . last
40
40
end
41
41
42
42
def fetch_notes ( filter )
43
43
spec = Evernote ::EDAM ::NoteStore ::NotesMetadataResultSpec . new ( includeTitle : true , includeNotebookGuid : true )
44
+ number_of_note = self . number_of_note ( filter )
44
45
45
46
# get latest 250 notes
46
47
# TODO: display message like "ignored first #{(number_of_notes - 250).to_s} notes due to EvernoteAPI access limitation" if number_of_notes > 250
47
- start_index = self . number_of_note ( filter ) > 250 ? self . number_of_note ( filter ) - 250 : 0
48
- self . note_store . findNotesMetadata ( self . developer_token , filter , start_index , 15 , spec )
48
+ start_index = number_of_note > 250 ? number_of_note - 250 : 0
49
+ self . note_store . findNotesMetadata ( self . developer_token , filter , start_index , number_of_note , spec )
49
50
end
50
51
51
52
# Download the all of notes fron Evernote and generate Boostnote storage from it
52
53
# TODO: move this method to CLI
53
54
def import ( output_dir )
54
55
FileUtils . mkdir_p ( output_dir ) unless FileTest . exist? ( output_dir )
56
+ notebook_list = self . notebook_list
55
57
56
- Ever2boost ::JsonGenerator . output ( self . notebook_list , output_dir )
58
+ Ever2boost ::JsonGenerator . output ( notebook_list , output_dir )
57
59
58
60
self . notebook_guids . each do |notebook_guid |
59
61
filter = Evernote ::EDAM ::NoteStore ::NoteFilter . new ( notebookGuid : notebook_guid )
@@ -62,7 +64,7 @@ def import(output_dir)
62
64
en_notes = note_guids . map { |note_guid | self . note_store . getNote ( self . developer_token , note_guid , true , true , false , false ) }
63
65
notes = en_notes . map { |note | Note . new ( title : note . title , content : note . content , notebook_guid : note . notebookGuid ) }
64
66
notes . each do |note |
65
- self . notebook_list . each do |list |
67
+ notebook_list . each do |list |
66
68
# TODO: break if note not found
67
69
CsonGenerator . output ( list . hash , note , output_dir ) if list . guid == note . notebook_guid
68
70
end
0 commit comments