@@ -5,6 +5,7 @@ import sanitize from 'sanitize-filename';
5
5
export class FileServer {
6
6
static #instance: FileServer ;
7
7
folder : string ;
8
+ /** default file's lifetime in seconds */
8
9
#defaultLifeTime = 60 * 60 * 24 ;
9
10
#timeouts: { filename : string , timeout : NodeJS . Timeout } [ ] ;
10
11
/**
@@ -88,7 +89,7 @@ export class FileServer {
88
89
return false ;
89
90
}
90
91
91
- #initFile( filename : string , buffer :Buffer , lifetime = 600 ) {
92
+ #initFile( filename : string , buffer :Buffer , lifetime = this . #defaultLifeTime ) {
92
93
try {
93
94
writeFileSync ( this . #resolveFile( filename ) , buffer ) ;
94
95
this . #timeouts. push ( { filename, timeout : setTimeout ( ( ) => {
@@ -104,12 +105,13 @@ export class FileServer {
104
105
*
105
106
* @param data the data to serv
106
107
* @param filename its filename
108
+ * @param lifetime how lang is the file available (in seconds)
107
109
*/
108
- serv ( data : Buffer , filename :string , lifetime ?: number ) {
109
- const exist = this . #resetFile( filename , lifetime || this . #defaultLifeTime ) ;
110
+ serv ( data : Buffer , filename :string , lifetime = this . #defaultLifeTime ) {
111
+ const exist = this . #resetFile( filename , lifetime ) ;
110
112
if ( exist ) return `/files/${ filename } ` ;
111
113
112
- const create = this . #initFile( filename , data , lifetime || this . #defaultLifeTime ) ;
114
+ const create = this . #initFile( filename , data , lifetime ) ;
113
115
if ( create ) return `/files/${ filename } ` ;
114
116
115
117
return `/files/${ filename } ` ;
@@ -130,8 +132,8 @@ export class FileServer {
130
132
}
131
133
132
134
/** renew lifetime */
133
- renew ( filename :string , lifetime ?: number ) {
134
- return this . #resetFile( filename , lifetime || this . #defaultLifeTime ) ;
135
+ renew ( filename :string , lifetime = this . #defaultLifeTime ) {
136
+ return this . #resetFile( filename , lifetime ) ;
135
137
}
136
138
137
139
/** get file */
0 commit comments