66
77// Dependencies
88var fs = require ( 'fs' ) ,
9- http = require ( 'http' ) ,
109 exec = require ( 'child_process' ) . exec ,
1110 debug = require ( 'debug' ) ( 'openframe:downloader' ) ,
12- artworkDir = '/tmp' ;
11+ url = require ( 'url' ) ,
12+ artworkDir = '/tmp' ,
13+ request = require ( 'request' ) ;
1314
1415// unused at present
1516function _mkdirp ( dir ) {
@@ -30,28 +31,49 @@ function _mkdirp(dir) {
3031 * @param {String } file_output_name
3132 */
3233function downloadFile ( file_url , file_output_name , cb ) {
33-
3434 return new Promise ( function ( resolve , reject ) {
3535 var file_name = file_output_name ,
3636 file_path = artworkDir + '/' + file_name ,
3737 file = fs . createWriteStream ( file_path ) ;
3838
39- http . get ( file_url , function ( res ) {
40- res . pipe ( file ) ;
41- file . on ( 'finish' , function ( ) {
42- file . close ( function ( ) {
43- if ( cb ) cb ( ) ;
44- resolve ( file ) ;
45- } ) ; // close() is async, call cb after close completes.
46- } ) ;
47- res . on ( 'error' , ( e ) => {
39+ request . get ( file_url )
40+ . on ( 'response' , function ( res ) {
41+ // create file write stream
42+ res . pipe ( file ) ;
43+
44+ res . on ( 'end' , function ( ) {
45+ // go on with processing
46+ file . close ( function ( ) {
47+ if ( cb ) cb ( ) ;
48+ resolve ( file ) ;
49+ } ) ;
50+ } ) ;
51+
52+ res . on ( 'error' , ( e ) => {
53+ debug ( `Got error: ${ e . message } ` ) ;
54+ reject ( e ) ;
55+ } ) ;
56+ } ) . on ( 'error' , ( e ) => {
4857 debug ( `Got error: ${ e . message } ` ) ;
4958 reject ( e ) ;
5059 } ) ;
51- } ) . on ( 'error' , ( e ) => {
52- debug ( `Got error: ${ e . message } ` ) ;
53- reject ( e ) ;
54- } ) ;
60+
61+ // http.get(file_url, function(res) {
62+ // res.pipe(file);
63+ // file.on('finish', function() {
64+ // file.close(function() {
65+ // if (cb) cb();
66+ // resolve(file);
67+ // }); // close() is async, call cb after close completes.
68+ // });
69+ // res.on('error', (e) => {
70+ // debug(`Got error: ${e.message}`);
71+ // reject(e);
72+ // });
73+ // }).on('error', (e) => {
74+ // debug(`Got error: ${e.message}`);
75+ // reject(e);
76+ // });
5577 } ) ;
5678
5779}
0 commit comments