myorm_pg 6.1.2 → 6.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/__tests__/classes/RawTypes.d.ts +3 -0
- package/lib/__tests__/classes/RawTypes.d.ts.map +1 -0
- package/lib/__tests__/classes/RawTypes.js +16 -0
- package/lib/__tests__/classes/RawTypes.js.map +1 -0
- package/lib/__tests__/classes/RelationEntity.d.ts +12 -0
- package/lib/__tests__/classes/RelationEntity.d.ts.map +1 -0
- package/lib/__tests__/classes/RelationEntity.js +65 -0
- package/lib/__tests__/classes/RelationEntity.js.map +1 -0
- package/lib/__tests__/classes/TestContext.d.ts +9 -0
- package/lib/__tests__/classes/TestContext.d.ts.map +1 -0
- package/lib/__tests__/classes/TestContext.js +14 -0
- package/lib/__tests__/classes/TestContext.js.map +1 -0
- package/lib/__tests__/classes/TestEntity.d.ts +18 -0
- package/lib/__tests__/classes/TestEntity.d.ts.map +1 -0
- package/lib/__tests__/classes/TestEntity.js +99 -0
- package/lib/__tests__/classes/TestEntity.js.map +1 -0
- package/lib/__tests__/functions/TestFunctions.d.ts +11 -0
- package/lib/__tests__/functions/TestFunctions.d.ts.map +1 -0
- package/lib/__tests__/functions/TestFunctions.js +137 -0
- package/lib/__tests__/functions/TestFunctions.js.map +1 -0
- package/lib/implementations/PGDBSet.d.ts.map +1 -1
- package/lib/implementations/PGDBSet.js +13 -4
- package/lib/implementations/PGDBSet.js.map +1 -1
- package/lib/src/Index.d.ts +41 -0
- package/lib/src/Index.d.ts.map +1 -0
- package/lib/src/Index.js +64 -0
- package/lib/src/Index.js.map +1 -0
- package/lib/src/core/decorators/SchemasDecorators.d.ts +45 -0
- package/lib/src/core/decorators/SchemasDecorators.d.ts.map +1 -0
- package/lib/src/core/decorators/SchemasDecorators.js +145 -0
- package/lib/src/core/decorators/SchemasDecorators.js.map +1 -0
- package/lib/src/core/design/Type.d.ts +39 -0
- package/lib/src/core/design/Type.d.ts.map +1 -0
- package/lib/src/core/design/Type.js +144 -0
- package/lib/src/core/design/Type.js.map +1 -0
- package/lib/src/core/enums/DBTypes.d.ts +19 -0
- package/lib/src/core/enums/DBTypes.d.ts.map +1 -0
- package/lib/src/core/enums/DBTypes.js +23 -0
- package/lib/src/core/enums/DBTypes.js.map +1 -0
- package/lib/src/core/enums/RelationType.d.ts +7 -0
- package/lib/src/core/enums/RelationType.d.ts.map +1 -0
- package/lib/src/core/enums/RelationType.js +11 -0
- package/lib/src/core/enums/RelationType.js.map +1 -0
- package/lib/src/core/exceptions/ConnectionFailException.d.ts +5 -0
- package/lib/src/core/exceptions/ConnectionFailException.d.ts.map +1 -0
- package/lib/src/core/exceptions/ConnectionFailException.js +13 -0
- package/lib/src/core/exceptions/ConnectionFailException.js.map +1 -0
- package/lib/src/core/exceptions/ConstraintFailException.d.ts +5 -0
- package/lib/src/core/exceptions/ConstraintFailException.d.ts.map +1 -0
- package/lib/src/core/exceptions/ConstraintFailException.js +13 -0
- package/lib/src/core/exceptions/ConstraintFailException.js.map +1 -0
- package/lib/src/core/exceptions/Exception.d.ts +5 -0
- package/lib/src/core/exceptions/Exception.d.ts.map +1 -0
- package/lib/src/core/exceptions/Exception.js +10 -0
- package/lib/src/core/exceptions/Exception.js.map +1 -0
- package/lib/src/core/exceptions/InvalidOperationException.d.ts +6 -0
- package/lib/src/core/exceptions/InvalidOperationException.d.ts.map +1 -0
- package/lib/src/core/exceptions/InvalidOperationException.js +14 -0
- package/lib/src/core/exceptions/InvalidOperationException.js.map +1 -0
- package/lib/src/core/exceptions/NotImplementedException.d.ts +5 -0
- package/lib/src/core/exceptions/NotImplementedException.d.ts.map +1 -0
- package/lib/src/core/exceptions/NotImplementedException.js +13 -0
- package/lib/src/core/exceptions/NotImplementedException.js.map +1 -0
- package/lib/src/core/exceptions/QueryFailException.d.ts +6 -0
- package/lib/src/core/exceptions/QueryFailException.d.ts.map +1 -0
- package/lib/src/core/exceptions/QueryFailException.js +14 -0
- package/lib/src/core/exceptions/QueryFailException.js.map +1 -0
- package/lib/src/core/exceptions/TypeNotMappedException.d.ts +5 -0
- package/lib/src/core/exceptions/TypeNotMappedException.d.ts.map +1 -0
- package/lib/src/core/exceptions/TypeNotMappedException.js +13 -0
- package/lib/src/core/exceptions/TypeNotMappedException.js.map +1 -0
- package/lib/src/core/exceptions/TypeNotSuportedException.d.ts +5 -0
- package/lib/src/core/exceptions/TypeNotSuportedException.d.ts.map +1 -0
- package/lib/src/core/exceptions/TypeNotSuportedException.js +13 -0
- package/lib/src/core/exceptions/TypeNotSuportedException.js.map +1 -0
- package/lib/src/core/handlers/DBOperationLogHandler.d.ts +17 -0
- package/lib/src/core/handlers/DBOperationLogHandler.d.ts.map +1 -0
- package/lib/src/core/handlers/DBOperationLogHandler.js +18 -0
- package/lib/src/core/handlers/DBOperationLogHandler.js.map +1 -0
- package/lib/src/implementations/PGDBConnection.d.ts +19 -0
- package/lib/src/implementations/PGDBConnection.d.ts.map +1 -0
- package/lib/src/implementations/PGDBConnection.js +105 -0
- package/lib/src/implementations/PGDBConnection.js.map +1 -0
- package/lib/src/implementations/PGDBContext.d.ts +54 -0
- package/lib/src/implementations/PGDBContext.d.ts.map +1 -0
- package/lib/src/implementations/PGDBContext.js +302 -0
- package/lib/src/implementations/PGDBContext.js.map +1 -0
- package/lib/src/implementations/PGDBManager.d.ts +37 -0
- package/lib/src/implementations/PGDBManager.d.ts.map +1 -0
- package/lib/src/implementations/PGDBManager.js +296 -0
- package/lib/src/implementations/PGDBManager.js.map +1 -0
- package/lib/src/implementations/PGDBSet.d.ts +60 -0
- package/lib/src/implementations/PGDBSet.d.ts.map +1 -0
- package/lib/src/implementations/PGDBSet.js +1385 -0
- package/lib/src/implementations/PGDBSet.js.map +1 -0
- package/lib/src/implementations/PGFluentField.d.ts +18 -0
- package/lib/src/implementations/PGFluentField.d.ts.map +1 -0
- package/lib/src/implementations/PGFluentField.js +155 -0
- package/lib/src/implementations/PGFluentField.js.map +1 -0
- package/lib/src/implementations/PGSetHelper.d.ts +19 -0
- package/lib/src/implementations/PGSetHelper.d.ts.map +1 -0
- package/lib/src/implementations/PGSetHelper.js +48 -0
- package/lib/src/implementations/PGSetHelper.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,296 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
const myorm_core_1 = require("myorm_core");
|
|
16
|
+
require("reflect-metadata");
|
|
17
|
+
const TypeNotSuportedException_1 = __importDefault(require("../core/exceptions/TypeNotSuportedException"));
|
|
18
|
+
const Type_1 = __importDefault(require("../core/design/Type"));
|
|
19
|
+
const PGDBConnection_1 = __importDefault(require("./PGDBConnection"));
|
|
20
|
+
const SchemasDecorators_1 = __importDefault(require("../core/decorators/SchemasDecorators"));
|
|
21
|
+
const InvalidOperationException_1 = __importDefault(require("../core/exceptions/InvalidOperationException"));
|
|
22
|
+
const Index_1 = require("../Index");
|
|
23
|
+
const RelationType_1 = require("../core/enums/RelationType");
|
|
24
|
+
const DBOperationLogHandler_1 = require("../core/handlers/DBOperationLogHandler");
|
|
25
|
+
class PGDBManager extends myorm_core_1.AbstractManager {
|
|
26
|
+
constructor(connection) {
|
|
27
|
+
super();
|
|
28
|
+
this._connection = connection;
|
|
29
|
+
}
|
|
30
|
+
CheckConnectionAsync() {
|
|
31
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
32
|
+
this.Log("Checking connection", DBOperationLogHandler_1.LogType.CHECKCONNECTION);
|
|
33
|
+
try {
|
|
34
|
+
yield this._connection.OpenAsync();
|
|
35
|
+
return true;
|
|
36
|
+
}
|
|
37
|
+
catch (_a) {
|
|
38
|
+
return false;
|
|
39
|
+
}
|
|
40
|
+
finally {
|
|
41
|
+
yield this._connection.CloseAsync();
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
CheckDatabaseAsync(dababase) {
|
|
46
|
+
return this.CreatePromisse(() => __awaiter(this, void 0, void 0, function* () {
|
|
47
|
+
this.Log(`Checking database ${dababase}`, DBOperationLogHandler_1.LogType.CHECKDATABASE);
|
|
48
|
+
yield this._connection.AsPostgres().OpenAsync();
|
|
49
|
+
let result = yield this._connection.ExecuteAsync(`select * from pg_database where datname = '${dababase}'`);
|
|
50
|
+
return result.rows.length > 0;
|
|
51
|
+
}));
|
|
52
|
+
}
|
|
53
|
+
CreateDataBaseAsync(dababase) {
|
|
54
|
+
return this.CreatePromisse(() => __awaiter(this, void 0, void 0, function* () {
|
|
55
|
+
this.Log(`Creating database ${dababase}`, DBOperationLogHandler_1.LogType.CREATEDATABASE);
|
|
56
|
+
yield this._connection.AsPostgres().OpenAsync();
|
|
57
|
+
yield this._connection.ExecuteAsync(`create database ${dababase} with owner ${this._connection.UserName};`);
|
|
58
|
+
}));
|
|
59
|
+
}
|
|
60
|
+
CheckTableAsync(cTor) {
|
|
61
|
+
return this.CreatePromisse(() => __awaiter(this, void 0, void 0, function* () {
|
|
62
|
+
let table = Type_1.default.GetTableName(cTor);
|
|
63
|
+
this.Log(`Checking table ${table}`, DBOperationLogHandler_1.LogType.CHECKTABLE);
|
|
64
|
+
yield this._connection.OpenAsync();
|
|
65
|
+
let result = yield this._connection.ExecuteAsync(`select * from information_schema.tables where table_catalog = '${this._connection.DataBaseName}' and table_name = '${table}';`);
|
|
66
|
+
return result.rows.length > 0;
|
|
67
|
+
}));
|
|
68
|
+
}
|
|
69
|
+
CreateTableAsync(cTor) {
|
|
70
|
+
return this.CreatePromisse(() => __awaiter(this, void 0, void 0, function* () {
|
|
71
|
+
let table = Type_1.default.GetTableName(cTor);
|
|
72
|
+
this.Log(`Creating table ${table}`, DBOperationLogHandler_1.LogType.CREATETABLE);
|
|
73
|
+
yield this._connection.OpenAsync();
|
|
74
|
+
yield this._connection.ExecuteAsync(`create table if not exists "${table}"();`);
|
|
75
|
+
}));
|
|
76
|
+
}
|
|
77
|
+
CheckColumnAsync(cTor, key) {
|
|
78
|
+
return this.CreatePromisse(() => __awaiter(this, void 0, void 0, function* () {
|
|
79
|
+
let table = Type_1.default.GetTableName(cTor);
|
|
80
|
+
let column = Type_1.default.GetColumnName(cTor, key);
|
|
81
|
+
this.Log(`Checking column ${table}.${column}`, DBOperationLogHandler_1.LogType.CHECKCOLUMN);
|
|
82
|
+
yield this._connection.OpenAsync();
|
|
83
|
+
let result = yield this._connection.ExecuteAsync(`select * from information_schema.columns where table_name = '${table}' and column_name = '${column}';`);
|
|
84
|
+
return result.rows.length > 0;
|
|
85
|
+
}));
|
|
86
|
+
}
|
|
87
|
+
DropTableAsync(cTor) {
|
|
88
|
+
return this.CreatePromisse(() => __awaiter(this, void 0, void 0, function* () {
|
|
89
|
+
let table = Type_1.default.GetTableName(cTor);
|
|
90
|
+
this.Log(`Dropping table ${table}`, DBOperationLogHandler_1.LogType.CREATETABLE);
|
|
91
|
+
yield this._connection.OpenAsync();
|
|
92
|
+
yield this._connection.ExecuteAsync(`drop table if exists "${table}";`);
|
|
93
|
+
}));
|
|
94
|
+
}
|
|
95
|
+
CheckColumnTypeAsync(cTor, key) {
|
|
96
|
+
return this.CreatePromisse(() => __awaiter(this, void 0, void 0, function* () {
|
|
97
|
+
let table = Type_1.default.GetTableName(cTor);
|
|
98
|
+
let column = Type_1.default.GetColumnName(cTor, key);
|
|
99
|
+
this.Log(`Checking column ${table}.${column} type`, DBOperationLogHandler_1.LogType.CHECKCOLUMNTYPE);
|
|
100
|
+
yield this._connection.OpenAsync();
|
|
101
|
+
let result = yield this._connection.ExecuteAsync(`select data_type from information_schema.columns where table_name = '${table}' and column_name = '${column}';`);
|
|
102
|
+
if (result.rows.length == 0)
|
|
103
|
+
return "";
|
|
104
|
+
return result.rows[0]['data_type'];
|
|
105
|
+
}));
|
|
106
|
+
}
|
|
107
|
+
ChangeColumnTypeAsync(cTor, key) {
|
|
108
|
+
return this.CreatePromisse(() => __awaiter(this, void 0, void 0, function* () {
|
|
109
|
+
let table = Type_1.default.GetTableName(cTor);
|
|
110
|
+
let column = Type_1.default.GetColumnName(cTor, key);
|
|
111
|
+
this.Log(`Creating column ${table}.${column}`, DBOperationLogHandler_1.LogType.CHECKCOLUMN);
|
|
112
|
+
let type = this.GetTypeOfColumn(cTor, key);
|
|
113
|
+
yield this._connection.OpenAsync();
|
|
114
|
+
yield this._connection.ExecuteAsync(`alter table "${table}" alter column "${column}" type ${type};`);
|
|
115
|
+
}));
|
|
116
|
+
}
|
|
117
|
+
DropColumnAsync(cTor, key) {
|
|
118
|
+
return this.CreatePromisse(() => __awaiter(this, void 0, void 0, function* () {
|
|
119
|
+
let table = Type_1.default.GetTableName(cTor);
|
|
120
|
+
let column = Type_1.default.GetColumnName(cTor, key);
|
|
121
|
+
this.Log(`Dropping table ${table}`, DBOperationLogHandler_1.LogType.CREATETABLE);
|
|
122
|
+
yield this._connection.OpenAsync();
|
|
123
|
+
yield this._connection.ExecuteAsync(`alter table "${table}" drop column "${column}";`);
|
|
124
|
+
}));
|
|
125
|
+
}
|
|
126
|
+
CreateColumnAsync(cTor, key) {
|
|
127
|
+
return this.CreatePromisse(() => __awaiter(this, void 0, void 0, function* () {
|
|
128
|
+
let table = Type_1.default.GetTableName(cTor);
|
|
129
|
+
let column = Type_1.default.GetColumnName(cTor, key);
|
|
130
|
+
this.Log(`Creating column ${table}.${column}`, DBOperationLogHandler_1.LogType.CHECKCOLUMN);
|
|
131
|
+
let type = this.GetTypeOfColumn(cTor, key);
|
|
132
|
+
yield this._connection.OpenAsync();
|
|
133
|
+
yield this._connection.ExecuteAsync(`alter table "${table}" add column "${column}" ${type};`);
|
|
134
|
+
if (SchemasDecorators_1.default.IsPrimaryKey(cTor, key)) {
|
|
135
|
+
yield this._connection.ExecuteAsync(`alter table "${table}" add constraint ${table}_${column}_pk primary key (${column});`);
|
|
136
|
+
}
|
|
137
|
+
}));
|
|
138
|
+
}
|
|
139
|
+
GetTypeOfColumn(cTor, key) {
|
|
140
|
+
let type = "";
|
|
141
|
+
try {
|
|
142
|
+
type = this.CastToPostgreSQLType(Type_1.default.GetDesingTimeTypeName(cTor, key));
|
|
143
|
+
}
|
|
144
|
+
catch (ex) {
|
|
145
|
+
let subType = Type_1.default.GetDesingType(cTor, key);
|
|
146
|
+
let relation = SchemasDecorators_1.default.GetRelationAttribute(cTor, key);
|
|
147
|
+
if (subType == undefined || subType == Array) {
|
|
148
|
+
if (relation)
|
|
149
|
+
subType = relation.TypeBuilder();
|
|
150
|
+
if (relation == undefined) {
|
|
151
|
+
throw new InvalidOperationException_1.default(`Can not determine the relation of porperty ${cTor.name}${key}`);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
let relatedKey = SchemasDecorators_1.default.ExtractPrimaryKey(subType);
|
|
155
|
+
if (!relatedKey)
|
|
156
|
+
throw new InvalidOperationException_1.default(`Can not determine the primary key of ${subType.name}`);
|
|
157
|
+
if ((relation === null || relation === void 0 ? void 0 : relation.Relation) == RelationType_1.RelationType.ONE_TO_MANY || (relation === null || relation === void 0 ? void 0 : relation.Relation) == RelationType_1.RelationType.MANY_TO_MANY) {
|
|
158
|
+
type = this.CastToPostgreSQLType(Type_1.default.AsArray(Type_1.default.GetDesingTimeTypeName(subType, relatedKey)));
|
|
159
|
+
}
|
|
160
|
+
else {
|
|
161
|
+
type = this.CastToPostgreSQLType(Type_1.default.GetDesingTimeTypeName(subType, relatedKey));
|
|
162
|
+
}
|
|
163
|
+
if (type == Index_1.DBTypes.SERIAL)
|
|
164
|
+
type = this.CastToPostgreSQLType(Index_1.DBTypes.INTEGER);
|
|
165
|
+
}
|
|
166
|
+
return type;
|
|
167
|
+
}
|
|
168
|
+
UpdateDatabaseForEntityAsync(cTor) {
|
|
169
|
+
return this.CreatePromisse(() => __awaiter(this, void 0, void 0, function* () {
|
|
170
|
+
this.Log(`Checking entity ${cTor.name}`, DBOperationLogHandler_1.LogType.CHECKENTITY);
|
|
171
|
+
let table_name = Type_1.default.GetTableName(cTor);
|
|
172
|
+
if (table_name == undefined)
|
|
173
|
+
throw new TypeNotSuportedException_1.default(`The type ${cTor.name} is not supported. Can not determine the table name of type`);
|
|
174
|
+
yield this._connection.OpenAsync();
|
|
175
|
+
if (!(yield this.CheckTableAsync(cTor)))
|
|
176
|
+
yield this.CreateTableAsync(cTor);
|
|
177
|
+
let columns = Type_1.default.GetProperties(cTor);
|
|
178
|
+
for (let column of columns) {
|
|
179
|
+
if (!(yield this.CheckColumnAsync(cTor, column))) {
|
|
180
|
+
yield this.CreateColumnAsync(cTor, column);
|
|
181
|
+
}
|
|
182
|
+
else {
|
|
183
|
+
let type = this.GetTypeOfColumn(cTor, column);
|
|
184
|
+
let dbType = yield this.CheckColumnTypeAsync(cTor, column);
|
|
185
|
+
if (type.trim().toLowerCase() != dbType.trim().toLowerCase()) {
|
|
186
|
+
yield this.ChangeColumnTypeAsync(cTor, column);
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
}));
|
|
191
|
+
}
|
|
192
|
+
ExecuteNonQueryAsync(query) {
|
|
193
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
194
|
+
return this.CreatePromisse(() => __awaiter(this, void 0, void 0, function* () {
|
|
195
|
+
yield this._connection.OpenAsync();
|
|
196
|
+
this.Log(query, DBOperationLogHandler_1.LogType.QUERY);
|
|
197
|
+
yield this._connection.ExecuteAsync(query);
|
|
198
|
+
}));
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
ExecuteAsync(query) {
|
|
202
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
203
|
+
return this.CreatePromisse(() => __awaiter(this, void 0, void 0, function* () {
|
|
204
|
+
yield this._connection.OpenAsync();
|
|
205
|
+
this.Log(query, DBOperationLogHandler_1.LogType.QUERY);
|
|
206
|
+
return yield this._connection.ExecuteAsync(query);
|
|
207
|
+
}));
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
static Build(host, port, dababase, user, pass) {
|
|
211
|
+
return new PGDBManager(new PGDBConnection_1.default(host, port, dababase, user, pass));
|
|
212
|
+
}
|
|
213
|
+
static BuildFromEnviroment() {
|
|
214
|
+
let host = process.env.DB_HOST || "";
|
|
215
|
+
let port = process.env.DB_PORT || "0";
|
|
216
|
+
let username = process.env.DB_USER || "";
|
|
217
|
+
let password = process.env.DB_PASS || "";
|
|
218
|
+
let database = process.env.DB_NAME || "";
|
|
219
|
+
let intPort = 0;
|
|
220
|
+
try {
|
|
221
|
+
intPort = Number.parseInt(port);
|
|
222
|
+
}
|
|
223
|
+
catch (_a) { }
|
|
224
|
+
if (!host)
|
|
225
|
+
throw new InvalidOperationException_1.default(`DB_HOST enviroment variable was no value`);
|
|
226
|
+
if (!port || Number.isNaN(intPort))
|
|
227
|
+
throw new InvalidOperationException_1.default(`DB_PORT enviroment variable was no value`);
|
|
228
|
+
if (!username)
|
|
229
|
+
throw new InvalidOperationException_1.default(`DB_USER enviroment variable was no value`);
|
|
230
|
+
if (!password)
|
|
231
|
+
throw new InvalidOperationException_1.default(`DB_PASS enviroment variable was no value`);
|
|
232
|
+
if (!database)
|
|
233
|
+
throw new InvalidOperationException_1.default(`DB_NAME enviroment variable was no value`);
|
|
234
|
+
return PGDBManager.Build(host, intPort, database, username, password);
|
|
235
|
+
}
|
|
236
|
+
CreatePromisse(func) {
|
|
237
|
+
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
|
|
238
|
+
let success = true;
|
|
239
|
+
let result;
|
|
240
|
+
try {
|
|
241
|
+
result = yield func();
|
|
242
|
+
}
|
|
243
|
+
catch (err) {
|
|
244
|
+
success = false;
|
|
245
|
+
result = err;
|
|
246
|
+
}
|
|
247
|
+
finally {
|
|
248
|
+
yield this._connection.CloseAsync();
|
|
249
|
+
if (success)
|
|
250
|
+
resolve(result);
|
|
251
|
+
else
|
|
252
|
+
reject(result);
|
|
253
|
+
}
|
|
254
|
+
}));
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* @private
|
|
258
|
+
* @method
|
|
259
|
+
* @param {string} type the desing type of class property
|
|
260
|
+
* @returns {string} the postgres type correspondent
|
|
261
|
+
*/
|
|
262
|
+
CastToPostgreSQLType(type) {
|
|
263
|
+
switch (type.toLowerCase()) {
|
|
264
|
+
case "integer": return "integer";
|
|
265
|
+
case "number": return "bigint";
|
|
266
|
+
case "long": return "bigint";
|
|
267
|
+
case "double": return "float";
|
|
268
|
+
case "text": return "text";
|
|
269
|
+
case "string": return "text";
|
|
270
|
+
case "date": return "date";
|
|
271
|
+
case "datetime": return "timestamp";
|
|
272
|
+
case "boolean": return "boolean";
|
|
273
|
+
case "serial": return "serial";
|
|
274
|
+
case "integer[]": return "integer[]";
|
|
275
|
+
case "number[]": return "bigint[]";
|
|
276
|
+
case "long[]": return "bigint[]";
|
|
277
|
+
case "text[]": return "text[]";
|
|
278
|
+
case "string[]": return "text[]";
|
|
279
|
+
case "date[]": return "date[]";
|
|
280
|
+
case "datetime[]": return "timestamp[]";
|
|
281
|
+
case "boolean[]": return "boolean[]";
|
|
282
|
+
case "double[]": return "float[]";
|
|
283
|
+
default: throw new TypeNotSuportedException_1.default(`The type ${type} is not suported`);
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
SetLogger(logger) { this._logger = logger; }
|
|
287
|
+
Log(message, type) {
|
|
288
|
+
if (this._logger)
|
|
289
|
+
try {
|
|
290
|
+
this._logger(message, type);
|
|
291
|
+
}
|
|
292
|
+
catch (_a) { }
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
exports.default = PGDBManager;
|
|
296
|
+
//# sourceMappingURL=PGDBManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PGDBManager.js","sourceRoot":"","sources":["../../../src/implementations/PGDBManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { IStatement, IFluentField, AbstractSet } from "myorm_core";
|
|
2
|
+
import Type from "../core/design/Type";
|
|
3
|
+
import PGDBContext from "./PGDBContext";
|
|
4
|
+
export default class PGDBSet<T extends Object> extends AbstractSet<T> {
|
|
5
|
+
private _type;
|
|
6
|
+
private _table;
|
|
7
|
+
private _maps;
|
|
8
|
+
private _manager;
|
|
9
|
+
private _context;
|
|
10
|
+
private _statements;
|
|
11
|
+
private _ordering;
|
|
12
|
+
private _includes;
|
|
13
|
+
private _limit?;
|
|
14
|
+
private _offset?;
|
|
15
|
+
private _set;
|
|
16
|
+
private _whereAsString?;
|
|
17
|
+
constructor(cTor: {
|
|
18
|
+
new (...args: any[]): T;
|
|
19
|
+
}, context: PGDBContext);
|
|
20
|
+
AddObjectAndRelationsAsync(obj: T, relations: (keyof T)[]): Promise<T>;
|
|
21
|
+
AddAsync(obj: T): Promise<T>;
|
|
22
|
+
protected AddObjectAsync(obj: T, cascade?: boolean, relations?: (keyof T)[], visiteds?: any[]): Promise<T>;
|
|
23
|
+
UpdateSelectionAsync(): Promise<void>;
|
|
24
|
+
Set<K extends keyof T>(key: K, value: T[K]): AbstractSet<T>;
|
|
25
|
+
UpdateAsync(obj: T): Promise<T>;
|
|
26
|
+
UpdateObjectAndRelationsAsync(obj: T, relations: (keyof T)[]): Promise<T>;
|
|
27
|
+
private UpdateObjectAsync;
|
|
28
|
+
protected GetChanges(meta: ReturnType<typeof Type.ExtractMetadata>, subObj: any, subType: new (...args: any[]) => unknown): number[];
|
|
29
|
+
DeleteSelectionAsync(): Promise<void>;
|
|
30
|
+
DeleteAsync(obj: T): Promise<T>;
|
|
31
|
+
Where<K extends keyof T>(statement: IStatement<T, K>): AbstractSet<T>;
|
|
32
|
+
And<K extends keyof T>(statement: IStatement<T, K>): AbstractSet<T>;
|
|
33
|
+
Or<K extends keyof T>(statement: IStatement<T, K>): AbstractSet<T>;
|
|
34
|
+
OrderBy<K extends keyof T>(key: K): AbstractSet<T>;
|
|
35
|
+
Join<K extends keyof T>(key: K): AbstractSet<T>;
|
|
36
|
+
OrderDescendingBy<K extends keyof T>(key: K): AbstractSet<T>;
|
|
37
|
+
Limit(limit: number): AbstractSet<T>;
|
|
38
|
+
Offset(offset: number): AbstractSet<T>;
|
|
39
|
+
Take(quantity: number): AbstractSet<T>;
|
|
40
|
+
CountAsync(): Promise<number>;
|
|
41
|
+
ToListAsync(): Promise<T[]>;
|
|
42
|
+
FirstOrDefaultAsync(): Promise<T | undefined>;
|
|
43
|
+
WhereField<U extends keyof T, R extends PGDBSet<T>>(field: U): IFluentField<T, U, R>;
|
|
44
|
+
AndField<U extends keyof T, R extends PGDBSet<T>>(field: U): IFluentField<T, U, R>;
|
|
45
|
+
OrField<U extends keyof T, R extends PGDBSet<T>>(field: U): IFluentField<T, U, R>;
|
|
46
|
+
WhereAsString<R extends PGDBSet<T>>(where: string): R;
|
|
47
|
+
LoadRelationOn<U extends keyof T, R extends PGDBSet<T>>(field: U): R;
|
|
48
|
+
private CreatePromisse;
|
|
49
|
+
CleanQueryTree(): void;
|
|
50
|
+
private CreateValueStatement;
|
|
51
|
+
private EvaluateWhere;
|
|
52
|
+
private EvaluateStatement;
|
|
53
|
+
private EvaluateOrderBy;
|
|
54
|
+
private GetOperators;
|
|
55
|
+
private Reset;
|
|
56
|
+
private ResetFilters;
|
|
57
|
+
private IsCorrectType;
|
|
58
|
+
private BuildObjects;
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=PGDBSet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PGDBSet.d.ts","sourceRoot":"","sources":["../../../src/implementations/PGDBSet.ts"],"names":[],"mappings":"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"}
|