1
1
const fs = require ( 'fs' ) ;
2
2
const folderPath = 'stockData' ;
3
3
const daysBetween = require ( './daysBetween.js' ) ;
4
+ const log = require ( './logger.js' ) ;
4
5
5
6
6
7
/**
7
8
Initializes the local stock data folder if it doesn't yet exist.
8
9
*/
9
- function initDataFolder ( ) {
10
- if ( ! fs . existsSync ( folderPath ) ) {
11
- console . log ( `${ folderPath } folder doesn't exist. Creating...` ) ;
12
- fs . mkdirSync ( folderPath , ( err ) => {
13
- if ( err ) console . log ( err ) ;
10
+ function initDataFolder ( path ) {
11
+ if ( ! fs . existsSync ( path ) ) {
12
+ log ( 'info' , `${ path } folder doesn't exist. Creating...` ) ;
13
+ fs . mkdirSync ( path , ( err ) => {
14
+ if ( err ) log ( 'warn' , err ) ;
14
15
} ) ;
15
16
}
16
17
}
@@ -24,7 +25,7 @@ function readStockDataFromDisk(ticker) {
24
25
const filePath = `${ folderPath } /${ ticker } .json` ;
25
26
try {
26
27
const data = fs . readFileSync ( filePath , 'utf8' ) ;
27
- console . log ( `Local data found for ${ ticker } .` ) ;
28
+ log ( 'info' , `Local data found for ${ ticker } .` ) ;
28
29
return JSON . parse ( data ) ;
29
30
}
30
31
catch ( err ) {
@@ -40,7 +41,7 @@ function readStockDataFromDisk(ticker) {
40
41
*/
41
42
function writeStockDataToDisk ( ticker , incomingData , existingData ) {
42
43
43
- initDataFolder ( ) ;
44
+ initDataFolder ( folderPath ) ;
44
45
45
46
const filePath = `${ folderPath } /${ ticker } .json` ;
46
47
const now = new Date ( ) ;
@@ -53,13 +54,13 @@ function writeStockDataToDisk(ticker, incomingData, existingData) {
53
54
// If we're creating the file for the first time.
54
55
if ( ! fs . existsSync ( filePath ) ) {
55
56
try {
56
- console . log ( `${ ticker } - ${ filePath } doesn't exist. Creating...` ) ;
57
+ log ( 'info' , `${ ticker } - ${ filePath } doesn't exist. Creating...` ) ;
57
58
const stringifiedData = JSON . stringify ( writeObject ) ;
58
59
fs . writeFileSync ( filePath , stringifiedData ) ;
59
- console . log ( `${ ticker } - Wrote data to disk.` ) ;
60
+ log ( 'info' , `${ ticker } - Wrote data to disk.` ) ;
60
61
return incomingData ;
61
62
} catch ( err ) {
62
- console . log ( `${ ticker } - Error creating new file: ` , err ) ;
63
+ log ( 'warn' , `${ ticker } - Error creating new file: ` , err ) ;
63
64
}
64
65
}
65
66
// Otherwise, we're appending data to existing file.
@@ -71,18 +72,18 @@ function writeStockDataToDisk(ticker, incomingData, existingData) {
71
72
const sliceAfterIdx = incomingData . findIndex ( day => day . date === lastDateRetrievedForExistingData ) ;
72
73
if ( sliceAfterIdx > 0 ) {
73
74
const newData = incomingData . slice ( sliceAfterIdx + 1 ) ;
74
- console . log ( `${ ticker } - Got ${ newData . length } entries. Applying partial update.` ) ;
75
+ log ( 'info' , `${ ticker } - Got ${ newData . length } entries. Applying partial update.` ) ;
75
76
writeObject . data = existingData . concat ( newData ) ;
76
77
}
77
78
}
78
79
try {
79
80
const stringifiedData = JSON . stringify ( writeObject ) ;
80
- console . log ( `File for ${ ticker } exists. Updating...` ) ;
81
+ log ( 'info' , `File for ${ ticker } exists. Updating...` ) ;
81
82
fs . writeFileSync ( filePath , stringifiedData ) ;
82
- console . log ( `${ ticker } - Updated data on disk.` ) ;
83
+ log ( 'info' , `${ ticker } - Updated data on disk.` ) ;
83
84
return writeObject . data ;
84
85
} catch ( err ) {
85
- console . log ( `${ ticker } - Error updating existing data on disk: ` , err ) ;
86
+ log ( 'warn' , `${ ticker } - Error updating existing data on disk: ` , err ) ;
86
87
}
87
88
}
88
89
}
0 commit comments