typeorm 0.3.23-dev.24a0369 → 0.3.23-dev.3ffeea5

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.
Files changed (77) hide show
  1. package/browser/data-source/DataSource.js +2 -1
  2. package/browser/data-source/DataSource.js.map +1 -1
  3. package/browser/driver/cockroachdb/CockroachQueryRunner.d.ts +8 -8
  4. package/browser/driver/cockroachdb/CockroachQueryRunner.js +16 -16
  5. package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  6. package/browser/driver/cordova/CordovaQueryRunner.js +6 -6
  7. package/browser/driver/cordova/CordovaQueryRunner.js.map +1 -1
  8. package/browser/driver/expo/ExpoQueryRunner.js +5 -4
  9. package/browser/driver/expo/ExpoQueryRunner.js.map +1 -1
  10. package/browser/driver/mysql/MysqlQueryRunner.d.ts +7 -7
  11. package/browser/driver/mysql/MysqlQueryRunner.js +16 -16
  12. package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
  13. package/browser/driver/nativescript/NativescriptQueryRunner.js +4 -4
  14. package/browser/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
  15. package/browser/driver/oracle/OracleQueryRunner.d.ts +7 -7
  16. package/browser/driver/oracle/OracleQueryRunner.js +13 -13
  17. package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
  18. package/browser/driver/postgres/PostgresQueryRunner.js +2 -2
  19. package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
  20. package/browser/driver/react-native/ReactNativeQueryRunner.js +53 -46
  21. package/browser/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
  22. package/browser/driver/sap/SapQueryRunner.d.ts +1 -1
  23. package/browser/driver/sap/SapQueryRunner.js +46 -23
  24. package/browser/driver/sap/SapQueryRunner.js.map +1 -1
  25. package/browser/driver/spanner/SpannerQueryRunner.js +6 -6
  26. package/browser/driver/spanner/SpannerQueryRunner.js.map +1 -1
  27. package/browser/driver/sqlite/SqliteQueryRunner.js +9 -9
  28. package/browser/driver/sqlite/SqliteQueryRunner.js.map +1 -1
  29. package/browser/driver/sqljs/SqljsQueryRunner.js +5 -5
  30. package/browser/driver/sqljs/SqljsQueryRunner.js.map +1 -1
  31. package/browser/driver/sqlserver/SqlServerQueryRunner.d.ts +1 -1
  32. package/browser/driver/sqlserver/SqlServerQueryRunner.js +7 -7
  33. package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  34. package/browser/persistence/SubjectChangedColumnsComputer.js +23 -9
  35. package/browser/persistence/SubjectChangedColumnsComputer.js.map +1 -1
  36. package/browser/subscriber/Broadcaster.d.ts +6 -6
  37. package/browser/subscriber/Broadcaster.js +1 -1
  38. package/browser/subscriber/Broadcaster.js.map +1 -1
  39. package/data-source/DataSource.js +2 -1
  40. package/data-source/DataSource.js.map +1 -1
  41. package/driver/cockroachdb/CockroachQueryRunner.d.ts +8 -8
  42. package/driver/cockroachdb/CockroachQueryRunner.js +16 -16
  43. package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  44. package/driver/cordova/CordovaQueryRunner.js +6 -6
  45. package/driver/cordova/CordovaQueryRunner.js.map +1 -1
  46. package/driver/expo/ExpoQueryRunner.js +5 -4
  47. package/driver/expo/ExpoQueryRunner.js.map +1 -1
  48. package/driver/mysql/MysqlQueryRunner.d.ts +7 -7
  49. package/driver/mysql/MysqlQueryRunner.js +16 -16
  50. package/driver/mysql/MysqlQueryRunner.js.map +1 -1
  51. package/driver/nativescript/NativescriptQueryRunner.js +4 -4
  52. package/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
  53. package/driver/oracle/OracleQueryRunner.d.ts +7 -7
  54. package/driver/oracle/OracleQueryRunner.js +13 -13
  55. package/driver/oracle/OracleQueryRunner.js.map +1 -1
  56. package/driver/postgres/PostgresQueryRunner.js +2 -2
  57. package/driver/postgres/PostgresQueryRunner.js.map +1 -1
  58. package/driver/react-native/ReactNativeQueryRunner.js +53 -46
  59. package/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
  60. package/driver/sap/SapQueryRunner.d.ts +1 -1
  61. package/driver/sap/SapQueryRunner.js +46 -23
  62. package/driver/sap/SapQueryRunner.js.map +1 -1
  63. package/driver/spanner/SpannerQueryRunner.js +6 -6
  64. package/driver/spanner/SpannerQueryRunner.js.map +1 -1
  65. package/driver/sqlite/SqliteQueryRunner.js +9 -9
  66. package/driver/sqlite/SqliteQueryRunner.js.map +1 -1
  67. package/driver/sqljs/SqljsQueryRunner.js +5 -5
  68. package/driver/sqljs/SqljsQueryRunner.js.map +1 -1
  69. package/driver/sqlserver/SqlServerQueryRunner.d.ts +1 -1
  70. package/driver/sqlserver/SqlServerQueryRunner.js +7 -7
  71. package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  72. package/package.json +1 -1
  73. package/persistence/SubjectChangedColumnsComputer.js +23 -9
  74. package/persistence/SubjectChangedColumnsComputer.js.map +1 -1
  75. package/subscriber/Broadcaster.d.ts +6 -6
  76. package/subscriber/Broadcaster.js +1 -1
  77. package/subscriber/Broadcaster.js.map +1 -1
@@ -1,8 +1,8 @@
1
- import { QueryRunnerAlreadyReleasedError } from "../../error/QueryRunnerAlreadyReleasedError";
2
1
  import { QueryFailedError } from "../../error/QueryFailedError";
3
- import { AbstractSqliteQueryRunner } from "../sqlite-abstract/AbstractSqliteQueryRunner";
4
- import { Broadcaster } from "../../subscriber/Broadcaster";
2
+ import { QueryRunnerAlreadyReleasedError } from "../../error/QueryRunnerAlreadyReleasedError";
5
3
  import { QueryResult } from "../../query-runner/QueryResult";
4
+ import { Broadcaster } from "../../subscriber/Broadcaster";
5
+ import { AbstractSqliteQueryRunner } from "../sqlite-abstract/AbstractSqliteQueryRunner";
6
6
  /**
7
7
  * Runs queries on a single sqlite database connection.
8
8
  */
@@ -36,8 +36,8 @@ export class NativescriptQueryRunner extends AbstractSqliteQueryRunner {
36
36
  throw new QueryRunnerAlreadyReleasedError();
37
37
  }
38
38
  const connection = this.driver.connection;
39
+ const databaseConnection = await this.connect();
39
40
  return new Promise(async (ok, fail) => {
40
- const databaseConnection = await this.connect();
41
41
  const isInsertQuery = query.substr(0, 11) === "INSERT INTO";
42
42
  connection.logger.logQuery(query, parameters, this);
43
43
  const handler = (err, raw) => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../browser/src/driver/nativescript/NativescriptQueryRunner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,+BAA+B,EAAE,MAAM,6CAA6C,CAAA;AAC7F,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAC/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,8CAA8C,CAAA;AAExF,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAA;AAE5D;;GAEG;AACH,MAAM,OAAO,uBAAwB,SAAQ,yBAAyB;IAMlE,4EAA4E;IAC5E,cAAc;IACd,4EAA4E;IAE5E,YAAY,MAA0B;QAClC,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAA;QACnC,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAA;IAC5C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe;QACjB,MAAM,IAAI,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAA;IACjD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc;QAChB,MAAM,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAA;IAChD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CACP,KAAa,EACb,UAAkB,EAClB,mBAAmB,GAAG,KAAK;QAE3B,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,MAAM,IAAI,+BAA+B,EAAE,CAAA;QAC/C,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAA;QAEzC,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE;YAClC,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;YAC/C,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,aAAa,CAAA;YAC3D,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,CAAA;YAEnD,MAAM,OAAO,GAAG,CAAC,GAAQ,EAAE,GAAQ,EAAE,EAAE;gBACnC,oDAAoD;gBACpD,MAAM,qBAAqB,GACvB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAA;gBAC7C,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBAC/B,MAAM,kBAAkB,GAAG,YAAY,GAAG,cAAc,CAAA;gBAExD,IACI,qBAAqB;oBACrB,kBAAkB,GAAG,qBAAqB,EAC5C,CAAC;oBACC,UAAU,CAAC,MAAM,CAAC,YAAY,CAC1B,kBAAkB,EAClB,KAAK,EACL,UAAU,EACV,IAAI,CACP,CAAA;gBACL,CAAC;gBAED,IAAI,GAAG,EAAE,CAAC;oBACN,UAAU,CAAC,MAAM,CAAC,aAAa,CAC3B,GAAG,EACH,KAAK,EACL,UAAU,EACV,IAAI,CACP,CAAA;oBACD,IAAI,CAAC,IAAI,gBAAgB,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC,CAAA;gBACtD,CAAC;gBAED,MAAM,MAAM,GAAG,IAAI,WAAW,EAAE,CAAA;gBAChC,MAAM,CAAC,GAAG,GAAG,GAAG,CAAA;gBAEhB,IAAI,CAAC,aAAa,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;oBACvC,MAAM,CAAC,OAAO,GAAG,GAAG,CAAA;gBACxB,CAAC;gBAED,IAAI,mBAAmB,EAAE,CAAC;oBACtB,EAAE,CAAC,MAAM,CAAC,CAAA;gBACd,CAAC;qBAAM,CAAC;oBACJ,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBAClB,CAAC;YACL,CAAC,CAAA;YACD,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YAEjC,IAAI,aAAa,EAAE,CAAC;gBAChB,kBAAkB,CAAC,OAAO,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;YAC1D,CAAC;iBAAM,CAAC;gBACJ,kBAAkB,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;YACtD,CAAC;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IAED,4EAA4E;IAC5E,oBAAoB;IACpB,4EAA4E;IAE5E;;OAEG;IACO,WAAW,CACjB,aAA4B,EAC5B,aAAqB,CAAC;QAEtB,OAAO,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,CAAA;IAC5E,CAAC;CACJ","file":"NativescriptQueryRunner.js","sourcesContent":["import { ObjectLiteral } from \"../../common/ObjectLiteral\"\nimport { QueryRunnerAlreadyReleasedError } from \"../../error/QueryRunnerAlreadyReleasedError\"\nimport { QueryFailedError } from \"../../error/QueryFailedError\"\nimport { AbstractSqliteQueryRunner } from \"../sqlite-abstract/AbstractSqliteQueryRunner\"\nimport { NativescriptDriver } from \"./NativescriptDriver\"\nimport { Broadcaster } from \"../../subscriber/Broadcaster\"\nimport { QueryResult } from \"../../query-runner/QueryResult\"\n\n/**\n * Runs queries on a single sqlite database connection.\n */\nexport class NativescriptQueryRunner extends AbstractSqliteQueryRunner {\n /**\n * Database driver used by connection.\n */\n driver: NativescriptDriver\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(driver: NativescriptDriver) {\n super()\n this.driver = driver\n this.connection = driver.connection\n this.broadcaster = new Broadcaster(this)\n }\n\n /**\n * Called before migrations are run.\n */\n async beforeMigration(): Promise<void> {\n await this.query(`PRAGMA foreign_keys = OFF`)\n }\n\n /**\n * Called after migrations are run.\n */\n async afterMigration(): Promise<void> {\n await this.query(`PRAGMA foreign_keys = ON`)\n }\n\n /**\n * Executes a given SQL query.\n */\n async query(\n query: string,\n parameters?: any[],\n useStructuredResult = false,\n ): Promise<any> {\n if (this.isReleased) {\n throw new QueryRunnerAlreadyReleasedError()\n }\n\n const connection = this.driver.connection\n\n return new Promise(async (ok, fail) => {\n const databaseConnection = await this.connect()\n const isInsertQuery = query.substr(0, 11) === \"INSERT INTO\"\n connection.logger.logQuery(query, parameters, this)\n\n const handler = (err: any, raw: any) => {\n // log slow queries if maxQueryExecution time is set\n const maxQueryExecutionTime =\n this.driver.options.maxQueryExecutionTime\n const queryEndTime = Date.now()\n const queryExecutionTime = queryEndTime - queryStartTime\n\n if (\n maxQueryExecutionTime &&\n queryExecutionTime > maxQueryExecutionTime\n ) {\n connection.logger.logQuerySlow(\n queryExecutionTime,\n query,\n parameters,\n this,\n )\n }\n\n if (err) {\n connection.logger.logQueryError(\n err,\n query,\n parameters,\n this,\n )\n fail(new QueryFailedError(query, parameters, err))\n }\n\n const result = new QueryResult()\n result.raw = raw\n\n if (!isInsertQuery && Array.isArray(raw)) {\n result.records = raw\n }\n\n if (useStructuredResult) {\n ok(result)\n } else {\n ok(result.raw)\n }\n }\n const queryStartTime = Date.now()\n\n if (isInsertQuery) {\n databaseConnection.execSQL(query, parameters, handler)\n } else {\n databaseConnection.all(query, parameters, handler)\n }\n })\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Parametrizes given object of values. Used to create column=value queries.\n */\n protected parametrize(\n objectLiteral: ObjectLiteral,\n startIndex: number = 0,\n ): string[] {\n return Object.keys(objectLiteral).map((key, index) => `\"${key}\"` + \"=?\")\n }\n}\n"],"sourceRoot":"../.."}
1
+ {"version":3,"sources":["../browser/src/driver/nativescript/NativescriptQueryRunner.ts"],"names":[],"mappings":"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","file":"NativescriptQueryRunner.js","sourcesContent":["import { ObjectLiteral } from \"../../common/ObjectLiteral\"\nimport { QueryFailedError } from \"../../error/QueryFailedError\"\nimport { QueryRunnerAlreadyReleasedError } from \"../../error/QueryRunnerAlreadyReleasedError\"\nimport { QueryResult } from \"../../query-runner/QueryResult\"\nimport { Broadcaster } from \"../../subscriber/Broadcaster\"\nimport { AbstractSqliteQueryRunner } from \"../sqlite-abstract/AbstractSqliteQueryRunner\"\nimport { NativescriptDriver } from \"./NativescriptDriver\"\n\n/**\n * Runs queries on a single sqlite database connection.\n */\nexport class NativescriptQueryRunner extends AbstractSqliteQueryRunner {\n /**\n * Database driver used by connection.\n */\n driver: NativescriptDriver\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(driver: NativescriptDriver) {\n super()\n this.driver = driver\n this.connection = driver.connection\n this.broadcaster = new Broadcaster(this)\n }\n\n /**\n * Called before migrations are run.\n */\n async beforeMigration(): Promise<void> {\n await this.query(`PRAGMA foreign_keys = OFF`)\n }\n\n /**\n * Called after migrations are run.\n */\n async afterMigration(): Promise<void> {\n await this.query(`PRAGMA foreign_keys = ON`)\n }\n\n /**\n * Executes a given SQL query.\n */\n async query(\n query: string,\n parameters?: any[],\n useStructuredResult = false,\n ): Promise<any> {\n if (this.isReleased) {\n throw new QueryRunnerAlreadyReleasedError()\n }\n\n const connection = this.driver.connection\n\n const databaseConnection = await this.connect()\n\n return new Promise(async (ok, fail) => {\n const isInsertQuery = query.substr(0, 11) === \"INSERT INTO\"\n connection.logger.logQuery(query, parameters, this)\n\n const handler = (err: any, raw: any) => {\n // log slow queries if maxQueryExecution time is set\n const maxQueryExecutionTime =\n this.driver.options.maxQueryExecutionTime\n const queryEndTime = Date.now()\n const queryExecutionTime = queryEndTime - queryStartTime\n\n if (\n maxQueryExecutionTime &&\n queryExecutionTime > maxQueryExecutionTime\n ) {\n connection.logger.logQuerySlow(\n queryExecutionTime,\n query,\n parameters,\n this,\n )\n }\n\n if (err) {\n connection.logger.logQueryError(\n err,\n query,\n parameters,\n this,\n )\n fail(new QueryFailedError(query, parameters, err))\n }\n\n const result = new QueryResult()\n result.raw = raw\n\n if (!isInsertQuery && Array.isArray(raw)) {\n result.records = raw\n }\n\n if (useStructuredResult) {\n ok(result)\n } else {\n ok(result.raw)\n }\n }\n const queryStartTime = Date.now()\n\n if (isInsertQuery) {\n databaseConnection.execSQL(query, parameters, handler)\n } else {\n databaseConnection.all(query, parameters, handler)\n }\n })\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Parametrizes given object of values. Used to create column=value queries.\n */\n protected parametrize(\n objectLiteral: ObjectLiteral,\n startIndex: number = 0,\n ): string[] {\n return Object.keys(objectLiteral).map((key, index) => `\"${key}\"` + \"=?\")\n }\n}\n"],"sourceRoot":"../.."}
@@ -1,18 +1,18 @@
1
+ import { ReadStream } from "../../platform/PlatformTools";
2
+ import { BaseQueryRunner } from "../../query-runner/BaseQueryRunner";
1
3
  import { QueryRunner } from "../../query-runner/QueryRunner";
2
- import { TableColumn } from "../../schema-builder/table/TableColumn";
3
4
  import { Table } from "../../schema-builder/table/Table";
5
+ import { TableCheck } from "../../schema-builder/table/TableCheck";
6
+ import { TableColumn } from "../../schema-builder/table/TableColumn";
7
+ import { TableExclusion } from "../../schema-builder/table/TableExclusion";
4
8
  import { TableForeignKey } from "../../schema-builder/table/TableForeignKey";
5
9
  import { TableIndex } from "../../schema-builder/table/TableIndex";
10
+ import { TableUnique } from "../../schema-builder/table/TableUnique";
6
11
  import { View } from "../../schema-builder/view/View";
7
12
  import { Query } from "../Query";
8
- import { OracleDriver } from "./OracleDriver";
9
- import { ReadStream } from "../../platform/PlatformTools";
10
- import { TableUnique } from "../../schema-builder/table/TableUnique";
11
- import { BaseQueryRunner } from "../../query-runner/BaseQueryRunner";
12
- import { TableCheck } from "../../schema-builder/table/TableCheck";
13
13
  import { IsolationLevel } from "../types/IsolationLevel";
14
- import { TableExclusion } from "../../schema-builder/table/TableExclusion";
15
14
  import { ReplicationMode } from "../types/ReplicationMode";
15
+ import { OracleDriver } from "./OracleDriver";
16
16
  /**
17
17
  * Runs queries on a single oracle database connection.
18
18
  */
@@ -1,22 +1,22 @@
1
+ import { TypeORMError } from "../../error";
2
+ import { QueryFailedError } from "../../error/QueryFailedError";
3
+ import { QueryRunnerAlreadyReleasedError } from "../../error/QueryRunnerAlreadyReleasedError";
1
4
  import { TransactionNotStartedError } from "../../error/TransactionNotStartedError";
2
- import { TableColumn } from "../../schema-builder/table/TableColumn";
5
+ import { BaseQueryRunner } from "../../query-runner/BaseQueryRunner";
6
+ import { QueryResult } from "../../query-runner/QueryResult";
3
7
  import { Table } from "../../schema-builder/table/Table";
8
+ import { TableCheck } from "../../schema-builder/table/TableCheck";
9
+ import { TableColumn } from "../../schema-builder/table/TableColumn";
4
10
  import { TableForeignKey } from "../../schema-builder/table/TableForeignKey";
5
11
  import { TableIndex } from "../../schema-builder/table/TableIndex";
6
- import { QueryRunnerAlreadyReleasedError } from "../../error/QueryRunnerAlreadyReleasedError";
7
- import { View } from "../../schema-builder/view/View";
8
- import { Query } from "../Query";
9
- import { QueryFailedError } from "../../error/QueryFailedError";
10
12
  import { TableUnique } from "../../schema-builder/table/TableUnique";
13
+ import { View } from "../../schema-builder/view/View";
11
14
  import { Broadcaster } from "../../subscriber/Broadcaster";
12
- import { BaseQueryRunner } from "../../query-runner/BaseQueryRunner";
15
+ import { BroadcasterResult } from "../../subscriber/BroadcasterResult";
16
+ import { InstanceChecker } from "../../util/InstanceChecker";
13
17
  import { OrmUtils } from "../../util/OrmUtils";
14
- import { TableCheck } from "../../schema-builder/table/TableCheck";
15
- import { TypeORMError } from "../../error";
16
- import { QueryResult } from "../../query-runner/QueryResult";
18
+ import { Query } from "../Query";
17
19
  import { MetadataTableType } from "../types/MetadataTableType";
18
- import { InstanceChecker } from "../../util/InstanceChecker";
19
- import { BroadcasterResult } from "../../subscriber/BroadcasterResult";
20
20
  /**
21
21
  * Runs queries on a single oracle database connection.
22
22
  */
@@ -141,9 +141,9 @@ export class OracleQueryRunner extends BaseQueryRunner {
141
141
  if (this.isReleased)
142
142
  throw new QueryRunnerAlreadyReleasedError();
143
143
  const databaseConnection = await this.connect();
144
- const broadcasterResult = new BroadcasterResult();
145
144
  this.driver.connection.logger.logQuery(query, parameters, this);
146
- this.broadcaster.broadcastBeforeQueryEvent(broadcasterResult, query, parameters);
145
+ await this.broadcaster.broadcast("BeforeQuery", query, parameters);
146
+ const broadcasterResult = new BroadcasterResult();
147
147
  const queryStartTime = Date.now();
148
148
  try {
149
149
  const executionOptions = {