Skip to content

Commit fb68c35

Browse files
author
fernandocode
committed
new transaction manager
1 parent e2fdc05 commit fb68c35

File tree

10 files changed

+178
-61
lines changed

10 files changed

+178
-61
lines changed

package-lock.json

Lines changed: 98 additions & 10 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,11 @@
66
"start": "ng serve --aot",
77
"build": "ng build ionic-database-builder --prod",
88
"postbuild": "node scripts/copy-artifacts.js",
9-
"test": "ng test --prod",
9+
"test": "ng test",
1010
"lint": "ng lint",
1111
"e2e": "ng e2e",
12-
"publish": "npm run build && npm publish dist/ionic-database-builder"
12+
"publish-npm": "npm run build && npm publish dist/ionic-database-builder",
13+
"publish-npm-alpha": "npm run build && npm publish dist/ionic-database-builder --tag alpha"
1314
},
1415
"private": true,
1516
"dependencies": {
@@ -22,8 +23,9 @@
2223
"@angular/platform-browser-dynamic": "~7.2.0",
2324
"@angular/router": "~7.2.0",
2425
"core-js": "^2.5.4",
25-
"database-builder": "^0.3.10",
26-
"rxjs": "~6.3.3",
26+
"database-builder": "^0.4.8",
27+
"moment": "^2.22.0",
28+
"rxjs": "6.4.0",
2729
"tslib": "^1.9.0",
2830
"zone.js": "~0.8.26"
2931
},

projects/ionic-database-builder/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "ionic-database-builder",
3-
"version": "0.3.5",
3+
"version": "0.3.6-alpha.0",
44
"description": "Extended library from database-builder to assist in creating and maintaining SQL commands. Allowing integrate execute commands with SQLite ('@ionic-native/sqlite'), Web Sql, etc. Through the interface injection 'DatabaseCreatorContract' returning an implementation of 'DatabaseObject'.",
55
"repository": {
66
"type": "git",

projects/ionic-database-builder/src/lib/defaults/database-factory-default.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export class DatabaseFactoryDefault extends DatabaseFactoryContract {
1515
}
1616

1717
public database(databaseName: string): Observable<DatabaseObject> {
18-
return Observable.create((observer: Observer<DatabaseObject>) => {
18+
return new Observable((observer: Observer<DatabaseObject>) => {
1919
if (this._isAvailable) {
2020
this._databaseCreator.create({
2121
name: databaseName,

projects/ionic-database-builder/src/lib/services/database-migration.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ export class DatabaseMigration extends DatabaseMigrationBase implements Database
4444
}
4545

4646
protected migrationExecute(database: DatabaseObject, version: Version): Observable<boolean> {
47-
return Observable.create((observer: Observer<boolean>) => {
47+
return new Observable((observer: Observer<boolean>) => {
4848

4949
let observablesNested: Array<Observable<any>> = [];
5050
if (this._databaseMigrationContract) {
@@ -75,7 +75,7 @@ export class DatabaseMigration extends DatabaseMigrationBase implements Database
7575
}
7676

7777
private callNested(observablesNested: Array<Observable<any>>, nextIndex: number): Observable<boolean> {
78-
return Observable.create((observer: Observer<boolean>) => {
78+
return new Observable((observer: Observer<boolean>) => {
7979
if (observablesNested.length > nextIndex) {
8080
observablesNested[nextIndex].subscribe((result: any) => {
8181
this.callNested(observablesNested, ++nextIndex).subscribe((_: any) => {

projects/ionic-database-builder/src/lib/services/database.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ export class Database extends BuildableDatabaseManager {
3636
if (this._isAvailable) {
3737
return this._databaseMigration.version(database, version);
3838
}
39-
return Observable.create((observer: Observer<boolean>) => {
39+
return new Observable((observer: Observer<boolean>) => {
4040
observer.next(true);
4141
observer.complete();
4242
});

projects/ionic-database-builder/src/lib/utils/buildable-database-manager.ts

Lines changed: 31 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ export abstract class BuildableDatabaseManager extends DatabaseManager {
2929
}
3030

3131
public newTransaction(successTransaction: () => void): Observable<DatabaseBaseTransaction> {
32-
return Observable.create((observer: Observer<DatabaseBaseTransaction>) => {
32+
return new Observable((observer: Observer<DatabaseBaseTransaction>) => {
3333
this.databaseInstance()
3434
.then(database => {
3535
database.transaction((result: DatabaseBaseTransaction) => {
@@ -52,7 +52,7 @@ export abstract class BuildableDatabaseManager extends DatabaseManager {
5252
}
5353

5454
public transaction(successTransaction: () => void): Observable<Crud> {
55-
return Observable.create((observer: Observer<Crud>) => {
55+
return new Observable((observer: Observer<Crud>) => {
5656
this.newTransaction(successTransaction)
5757
.subscribe((transaction) => {
5858
observer.next(new Crud(transaction, this._mapper, this.enableLog));
@@ -65,7 +65,7 @@ export abstract class BuildableDatabaseManager extends DatabaseManager {
6565
}
6666

6767
public beginTransaction(): Observable<Crud> {
68-
return Observable.create((observer: Observer<Crud>) => {
68+
return new Observable((observer: Observer<Crud>) => {
6969
this.sql('BEGIN TRANSACTION')
7070
.subscribe(r => {
7171
this.crud()
@@ -84,7 +84,7 @@ export abstract class BuildableDatabaseManager extends DatabaseManager {
8484
}
8585

8686
public commitTransaction(): Observable<boolean> {
87-
return Observable.create((observer: Observer<boolean>) => {
87+
return new Observable((observer: Observer<boolean>) => {
8888
this.sql('COMMIT')
8989
.subscribe(r => {
9090
observer.next(true);
@@ -97,7 +97,7 @@ export abstract class BuildableDatabaseManager extends DatabaseManager {
9797
}
9898

9999
public rollbackTransaction(): Observable<boolean> {
100-
return Observable.create((observer: Observer<boolean>) => {
100+
return new Observable((observer: Observer<boolean>) => {
101101
this.sql('ROLLBACK')
102102
.subscribe(r => {
103103
observer.next(true);
@@ -110,7 +110,7 @@ export abstract class BuildableDatabaseManager extends DatabaseManager {
110110
}
111111

112112
public crud(): Observable<Crud> {
113-
return Observable.create((observer: Observer<Crud>) => {
113+
return new Observable((observer: Observer<Crud>) => {
114114
this.databaseInstance()
115115
.then(database => {
116116
observer.next(new Crud(database, this._mapper, this.enableLog));
@@ -120,8 +120,30 @@ export abstract class BuildableDatabaseManager extends DatabaseManager {
120120
});
121121
}
122122

123+
public batch(compiled: QueryCompiled[]): Observable<DatabaseResult[]> {
124+
return new Observable((observer: Observer<DatabaseResult[]>) => {
125+
this.databaseInstance()
126+
.then(database => {
127+
const executable = new ExecutableBuilder(this.enableLog);
128+
console.log('batch ::: ', database);
129+
executable.executeBatch(compiled, database)
130+
.subscribe((cursor: DatabaseResult[]) => {
131+
observer.next(cursor);
132+
observer.complete();
133+
}, err => {
134+
observer.error(err);
135+
observer.complete();
136+
});
137+
})
138+
.catch(err => {
139+
observer.error(err);
140+
observer.complete();
141+
});
142+
});
143+
}
144+
123145
public sql(sql: string, params: any[] = []): Observable<DatabaseResult> {
124-
return Observable.create((observer: Observer<DatabaseResult>) => {
146+
return new Observable((observer: Observer<DatabaseResult>) => {
125147
this.databaseInstance()
126148
.then(database => {
127149
const executable = new ExecutableBuilder(this.enableLog);
@@ -145,7 +167,7 @@ export abstract class BuildableDatabaseManager extends DatabaseManager {
145167
}
146168

147169
public query<T>(typeT: new () => T, alias: string = void 0): Observable<Query<T>> {
148-
return Observable.create((observer: Observer<Query<T>>) => {
170+
return new Observable((observer: Observer<Query<T>>) => {
149171
this.databaseInstance()
150172
.then(database => {
151173
const that = this;
@@ -163,7 +185,7 @@ export abstract class BuildableDatabaseManager extends DatabaseManager {
163185
}
164186

165187
public ddl(): Observable<Ddl> {
166-
return Observable.create((observer: Observer<Ddl>) => {
188+
return new Observable((observer: Observer<Ddl>) => {
167189
this.databaseInstance()
168190
.then(database => {
169191
observer.next(new Ddl(database, this._mapper, this.enableLog));

0 commit comments

Comments
 (0)