@itwin/core-backend 4.2.0-dev.19 → 4.2.0-dev.22

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/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  # Change Log - @itwin/core-backend
2
2
 
3
- This log was last generated on Fri, 08 Sep 2023 13:39:03 GMT and should not be manually modified.
3
+ This log was last generated on Tue, 12 Sep 2023 15:40:33 GMT and should not be manually modified.
4
+
5
+ ## 4.1.6
6
+ Tue, 12 Sep 2023 15:38:52 GMT
7
+
8
+ _Version update only_
4
9
 
5
10
  ## 4.1.5
6
11
  Fri, 08 Sep 2023 13:37:23 GMT
@@ -942,6 +942,8 @@ export declare namespace IModelDb {
942
942
  * @throws [[IModelError]]
943
943
  */
944
944
  private _queryAspect;
945
+ private static classMap;
946
+ private runInstanceQuery;
945
947
  /** Get a single ElementAspect by its instance Id.
946
948
  * @throws [[IModelError]]
947
949
  */
@@ -949,9 +951,10 @@ export declare namespace IModelDb {
949
951
  /** Get the ElementAspect instances that are owned by the specified element.
950
952
  * @param elementId Get ElementAspects associated with this Element
951
953
  * @param aspectClassFullName Optionally filter ElementAspects polymorphically by this class name
954
+ * @param excludedClassFullNames Optional filter to exclude aspects from classes in the given set.
952
955
  * @throws [[IModelError]]
953
956
  */
954
- getAspects(elementId: Id64String, aspectClassFullName?: string): ElementAspect[];
957
+ getAspects(elementId: Id64String, aspectClassFullName?: string, excludedClassFullNames?: Set<string>): ElementAspect[];
955
958
  /** Insert a new ElementAspect into the iModel.
956
959
  * @param aspectProps The properties of the new ElementAspect.
957
960
  * @throws [[IModelError]] if unable to insert the ElementAspect.
@@ -1147,6 +1150,13 @@ export declare class BriefcaseDb extends IModelDb {
1147
1150
  * @param args parameters that specify the file name, and options for opening the briefcase file
1148
1151
  */
1149
1152
  static open(args: OpenBriefcaseArgs): Promise<BriefcaseDb>;
1153
+ /** If the briefcase is read-only, reopen the native briefcase for writing.
1154
+ * Execute the supplied function.
1155
+ * If the briefcase was read-only, reopen the native briefcase as read-only.
1156
+ * @note this._openMode is not changed from its initial value.
1157
+ * @internal Exported strictly for tests.
1158
+ */
1159
+ executeWritable(func: () => Promise<void>): Promise<void>;
1150
1160
  private closeAndReopen;
1151
1161
  /** Pull and apply changesets from iModelHub */
1152
1162
  pullChanges(arg?: PullChangesArgs): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"IModelDb.d.ts","sourceRoot":"","sources":["../../src/IModelDb.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IModelDb.d.ts","sourceRoot":"","sources":["../../src/IModelDb.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,6 @@ const CodeSpecs_1 = require("./CodeSpecs");
25
25
  const ConcurrentQuery_1 = require("./ConcurrentQuery");
26
26
  const ECSqlStatement_1 = require("./ECSqlStatement");
27
27
  const Element_1 = require("./Element");
28
- const ElementAspect_1 = require("./ElementAspect");
29
28
  const ElementGraphics_1 = require("./ElementGraphics");
30
29
  const Entity_1 = require("./Entity");
31
30
  const GeoCoordConfig_1 = require("./GeoCoordConfig");
@@ -1736,6 +1735,27 @@ exports.IModelDb = IModelDb;
1736
1735
  }
1737
1736
  return this._iModel.constructEntity(aspect);
1738
1737
  }
1738
+ runInstanceQuery(sql, elementId, excludedClassFullNames) {
1739
+ return this._iModel.withPreparedStatement(sql, (statement) => {
1740
+ statement.bindId("elementId", elementId);
1741
+ const aspects = [];
1742
+ while (core_bentley_1.DbResult.BE_SQLITE_ROW === statement.step()) {
1743
+ const row = {};
1744
+ const parsedRow = JSON.parse(statement.getValue(0).getString());
1745
+ // eslint-disable-next-line guard-for-in
1746
+ for (const key in parsedRow) {
1747
+ const jsName = core_common_1.ECJsNames.toJsName(key[0].toUpperCase() + key.substring(1));
1748
+ Object.defineProperty(row, jsName, { enumerable: true, configurable: true, writable: true, value: parsedRow[key] });
1749
+ }
1750
+ const aspectProps = row;
1751
+ aspectProps.classFullName = aspectProps.className.replace(".", ":"); // add in property required by EntityProps
1752
+ aspectProps.className = undefined; // clear property from SELECT $ that we don't want in the final instance
1753
+ if ((undefined === excludedClassFullNames) || !excludedClassFullNames.has(aspectProps.classFullName))
1754
+ aspects.push(this._iModel.constructEntity(aspectProps));
1755
+ }
1756
+ return aspects;
1757
+ });
1758
+ }
1739
1759
  /** Get a single ElementAspect by its instance Id.
1740
1760
  * @throws [[IModelError]]
1741
1761
  */
@@ -1753,16 +1773,40 @@ exports.IModelDb = IModelDb;
1753
1773
  /** Get the ElementAspect instances that are owned by the specified element.
1754
1774
  * @param elementId Get ElementAspects associated with this Element
1755
1775
  * @param aspectClassFullName Optionally filter ElementAspects polymorphically by this class name
1776
+ * @param excludedClassFullNames Optional filter to exclude aspects from classes in the given set.
1756
1777
  * @throws [[IModelError]]
1757
1778
  */
1758
- getAspects(elementId, aspectClassFullName) {
1759
- if (undefined === aspectClassFullName) {
1760
- const uniqueAspects = this._queryAspects(elementId, ElementAspect_1.ElementUniqueAspect.classFullName);
1761
- const multiAspects = this._queryAspects(elementId, ElementAspect_1.ElementMultiAspect.classFullName);
1762
- return uniqueAspects.concat(multiAspects);
1779
+ getAspects(elementId, aspectClassFullName, excludedClassFullNames) {
1780
+ if (aspectClassFullName === undefined)
1781
+ return this.runInstanceQuery(`SELECT $ FROM (
1782
+ SELECT ECInstanceId, ECClassId FROM Bis.ElementMultiAspect WHERE Element.Id = :elementId
1783
+ UNION ALL
1784
+ SELECT ECInstanceId, ECClassId FROM Bis.ElementUniqueAspect WHERE Element.Id = :elementId) OPTIONS USE_JS_PROP_NAMES DO_NOT_TRUNCATE_BLOB ENABLE_EXPERIMENTAL_FEATURES`, elementId, excludedClassFullNames);
1785
+ // Check if class is abstract
1786
+ const fullClassName = aspectClassFullName.split(":");
1787
+ const val = this._iModel.nativeDb.getECClassMetaData(fullClassName[0], fullClassName[1]);
1788
+ if (val.result !== undefined) {
1789
+ const metaData = new core_common_1.EntityMetaData(JSON.parse(val.result));
1790
+ if (metaData.modifier !== "Abstract") // Class is not abstract, use normal query to retrieve aspects
1791
+ return this._queryAspects(elementId, aspectClassFullName, excludedClassFullNames);
1792
+ }
1793
+ // If class specified is abstract, get the list of all classes derived from it
1794
+ let classIdList = IModelDb.Elements.classMap.get(aspectClassFullName);
1795
+ if (classIdList === undefined) {
1796
+ const classIds = [];
1797
+ this._iModel.withPreparedStatement(`select distinct(ECClassId) from ${aspectClassFullName}`, (statement) => {
1798
+ while (statement.step() === core_bentley_1.DbResult.BE_SQLITE_ROW)
1799
+ classIds.push(statement.getValue(0).getId());
1800
+ });
1801
+ classIdList = classIds.join(",");
1802
+ IModelDb.Elements.classMap.set(aspectClassFullName, classIdList);
1763
1803
  }
1764
- const aspects = this._queryAspects(elementId, aspectClassFullName);
1765
- return aspects;
1804
+ // Execute an instance query to retrieve all aspects from all the derived classes
1805
+ return this.runInstanceQuery(`SELECT $ FROM (
1806
+ SELECT ECInstanceId, ECClassId FROM Bis.ElementMultiAspect WHERE Element.Id = :elementId AND ECClassId IN (${classIdList})
1807
+ UNION ALL
1808
+ SELECT ECInstanceId, ECClassId FROM Bis.ElementUniqueAspect WHERE Element.Id = :elementId AND ECClassId IN (${classIdList})
1809
+ ) OPTIONS USE_JS_PROP_NAMES DO_NOT_TRUNCATE_BLOB ENABLE_EXPERIMENTAL_FEATURES`, elementId, excludedClassFullNames);
1766
1810
  }
1767
1811
  /** Insert a new ElementAspect into the iModel.
1768
1812
  * @param aspectProps The properties of the new ElementAspect.
@@ -1807,6 +1851,7 @@ exports.IModelDb = IModelDb;
1807
1851
  });
1808
1852
  }
1809
1853
  }
1854
+ Elements.classMap = new Map();
1810
1855
  IModelDb.Elements = Elements;
1811
1856
  /** The collection of views in an [[IModelDb]].
1812
1857
  * @public
@@ -2176,8 +2221,14 @@ class BriefcaseDb extends IModelDb {
2176
2221
  if (args.watchForChanges && undefined === args.container) {
2177
2222
  // Must touch the file synchronously - cannot watch a file until it exists.
2178
2223
  touch.sync(briefcaseDb.watchFilePathName);
2179
- const watcher = fs.watch(briefcaseDb.watchFilePathName, { persistent: false }, () => nativeDb.restartDefaultTxn());
2180
- briefcaseDb.onBeforeClose.addOnce(() => watcher.close()); // Stop the watcher when we close this connection.
2224
+ // Restart default txn to trigger events when watch file is changed by some other process.
2225
+ const watcher = fs.watch(briefcaseDb.watchFilePathName, { persistent: false }, () => {
2226
+ nativeDb.restartDefaultTxn();
2227
+ });
2228
+ // Stop the watcher when we close this connection.
2229
+ briefcaseDb.onBeforeClose.addOnce(() => {
2230
+ watcher.close();
2231
+ });
2181
2232
  }
2182
2233
  if (openMode === core_bentley_1.OpenMode.ReadWrite && CodeService_1.CodeService.createForIModel) {
2183
2234
  try {
@@ -2192,23 +2243,39 @@ class BriefcaseDb extends IModelDb {
2192
2243
  this.onOpened.raiseEvent(briefcaseDb, args);
2193
2244
  return briefcaseDb;
2194
2245
  }
2246
+ /** If the briefcase is read-only, reopen the native briefcase for writing.
2247
+ * Execute the supplied function.
2248
+ * If the briefcase was read-only, reopen the native briefcase as read-only.
2249
+ * @note this._openMode is not changed from its initial value.
2250
+ * @internal Exported strictly for tests.
2251
+ */
2252
+ async executeWritable(func) {
2253
+ if (this.isReadonly)
2254
+ this.closeAndReopen(core_bentley_1.OpenMode.ReadWrite);
2255
+ try {
2256
+ await func();
2257
+ }
2258
+ finally {
2259
+ if (this.isReadonly)
2260
+ this.closeAndReopen(core_bentley_1.OpenMode.Readonly);
2261
+ }
2262
+ }
2195
2263
  closeAndReopen(openMode) {
2196
2264
  const fileName = this.pathName;
2265
+ // Unclosed statements will produce BUSY error when attempting to close.
2266
+ this.clearCaches();
2267
+ // The following resets the native db's pointer to this JavaScript object.
2197
2268
  this.nativeDb.closeIModel();
2198
2269
  this.nativeDb.openIModel(fileName, openMode);
2270
+ // Restore the native db's pointer to this JavaScript object.
2271
+ this.nativeDb.setIModelDb(this);
2199
2272
  }
2200
2273
  /** Pull and apply changesets from iModelHub */
2201
2274
  async pullChanges(arg) {
2202
- if (this.isReadonly) // we allow pulling changes into a briefcase that is readonly - close and reopen it writeable
2203
- this.closeAndReopen(core_bentley_1.OpenMode.ReadWrite);
2204
- try {
2275
+ await this.executeWritable(async () => {
2205
2276
  await BriefcaseManager_1.BriefcaseManager.pullAndApplyChangesets(this, arg ?? {});
2206
2277
  this.initializeIModelDb();
2207
- }
2208
- finally {
2209
- if (this.isReadonly) // if the briefcase was opened readonly - close and reopen it readonly
2210
- this.closeAndReopen(core_bentley_1.OpenMode.Readonly);
2211
- }
2278
+ });
2212
2279
  IpcHost_1.IpcHost.notifyTxns(this, "notifyPulledChanges", this.changeset);
2213
2280
  }
2214
2281
  /** Push changes to iModelHub. */