@@ -4,34 +4,50 @@ const PREFIX_LENGTH = 8
44
55exports = module . exports
66
7+ function multihashToPath ( multihash , extension ) {
8+ extension = extension || 'data'
9+ const filename = `${ multihash . toString ( 'hex' ) } .${ extension } `
10+ const folder = filename . slice ( 0 , PREFIX_LENGTH )
11+ const path = folder + '/' + filename
12+
13+ return path
14+ }
15+
716exports . setUp = ( basePath , blobStore , locks ) => {
817 const store = blobStore ( basePath + '/blocks' )
918
1019 return {
11- createReadStream : ( multihash ) => {
12- const path = multihashToPath ( multihash )
20+ createReadStream : ( multihash , extension ) => {
21+ const path = multihashToPath ( multihash , extension )
1322 return store . createReadStream ( path )
1423 } ,
1524
16- createWriteStream : ( multihash , cb ) => {
17- const path = multihashToPath ( multihash )
25+ createWriteStream : ( multihash , extension , cb ) => {
26+ if ( typeof extension === 'function' ) {
27+ cb = extension
28+ extension = undefined
29+ }
30+
31+ const path = multihashToPath ( multihash , extension )
1832 return store . createWriteStream ( path , cb )
1933 } ,
20- exists : ( multihash , cb ) => {
21- const path = multihashToPath ( multihash )
34+ exists : ( multihash , extension , cb ) => {
35+ if ( typeof extension === 'function' ) {
36+ cb = extension
37+ extension = undefined
38+ }
39+
40+ const path = multihashToPath ( multihash , extension )
2241 return store . exists ( path , cb )
2342 } ,
24- remove : ( multihash , cb ) => {
25- const path = multihashToPath ( multihash )
43+ remove : ( multihash , extension , cb ) => {
44+ if ( typeof extension === 'function' ) {
45+ cb = extension
46+ extension = undefined
47+ }
48+
49+ const path = multihashToPath ( multihash , extension )
2650 return store . remove ( path , cb )
2751 }
2852 }
2953}
30-
31- function multihashToPath ( multihash ) {
32- const filename = multihash . toString ( 'hex' ) + '.data'
33- const folder = filename . slice ( 0 , PREFIX_LENGTH )
34- const path = folder + '/' + filename
35-
36- return path
37- }
0 commit comments