diff --git a/lib/mbtiles.js b/lib/mbtiles.js index 2ca3dc2..68d3bbd 100644 --- a/lib/mbtiles.js +++ b/lib/mbtiles.js @@ -448,7 +448,6 @@ MBTiles.prototype._commit = function(callback) { break; } }); - mbtiles._db.run('COMMIT', function(err) { mbtiles._committing = false; mbtiles.emit('commit'); @@ -616,6 +615,16 @@ MBTiles.prototype.putGeocoderData = function(type, shard, data, callback) { }); }; +// Implements carmen#getGeocoderData method. +MBTiles.prototype.geocoderDataForEach = function(type, callback, completeCallback) { + return this._db.each('SELECT shard, data FROM geocoder_data WHERE type = ? ORDER BY shard', type, function(err, row) { + if (err && err.code === 'SQLITE_ERROR' && err.errno === 1) return callback(); + if (err) return callback(err); + if (!row) return callback(); + callback(row.shard, zlib.inflateSync(row.data)); + }, completeCallback); +}; + // Implements carmen#getIndexableDocs method. MBTiles.prototype.getIndexableDocs = function(pointer, callback) { pointer = pointer || {};