GT2/GT2-iOS/node_modules/websql/lib/custom.js

41 lines
929 B
JavaScript

'use strict';
var immediate = require('immediate');
var argsarray = require('argsarray');
var WebSQLDatabase = require('./websql/WebSQLDatabase');
function customOpenDatabase(SQLiteDatabase) {
function createDb(dbName, dbVersion) {
var sqliteDatabase = new SQLiteDatabase(dbName);
return new WebSQLDatabase(dbVersion, sqliteDatabase);
}
function openDatabase(args) {
if (args.length < 4) {
throw new Error('Failed to execute \'openDatabase\': ' +
'4 arguments required, but only ' + args.length + ' present');
}
var dbName = args[0];
var dbVersion = args[1];
// db description and size are ignored
var callback = args[4];
var db = createDb(dbName, dbVersion);
if (typeof callback === 'function') {
immediate(function () {
callback(db);
});
}
return db;
}
return argsarray(openDatabase);
}
module.exports = customOpenDatabase;