@tradle/http-keeper
Version:
Basic offline keeper with fallback to fetching files via http
102 lines (99 loc) • 4.04 kB
JavaScript
var fs = require('fs')
var memdown = require('memdown')
var levelup = require('levelup')
var Keeper = require('./')
var tradle = ['0661255c73769d3f74417a8c21a1ab096f19f3a1',
'08dbefea9ba2ad79720fa53f82a5a2c95dcdff0a',
'0912fe4fbb3fee4d999729c5c8f6371c100fc73f',
'094d900fee711c6b2bc82ca7497e81d3f15fbcb0',
'09a24d3b292d56b86acb3908d9b8bd9ee1156e50',
'0d3c6d0fe4f1d2539f1e5e80836629cd47c11f65',
'10a196eeeead92f245782a195891416e1185af50',
'15b9515e9e9d30daa4dda02ac113600b08dac71e',
'178cbc9f29c68728e56122d4981c34439dbf77cc',
'179d536d4fc033b0e074be8d756413302ea62805',
'19b1bf07e11b921b0334e711caae9eedf6748af2',
'1f94bd0ccacd7c8e06e760a094fc9d05afaa0581',
'1fe1c416981ae8d0ade0615e52e81406f24aee6e',
'22bb3399f0f3b437d949329a0b0fbba9746a34eb',
'2356b3281f1034a9f4eea007cef2f1557ec907d0',
'24f139db10cb4d8c0a2961ae6a1198dc908fd65b',
'28b3bc9db174284f90abe775ef62cd8f974e8555',
'2a5bf1e64767ee388307ed774e1c13e2daf7c20c',
'2bcd85e1a42f698617a45251845c38ff33ce6f55',
'30da4bebbf6bc8f1e01782664f54c2d5be0c19a7',
'392c654d7e000cc14b7b484633b4481f7e39b0d2',
'3a55cc6346fdd73a4ac4debd311d80cbaa53ebcd',
'3b31cbee623a1795fd6ecb6fe650cc2d874be958',
'3b56335886534103f2e9ed24b4adf893d49b9233',
'44153818d1e9b13bf5df4929c3ae76337822265a',
'47b3350c2498c527dc09d393a233d2c127782133',
'4ab4e9953c2a10fbc9bc884bd447b1003540995c',
'5055f0e6cd851d61161e719ecbf11f996f777adc',
'51f80dedee171d6ed788d43e3d555bdd4748d37f',
'5609347f8fdaa4a4ffa697525136d2e2a751a7f8',
'57bfdcacb61d2c0cbb0adb97f8eabced780e1d79',
'5af2782d978db559c7474b67d8cc5a62aec241e4',
'5ee59c8d9fab6603b51fa371c82b0a43428fc981',
'6072296facffb77088426d02f6cc11b131fe960d',
'64e174085ef1ae52026e589c484d36a5c5f969aa',
'6aa4694fc98fd889a3fcafd60997d1555ce95a32',
'6fee0caa2e51af2c99a5f927d8d38d6f90fd3e3d',
'707ae31e2a789593b68faf8331213b32da3ce4e0',
'7433dd127cd7e9dfd41e82162116fa480428d3f2',
'787551542639246679670e1b87e8e9380f1a09cf',
'7af029ed8d52852eab8e62548c4132ca1056e307',
'8058c7682e70bf0f1085ae5d14b35e1b66a11825',
'81cae5381f254607798b2123f74a6decfed5a8d9',
'83cf5da387dd858b856d5db056aeed2bfa9f3b3c',
'8616fa304285763dd5e2063d1b44df89a48a3178',
'869c122641e9f0da9395cbd80d0fcc3fa6e2c0e1',
'87a649a61a2ea05b8b2259972b17132101e3de59',
'88f89438674f51e10014360e1d28989641ecea0c',
'8ba6988b9dfe3f755646e1d80202bd452881863d',
'93df27c463b561f42130282c01d7b00ef5f254e6',
'9acc9e5c55c53c9f059af2731eda6de82c62f1e9',
'9fa5d61f7fa6eac609ee677a25fec97383a34925',
'a0a7b3150abd12f707954f173cb1325eef5ae484',
'a1239e27a9487368af2dc41a56bfe7070ed271fe',
'a2ff53f367de7711dc802ddd09383a9f01d4cb5c',
'a3db0faee7922368ef8d799472452c6f4e9cc015',
'a609a3b3ebaf9ec8f98d1aaa5afb19d1041ed36c',
'ae36e30181e981763cb71054560799af733e3a98',
'b81cc31c2d12ea899a0ddf40789897e78defd7b8',
'bd1565dfa935516c18c8929a046cece43e61b623',
'beb2650707eeac76c21b299fb4c1db724b06539b',
'c3e12ff8d4ca73988568a06ddbbae1846f839919',
'c83c53d07001dd95276b88af54e009e916f86f4b',
'cd4ef2edd425733f39eb1f9f088a944af6a862c1',
'cdb7207defb5eb7737db5132ce0b6e3b9eed3a54',
'd085f9c5d395194089b85bc026d2d1e9f2981066',
'd0a6decd57957765ca44b42263e4453b2013a5fe',
'd0b3f6780215cb8adfb9524810599b4f1f6444ae',
'd3a3c63d72c3288be9ddeffc69870a49188e2c11',
'dc5298f560a7a5bac05a049ea0af9caa5f5a493e',
'de2aef22289d869831a474c00cbcbae7d0b9ea1d',
'decff7b62eee556a3fe4f298b778d5b3220b3201',
'dfcb557789b0ed7b692e358371b7cccb76b041b9',
'e028ecd29fa31bbb4dd7f04fc6213123023f14d8',
'e46143b3468534dce7b7b2ac8398fcc573f7376c',
'e5a4eeba736120b1979fc0c32c47bd3f405e1d7e',
'ec7f4290fef2ad714786396f55948bbcd83e6aff',
'ef1799effa019e37587ec5379cbe7a29e18d0881',
'fdd0d9805b11194f5c9cab41645dc6b4b99f5443']
var keeper = new Keeper({
db: levelup('blah', { db: memdown, valueEncoding: 'binary' }),
fallbacks: ['https://tradle.io/keeper']
})
tradle.forEach(function (key) {
keeper.getOne(key)
.then(function (val) {
var dir = './storage/' + key.slice(0, 2)
fs.mkdir(dir, function (err) {
fs.writeFile(dir + '/' + key.slice(2), val)
})
})
.catch(function (err) {
console.error(err)
})
})