@@ -2,28 +2,29 @@ import { DatabaseConfig } from "../definitions/database-config";
22import { DatabaseBaseTransaction , DatabaseResult } from "../definitions/database-definition" ;
33import { BaseDatabaseAdapter } from "./base-database.adapter" ;
44import { WebSqlTransactionInterface } from "../definitions/websql-interface" ;
5+ import { SQLiteObjectInterface } from "../definitions" ;
56
6- export abstract class DatabaseAbstractSQLiteService extends BaseDatabaseAdapter < DatabaseSQLiteObject > {
7+ export abstract class DatabaseAbstractSQLiteService extends BaseDatabaseAdapter < SQLiteObjectInterface > {
78
89 protected abstract sqliteCreate ( config : DatabaseConfig )
9- : Promise < DatabaseSQLiteObject > ;
10+ : Promise < SQLiteObjectInterface > ;
1011
1112 protected createDatabaseNative (
1213 config : DatabaseConfig
13- ) : Promise < DatabaseSQLiteObject > {
14+ ) : Promise < SQLiteObjectInterface > {
1415 return this . sqliteCreate ( config ) ;
1516 }
1617
1718 protected convertToExecuteSql (
18- databaseNative : DatabaseSQLiteObject
19+ databaseNative : SQLiteObjectInterface
1920 ) : ( sql : string , values : any ) => Promise < DatabaseResult > {
2021 return ( statement : string , params : any ) : Promise < DatabaseResult > => {
2122 return databaseNative . executeSql ( statement , params ) ;
2223 } ;
2324 }
2425
2526 protected convertToTransaction (
26- databaseNative : DatabaseSQLiteObject
27+ databaseNative : SQLiteObjectInterface
2728 ) : ( fn : ( transaction : WebSqlTransactionInterface ) => void ) => Promise < any > {
2829 return ( fn : ( transaction : DatabaseBaseTransaction ) => void ) : Promise < any > => {
2930 return databaseNative . transaction ( transaction => {
@@ -45,76 +46,10 @@ export abstract class DatabaseAbstractSQLiteService extends BaseDatabaseAdapter<
4546 }
4647
4748 protected convertToSqlBatch (
48- databaseNative : DatabaseSQLiteObject
49+ databaseNative : SQLiteObjectInterface
4950 ) : ( sqlStatements : any [ ] ) => Promise < DatabaseResult [ ] > {
5051 return ( sqlStatements : Array < ( string | string [ ] | any ) > ) : Promise < DatabaseResult [ ] > => {
5152 return databaseNative . sqlBatch ( sqlStatements ) ;
5253 } ;
5354 }
54-
55- protected async getSQLiteVersion ( databaseNative : DatabaseSQLiteObject ) : Promise < string > {
56- const result = await databaseNative . executeSql ( "select sqlite_version()" , [ ] ) ;
57- return result . rows . item ( 0 ) ;
58- }
59-
60- protected getLimitVariables ( _databaseNative : DatabaseSQLiteObject ) : Promise < number > {
61- return Promise . resolve ( 10000 ) ;
62- }
63-
64- // public create(config: DatabaseConfig): Promise<DatabaseObject> {
65- // return new Promise<DatabaseObject>((resolve, reject) => {
66- // return this.sqliteCreate(config)
67- // .then((databaseNative: DatabaseSQLiteObject) => {
68- // resolve(
69- // this.injectManagedTransactionInDatabase(
70- // {
71- // executeSql: (statement: string, params: any): Promise<DatabaseResult> => {
72- // return databaseNative.executeSql(statement, params);
73- // },
74- // transaction: (fn: (transaction: DatabaseBaseTransaction) => void): Promise<any> => {
75- // return databaseNative.transaction(transiction => {
76- // fn({
77- // executeSql: (sql: string, values: any): Promise<DatabaseResult> => {
78- // return new Promise<DatabaseResult>((executeSqlResolve, executeSqlReject) => {
79- // transiction.executeSql(sql, Array.isArray(values) ? values : [],
80- // (_s: any, r: DatabaseResult | PromiseLike<DatabaseResult>) => {
81- // executeSqlResolve(r);
82- // },
83- // (_r: any, err: any) => {
84- // executeSqlReject(err);
85- // });
86- // });
87- // }
88- // });
89- // });
90- // },
91- // sqlBatch: (sqlStatements: Array<(string | string[] | any)>): Promise<DatabaseResult[]> => {
92- // return databaseNative.sqlBatch(sqlStatements);
93- // }
94- // } as DatabaseObject)
95- // );
96- // })
97- // .catch(err => reject(err));
98- // });
99- // }
100- }
101-
102- /**
103- * @hidden
104- */
105- export interface DatabaseSQLiteObject {
106- transaction ( fn : ( transaction : DatabaseSQLiteTransaction ) => void ) : Promise < any > ;
107- executeSql ( statement : string , params : any ) : Promise < DatabaseResult > ;
108- /**
109- * @param sqlStatements {string[] | string[][] | any[]}
110- * @returns {Promise<any> }
111- */
112- sqlBatch ( sqlStatements : Array < ( string | string [ ] | any ) > ) : Promise < any > ;
113- }
114-
115- /**
116- * @hidden
117- */
118- export interface DatabaseSQLiteTransaction {
119- executeSql : ( sql : any , values ?: any [ ] , success ?: Function , error ?: Function ) => void ;
12055}
0 commit comments