@itwin/imodel-transformer 0.4.4-dev.1 → 0.4.18-dev.0
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 +1 -9
- package/lib/cjs/Algo.d.ts +7 -0
- package/lib/cjs/Algo.d.ts.map +1 -0
- package/lib/cjs/Algo.js +65 -0
- package/lib/cjs/Algo.js.map +1 -0
- package/lib/cjs/BigMap.d.ts +1 -6
- package/lib/cjs/BigMap.d.ts.map +1 -1
- package/lib/cjs/BigMap.js +3 -29
- package/lib/cjs/BigMap.js.map +1 -1
- package/lib/cjs/BranchProvenanceInitializer.d.ts +10 -3
- package/lib/cjs/BranchProvenanceInitializer.d.ts.map +1 -1
- package/lib/cjs/BranchProvenanceInitializer.js +101 -10
- package/lib/cjs/BranchProvenanceInitializer.js.map +1 -1
- package/lib/cjs/DetachedExportElementAspectsStrategy.d.ts.map +1 -1
- package/lib/cjs/DetachedExportElementAspectsStrategy.js +12 -5
- package/lib/cjs/DetachedExportElementAspectsStrategy.js.map +1 -1
- package/lib/cjs/ECReferenceTypesCache.d.ts.map +1 -1
- package/lib/cjs/ECReferenceTypesCache.js +32 -18
- package/lib/cjs/ECReferenceTypesCache.js.map +1 -1
- package/lib/cjs/ECSqlReaderAsyncIterableIteratorAdapter.d.ts +1 -1
- package/lib/cjs/ECSqlReaderAsyncIterableIteratorAdapter.d.ts.map +1 -1
- package/lib/cjs/ECSqlReaderAsyncIterableIteratorAdapter.js +7 -5
- package/lib/cjs/ECSqlReaderAsyncIterableIteratorAdapter.js.map +1 -1
- package/lib/cjs/ElementCascadingDeleter.d.ts +3 -3
- package/lib/cjs/ElementCascadingDeleter.d.ts.map +1 -1
- package/lib/cjs/ElementCascadingDeleter.js +9 -7
- package/lib/cjs/ElementCascadingDeleter.js.map +1 -1
- package/lib/cjs/EntityMap.d.ts.map +1 -1
- package/lib/cjs/EntityMap.js.map +1 -1
- package/lib/cjs/EntityUnifier.d.ts +5 -0
- package/lib/cjs/EntityUnifier.d.ts.map +1 -1
- package/lib/cjs/EntityUnifier.js +22 -35
- package/lib/cjs/EntityUnifier.js.map +1 -1
- package/lib/cjs/ExportElementAspectsStrategy.d.ts.map +1 -1
- package/lib/cjs/ExportElementAspectsStrategy.js +5 -4
- package/lib/cjs/ExportElementAspectsStrategy.js.map +1 -1
- package/lib/cjs/ExportElementAspectsWithElementsStrategy.d.ts.map +1 -1
- package/lib/cjs/ExportElementAspectsWithElementsStrategy.js +9 -5
- package/lib/cjs/ExportElementAspectsWithElementsStrategy.js.map +1 -1
- package/lib/cjs/IModelCloneContext.d.ts.map +1 -1
- package/lib/cjs/IModelCloneContext.js +23 -14
- package/lib/cjs/IModelCloneContext.js.map +1 -1
- package/lib/cjs/IModelExporter.d.ts +87 -21
- package/lib/cjs/IModelExporter.d.ts.map +1 -1
- package/lib/cjs/IModelExporter.js +279 -114
- package/lib/cjs/IModelExporter.js.map +1 -1
- package/lib/cjs/IModelImporter.d.ts +29 -21
- package/lib/cjs/IModelImporter.d.ts.map +1 -1
- package/lib/cjs/IModelImporter.js +115 -62
- package/lib/cjs/IModelImporter.js.map +1 -1
- package/lib/cjs/IModelTransformer.d.ts +285 -48
- package/lib/cjs/IModelTransformer.d.ts.map +1 -1
- package/lib/cjs/IModelTransformer.js +1273 -337
- package/lib/cjs/IModelTransformer.js.map +1 -1
- package/lib/cjs/PendingReferenceMap.d.ts.map +1 -1
- package/lib/cjs/PendingReferenceMap.js +12 -6
- package/lib/cjs/PendingReferenceMap.js.map +1 -1
- package/lib/cjs/TransformerLoggerCategory.d.ts +2 -2
- package/lib/cjs/TransformerLoggerCategory.d.ts.map +1 -1
- package/lib/cjs/TransformerLoggerCategory.js +5 -5
- package/lib/cjs/TransformerLoggerCategory.js.map +1 -1
- package/lib/cjs/transformer.d.ts.map +1 -1
- package/lib/cjs/transformer.js +14 -10
- package/lib/cjs/transformer.js.map +1 -1
- package/package.json +20 -17
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { AccessToken, Id64String } from "@itwin/core-bentley";
|
|
1
|
+
import { AccessToken, Id64Array, Id64String } from "@itwin/core-bentley";
|
|
2
2
|
import * as ECSchemaMetaData from "@itwin/ecschema-metadata";
|
|
3
|
-
import { Element, ElementAspect, ElementMultiAspect, ElementUniqueAspect, Entity, IModelDb, Model, Relationship, RelationshipProps, SQLiteDb } from "@itwin/core-backend";
|
|
4
|
-
import { CodeSpec, ElementAspectProps, ElementProps, EntityReference, EntityReferenceSet, ExternalSourceAspectProps, FontProps, ModelProps, Placement2d, Placement3d } from "@itwin/core-common";
|
|
3
|
+
import { Element, ElementAspect, ElementMultiAspect, ElementUniqueAspect, Entity, ExternalSourceAspect, IModelDb, Model, Relationship, RelationshipProps, SQLiteDb } from "@itwin/core-backend";
|
|
4
|
+
import { ChangesetIndexAndId, CodeSpec, ElementAspectProps, ElementProps, EntityReference, EntityReferenceSet, ExternalSourceAspectProps, FontProps, ModelProps, Placement2d, Placement3d } from "@itwin/core-common";
|
|
5
5
|
import { ExportChangesOptions, ExportSchemaResult, IModelExporter, IModelExportHandler } from "./IModelExporter";
|
|
6
6
|
import { IModelImporter, OptimizeGeometryOptions } from "./IModelImporter";
|
|
7
7
|
import { PendingReferenceMap } from "./PendingReferenceMap";
|
|
@@ -13,7 +13,8 @@ import { IModelCloneContext } from "./IModelCloneContext";
|
|
|
13
13
|
*/
|
|
14
14
|
export interface IModelTransformOptions {
|
|
15
15
|
/** The Id of the Element in the **target** iModel that represents the **source** repository as a whole and scopes its [ExternalSourceAspect]($backend) instances.
|
|
16
|
-
*
|
|
16
|
+
* It is always a good idea to define this, although particularly necessary in any multi-source scenario such as multiple branches that reverse synchronize
|
|
17
|
+
* or physical consolidation.
|
|
17
18
|
*/
|
|
18
19
|
targetScopeElementId?: Id64String;
|
|
19
20
|
/** Set to `true` if IModelTransformer should not record its provenance.
|
|
@@ -38,6 +39,7 @@ export interface IModelTransformOptions {
|
|
|
38
39
|
* The most common example is to first synchronize master to branch, make changes to the branch, and then reverse directions to synchronize from branch to master.
|
|
39
40
|
* This means that the provenance on the (current) source is used instead.
|
|
40
41
|
* @note This also means that only [[IModelTransformer.processChanges]] can detect deletes.
|
|
42
|
+
* @deprecated in 1.x this option is ignored and the transformer now detects synchronization direction using the target scope element
|
|
41
43
|
*/
|
|
42
44
|
isReverseSynchronization?: boolean;
|
|
43
45
|
/** Flag that indicates whether or not the transformation process needs to consider the source geometry before cloning/transforming.
|
|
@@ -100,6 +102,42 @@ export interface IModelTransformOptions {
|
|
|
100
102
|
* @beta
|
|
101
103
|
*/
|
|
102
104
|
optimizeGeometry?: OptimizeGeometryOptions;
|
|
105
|
+
/**
|
|
106
|
+
* force the insertion of external source aspects to provide provenance, even if there are federation guids
|
|
107
|
+
* in the source that we can use. This can make some operations (like transforming new elements or initializing forks)
|
|
108
|
+
* much slower due to needing to insert aspects, but prevents requiring change information for future merges.
|
|
109
|
+
* @default false
|
|
110
|
+
*/
|
|
111
|
+
forceExternalSourceAspectProvenance?: boolean;
|
|
112
|
+
/**
|
|
113
|
+
* Do not detach the change cache that we build. Use this if you want to do multiple transformations to
|
|
114
|
+
* the same iModels, to avoid the performance cost of reinitializing the change cache which can be
|
|
115
|
+
* expensive. You should only use this if you know the cache will be reused.
|
|
116
|
+
* @note You must detach the change cache yourself.
|
|
117
|
+
* @default false
|
|
118
|
+
*/
|
|
119
|
+
noDetachChangeCache?: boolean;
|
|
120
|
+
/**
|
|
121
|
+
* Do not check that processChanges is called from the next changeset index.
|
|
122
|
+
* This is an unsafe option (e.g. it can cause data loss in future branch operations)
|
|
123
|
+
* and you should not use it.
|
|
124
|
+
* @default false
|
|
125
|
+
*/
|
|
126
|
+
ignoreMissingChangesetsInSynchronizations?: boolean;
|
|
127
|
+
/**
|
|
128
|
+
* Do not error out if a scoping ESA @see ExternalSourceAspectProps is found without a version or jsonProperties defined on that scoping ESA.
|
|
129
|
+
* If true, the version and jsonproperties will be properly set on the scoping ESA @see TargetScopeProvenanceJsonProps after the transformer is complete.
|
|
130
|
+
* These properties not being defined are a sign that this branching relationship was created with an older version of the transformer, and setting this option to 'unsafe-migrate' is not without risk.
|
|
131
|
+
* Depending on the state of the branching relationship at the time of using this option, some data may be lost.
|
|
132
|
+
* @note This should only need to be set to 'unsafe-migrate' at most once for a branching relationship. For future transformations on the branching relationship, the @see TargetScopeProvenanceJsonProps will be present.
|
|
133
|
+
* @default "reject"
|
|
134
|
+
*/
|
|
135
|
+
branchRelationshipDataBehavior?: "unsafe-migrate" | "reject";
|
|
136
|
+
/**
|
|
137
|
+
* Skip propagating changes made to the root subject, dictionaryModel and IModelImporter._realityDataSourceLinkPartitionStaticId (0xe)
|
|
138
|
+
* @default false
|
|
139
|
+
*/
|
|
140
|
+
skipPropagateChangesToRootElements?: boolean;
|
|
103
141
|
}
|
|
104
142
|
/**
|
|
105
143
|
* A container for tracking the state of a partially committed entity and finalizing it when it's ready to be fully committed
|
|
@@ -123,10 +161,31 @@ declare class PartiallyCommittedEntity {
|
|
|
123
161
|
resolveReference(id: EntityReference): void;
|
|
124
162
|
forceComplete(): void;
|
|
125
163
|
}
|
|
126
|
-
/**
|
|
164
|
+
/**
|
|
165
|
+
* Data type for persisting change version information within provenance Scope ExternalSourceAspect.
|
|
166
|
+
* Additionally, forward synchronization version is stored in Scope aspect's 'version' field.
|
|
127
167
|
* @beta
|
|
128
168
|
*/
|
|
129
|
-
export interface
|
|
169
|
+
export interface TargetScopeProvenanceJsonProps {
|
|
170
|
+
/** An array of changeset indices to ignore when doing a reverse sync. This array gets appended to during a forward sync and cleared
|
|
171
|
+
* during a reverse sync. Since a forward sync pushes a changeset to the branch db, the changeset pushed to the branch db
|
|
172
|
+
* by the forward sync isn't considered part of the changes made on the branch db and therefore doesn't need to be synced back to master
|
|
173
|
+
* during a forward sync.
|
|
174
|
+
*/
|
|
175
|
+
pendingReverseSyncChangesetIndices: number[];
|
|
176
|
+
/** An array of changeset indices to ignore when doing a forward sync. This array gets appended to during a reverse sync and cleared
|
|
177
|
+
* during a forward sync. Since a reverse sync pushes a changeset to the master db, the changeset pushed to the master db
|
|
178
|
+
* by the reverse sync isn't considered part of the changes made on the master db and therefore doesn't need to be synced back to the branch
|
|
179
|
+
* during a forward sync.
|
|
180
|
+
*/
|
|
181
|
+
pendingSyncChangesetIndices: number[];
|
|
182
|
+
/** the latest changesetid/index reverse synced into master */
|
|
183
|
+
reverseSyncVersion: string;
|
|
184
|
+
}
|
|
185
|
+
/** Arguments you can pass to [[IModelTransformer.initialize]]
|
|
186
|
+
* @beta
|
|
187
|
+
*/
|
|
188
|
+
export interface InitOptions {
|
|
130
189
|
accessToken?: AccessToken;
|
|
131
190
|
/**
|
|
132
191
|
* Include changes from this changeset up through and including the current changeset.
|
|
@@ -142,8 +201,39 @@ export interface InitFromExternalSourceAspectsArgs {
|
|
|
142
201
|
/**
|
|
143
202
|
* Arguments for [[IModelTransformer.processChanges]]
|
|
144
203
|
*/
|
|
145
|
-
export
|
|
204
|
+
export type ProcessChangesOptions = ExportChangesOptions & FinalizeTransformationOptions;
|
|
205
|
+
/**
|
|
206
|
+
* Options which modify the behavior of [[IModelTransformer.finalizeTransformation]], called at the end of [[IModelTransformer.processAll]] and [[IModelTransformer.processChanges]].
|
|
207
|
+
* @beta
|
|
208
|
+
*/
|
|
209
|
+
export interface FinalizeTransformationOptions {
|
|
210
|
+
/**
|
|
211
|
+
* This description will be used when the transformer needs to push changes to the branch during a reverse sync.
|
|
212
|
+
* @default `Update provenance in response to a reverse sync to iModel: ${this.targetDb.iModelId}`
|
|
213
|
+
*/
|
|
214
|
+
reverseSyncBranchChangesetDescription?: string;
|
|
215
|
+
/**
|
|
216
|
+
* This description will be used when the transformer needs to push changes to master during a reverse sync.
|
|
217
|
+
* @default `Reverse sync of iModel: ${this.sourceDb.iModelId}`
|
|
218
|
+
*/
|
|
219
|
+
reverseSyncMasterChangesetDescription?: string;
|
|
220
|
+
/**
|
|
221
|
+
* This description will be used when the transformer needs to push changes to the branch during a forward sync.
|
|
222
|
+
* @default `Forward sync of iModel: ${this.sourceDb.iModelId}`
|
|
223
|
+
*/
|
|
224
|
+
forwardSyncBranchChangesetDescription?: string;
|
|
225
|
+
/**
|
|
226
|
+
* This description will be used when the transformer needs to push changes to the branch during a provenance init transform.
|
|
227
|
+
* @default `initialized branch provenance with master iModel: ${this.sourceDb.iModelId}`
|
|
228
|
+
*/
|
|
229
|
+
provenanceInitTransformChangesetDescription?: string;
|
|
230
|
+
/** how to call saveChanges on the target. Must call targetDb.saveChanges, should not edit the iModel */
|
|
231
|
+
saveTargetChanges?: (transformer: IModelTransformer) => Promise<void>;
|
|
146
232
|
}
|
|
233
|
+
/** Arguments you can pass to [[IModelTransformer.initExternalSourceAspects]]
|
|
234
|
+
* @deprecated in 0.1.0. Use [[InitOptions]] (and [[IModelTransformer.initialize]]) instead.
|
|
235
|
+
*/
|
|
236
|
+
export type InitFromExternalSourceAspectsArgs = InitOptions;
|
|
147
237
|
/** Base class used to transform a source iModel into a different target iModel.
|
|
148
238
|
* @see [iModel Transformation and Data Exchange]($docs/learning/transformer/index.md), [IModelExporter]($transformer), [IModelImporter]($transformer)
|
|
149
239
|
* @beta
|
|
@@ -161,17 +251,57 @@ export declare class IModelTransformer extends IModelExportHandler {
|
|
|
161
251
|
readonly targetDb: IModelDb;
|
|
162
252
|
/** The IModelTransformContext for this IModelTransformer. */
|
|
163
253
|
readonly context: IModelCloneContext;
|
|
254
|
+
private _syncType?;
|
|
164
255
|
/** The Id of the Element in the **target** iModel that represents the **source** repository as a whole and scopes its [ExternalSourceAspect]($backend) instances. */
|
|
165
256
|
get targetScopeElementId(): Id64String;
|
|
166
257
|
/** map of (unprocessed element, referencing processed element) pairs to the partially committed element that needs the reference resolved
|
|
167
258
|
* and have some helper methods below for now */
|
|
168
259
|
protected _pendingReferences: PendingReferenceMap<PartiallyCommittedEntity>;
|
|
260
|
+
/** a set of elements for which source provenance will be explicitly tracked by ExternalSourceAspects */
|
|
261
|
+
protected _elementsWithExplicitlyTrackedProvenance: Set<string>;
|
|
169
262
|
/** map of partially committed entities to their partial commit progress */
|
|
170
263
|
protected _partiallyCommittedEntities: EntityMap<PartiallyCommittedEntity>;
|
|
171
264
|
/** the options that were used to initialize this transformer */
|
|
172
265
|
private readonly _options;
|
|
173
|
-
|
|
174
|
-
|
|
266
|
+
private _isSynchronization;
|
|
267
|
+
/**
|
|
268
|
+
* A private variable meant to be set by tests which have an outdated way of setting up transforms. In all synchronizations today we expect to find an ESA in the branch db which describes the master -> branch relationship.
|
|
269
|
+
* The exception to this is the first transform aka the provenance initializing transform which requires that the master imodel and the branch imodel are identical at the time of provenance initialization.
|
|
270
|
+
* A couple ofoutdated tests run their first transform providing a source and targetdb that are slightly different which is no longer supported. In order to not remove these tests which are still providing value
|
|
271
|
+
* this private property on the IModelTransformer exists.
|
|
272
|
+
*/
|
|
273
|
+
private _allowNoScopingESA;
|
|
274
|
+
static noEsaSyncDirectionErrorMessage: string;
|
|
275
|
+
/**
|
|
276
|
+
* Queries for an esa which matches the props in the provided aspectProps.
|
|
277
|
+
* @param dbToQuery db to run the query on for scope external source
|
|
278
|
+
* @param aspectProps aspectProps to search for @see ExternalSourceAspectProps
|
|
279
|
+
*/
|
|
280
|
+
static queryScopeExternalSourceAspect(dbToQuery: IModelDb, aspectProps: ExternalSourceAspectProps): {
|
|
281
|
+
aspectId: Id64String;
|
|
282
|
+
version?: string;
|
|
283
|
+
/** stringified json */
|
|
284
|
+
jsonProperties?: string;
|
|
285
|
+
} | undefined;
|
|
286
|
+
/**
|
|
287
|
+
* Determines the sync direction "forward" or "reverse" of a given sourceDb and targetDb by looking for the scoping ESA.
|
|
288
|
+
* If the sourceDb's iModelId is found as the identifier of the expected scoping ESA in the targetDb, then it is a forward synchronization.
|
|
289
|
+
* If the targetDb's iModelId is found as the identifier of the expected scoping ESA in the sourceDb, then it is a reverse synchronization.
|
|
290
|
+
* @throws if no scoping ESA can be found in either the sourceDb or targetDb which describes a master branch relationship between the two databases.
|
|
291
|
+
* @returns "forward" or "reverse"
|
|
292
|
+
*/
|
|
293
|
+
static determineSyncType(sourceDb: IModelDb, targetDb: IModelDb,
|
|
294
|
+
/** @see [[IModelTransformOptions.targetScopeElementId]] */
|
|
295
|
+
targetScopeElementId: Id64String): "forward" | "reverse";
|
|
296
|
+
private determineSyncType;
|
|
297
|
+
get isReverseSynchronization(): boolean;
|
|
298
|
+
get isForwardSynchronization(): boolean;
|
|
299
|
+
private _changesetRanges;
|
|
300
|
+
/**
|
|
301
|
+
* Set if the transformer is being used to perform the provenance initialization step of a fork initialization.
|
|
302
|
+
* In general don't use the transformer for that, prefer [[BranchProvenanceInitializer.initializeBranchProvenance]]
|
|
303
|
+
*/
|
|
304
|
+
private _isProvenanceInitTransform?;
|
|
175
305
|
/** The element classes that are considered to define provenance in the iModel */
|
|
176
306
|
static get provenanceElementClasses(): (typeof Entity)[];
|
|
177
307
|
/** The element aspect classes that are considered to define provenance in the iModel */
|
|
@@ -186,6 +316,10 @@ export declare class IModelTransformer extends IModelExportHandler {
|
|
|
186
316
|
* @param options The options that specify how the transformation should be done.
|
|
187
317
|
*/
|
|
188
318
|
constructor(source: IModelDb | IModelExporter, target: IModelDb | IModelImporter, options?: IModelTransformOptions);
|
|
319
|
+
/** validates that the importer set on the transformer has the same values for its shared options as the transformer.
|
|
320
|
+
* @note This expects that the importer is already set on the transformer.
|
|
321
|
+
*/
|
|
322
|
+
private validateSharedOptionsMatch;
|
|
189
323
|
/** Dispose any native resources associated with this IModelTransformer. */
|
|
190
324
|
dispose(): void;
|
|
191
325
|
/** Log current settings that affect IModelTransformer's behavior. */
|
|
@@ -205,44 +339,96 @@ export declare class IModelTransformer extends IModelExportHandler {
|
|
|
205
339
|
isReverseSynchronization: boolean;
|
|
206
340
|
targetScopeElementId: Id64String;
|
|
207
341
|
}): ExternalSourceAspectProps;
|
|
342
|
+
static initRelationshipProvenanceOptions(sourceRelInstanceId: Id64String, targetRelInstanceId: Id64String, args: {
|
|
343
|
+
sourceDb: IModelDb;
|
|
344
|
+
targetDb: IModelDb;
|
|
345
|
+
isReverseSynchronization: boolean;
|
|
346
|
+
targetScopeElementId: Id64String;
|
|
347
|
+
forceOldRelationshipProvenanceMethod: boolean;
|
|
348
|
+
}): ExternalSourceAspectProps;
|
|
349
|
+
/**
|
|
350
|
+
* Previously the transformer would insert provenance always pointing to the "target" relationship.
|
|
351
|
+
* It should (and now by default does) instead insert provenance pointing to the provenanceSource
|
|
352
|
+
* SEE: https://github.com/iTwin/imodel-transformer/issues/54
|
|
353
|
+
* This exists only to facilitate testing that the transformer can handle the older, flawed method
|
|
354
|
+
*/
|
|
355
|
+
private _forceOldRelationshipProvenanceMethod;
|
|
208
356
|
/** Create an ExternalSourceAspectProps in a standard way for an Element in an iModel --> iModel transformation. */
|
|
209
|
-
|
|
357
|
+
initElementProvenance(sourceElementId: Id64String, targetElementId: Id64String): ExternalSourceAspectProps;
|
|
210
358
|
/** Create an ExternalSourceAspectProps in a standard way for a Relationship in an iModel --> iModel transformations.
|
|
211
359
|
* The ExternalSourceAspect is meant to be owned by the Element in the target iModel that is the `sourceId` of transformed relationship.
|
|
212
|
-
* The `identifier` property of the ExternalSourceAspect will be the ECInstanceId of the relationship in the
|
|
213
|
-
* The ECInstanceId of the relationship in the
|
|
360
|
+
* The `identifier` property of the ExternalSourceAspect will be the ECInstanceId of the relationship in the master iModel.
|
|
361
|
+
* The ECInstanceId of the relationship in the branch iModel will be stored in the JsonProperties of the ExternalSourceAspect.
|
|
214
362
|
*/
|
|
215
363
|
private initRelationshipProvenance;
|
|
216
|
-
|
|
217
|
-
private
|
|
218
|
-
/**
|
|
364
|
+
/** NOTE: the json properties must be converted to string before insertion */
|
|
365
|
+
private _targetScopeProvenanceProps;
|
|
366
|
+
/**
|
|
367
|
+
* Index of the changeset that the transformer was at when the transformation begins (was constructed).
|
|
368
|
+
* Used to determine at the end which changesets were part of a synchronization.
|
|
369
|
+
*/
|
|
370
|
+
private _startingChangesetIndices;
|
|
371
|
+
private _cachedSynchronizationVersion;
|
|
372
|
+
/** the changeset in the scoping element's source version found for this transformation
|
|
373
|
+
* @note: the version depends on whether this is a reverse synchronization or not, as
|
|
374
|
+
* it is stored separately for both synchronization directions.
|
|
375
|
+
* @note: must call [[initScopeProvenance]] before using this property.
|
|
376
|
+
* @note: empty string and -1 for changeset and index if it has never been transformed or was transformed before federation guid update (pre 1.x).
|
|
377
|
+
*/
|
|
378
|
+
private get _synchronizationVersion();
|
|
379
|
+
/** the changeset in the scoping element's source version found for this transformation
|
|
380
|
+
* @note: the version depends on whether this is a reverse synchronization or not, as
|
|
381
|
+
* it is stored separately for both synchronization directions.
|
|
382
|
+
* @note: empty string and -1 for changeset and index if it has never been transformed, or was transformed before federation guid update (pre 1.x).
|
|
383
|
+
*/
|
|
384
|
+
protected get synchronizationVersion(): ChangesetIndexAndId;
|
|
385
|
+
/**
|
|
386
|
+
* @returns provenance scope aspect if it exists in the provenanceDb.
|
|
387
|
+
* Provenance scope aspect is created and inserted into provenanceDb when [[initScopeProvenance]] is invoked.
|
|
388
|
+
*/
|
|
389
|
+
protected tryGetProvenanceScopeAspect(): ExternalSourceAspect | undefined;
|
|
390
|
+
/**
|
|
391
|
+
* Make sure there are no conflicting other scope-type external source aspects on the *target scope element*,
|
|
392
|
+
* If there are none at all, insert one, then this must be a first synchronization.
|
|
393
|
+
* @returns the last synced version (changesetId) on the target scope's external source aspect,
|
|
394
|
+
* if this was a [BriefcaseDb]($backend)
|
|
395
|
+
*/
|
|
396
|
+
protected initScopeProvenance(): void;
|
|
397
|
+
/**
|
|
398
|
+
* Iterate all matching federation guids and ExternalSourceAspects in the provenance iModel (target unless reverse sync)
|
|
399
|
+
* and call a function for each one.
|
|
400
|
+
* @note provenance is done by federation guids where possible
|
|
401
|
+
* @note this may execute on each element more than once! Only use in cases where that is handled
|
|
402
|
+
*/
|
|
219
403
|
static forEachTrackedElement(args: {
|
|
220
404
|
provenanceSourceDb: IModelDb;
|
|
221
405
|
provenanceDb: IModelDb;
|
|
222
406
|
targetScopeElementId: Id64String;
|
|
223
407
|
isReverseSynchronization: boolean;
|
|
224
408
|
fn: (sourceElementId: Id64String, targetElementId: Id64String) => void;
|
|
409
|
+
skipPropagateChangesToRootElements: boolean;
|
|
225
410
|
}): void;
|
|
226
411
|
private forEachTrackedElement;
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
/** When processing deleted elements in a reverse synchronization, the [[provenanceDb]] (usually a branch iModel) has already
|
|
235
|
-
* deleted the [ExternalSourceAspect]($backend)s that tell us which elements in the reverse synchronization target (usually
|
|
236
|
-
* a master iModel) should be deleted. We must use the changesets to get the values of those before they were deleted.
|
|
237
|
-
*/
|
|
238
|
-
private remapDeletedSourceElements;
|
|
412
|
+
private _queryProvenanceForElement;
|
|
413
|
+
private _queryProvenanceForRelationship;
|
|
414
|
+
private _queryTargetRelId;
|
|
415
|
+
private _targetClassNameToClassIdCache;
|
|
416
|
+
private _targetClassNameToClassId;
|
|
417
|
+
private _getRelClassId;
|
|
418
|
+
private _queryElemIdByFedGuid;
|
|
239
419
|
/** Returns `true` if *brute force* delete detections should be run.
|
|
420
|
+
* @note This is only called if [[IModelTransformOptions.forceExternalSourceAspectProvenance]] option is true
|
|
240
421
|
* @note Not relevant for processChanges when change history is known.
|
|
241
422
|
*/
|
|
242
423
|
protected shouldDetectDeletes(): boolean;
|
|
243
|
-
/**
|
|
244
|
-
*
|
|
245
|
-
*
|
|
424
|
+
/**
|
|
425
|
+
* Detect Element deletes using ExternalSourceAspects in the target iModel and a *brute force* comparison against Elements
|
|
426
|
+
* in the source iModel.
|
|
427
|
+
* @deprecated in 1.x. Do not use this. // FIXME<MIKE>: how to better explain this?
|
|
428
|
+
* This method is only called during [[processAll]] when the option
|
|
429
|
+
* [[IModelTransformOptions.forceExternalSourceAspectProvenance]] is enabled. It is not
|
|
430
|
+
* necessary when using [[processChanges]] since changeset information is sufficient.
|
|
431
|
+
* @note you do not need to call this directly unless processing a subset of an iModel.
|
|
246
432
|
* @throws [[IModelError]] If the required provenance information is not available to detect deletes.
|
|
247
433
|
*/
|
|
248
434
|
detectElementDeletes(): Promise<void>;
|
|
@@ -257,12 +443,14 @@ export declare class IModelTransformer extends IModelExportHandler {
|
|
|
257
443
|
* @note This can be called more than once for an element in arbitrary order, so it should not have side-effects.
|
|
258
444
|
*/
|
|
259
445
|
onTransformElement(sourceElement: Element): ElementProps;
|
|
446
|
+
private _hasElementChangedCache?;
|
|
447
|
+
private _deletedSourceRelationshipData?;
|
|
260
448
|
/** Returns true if a change within sourceElement is detected.
|
|
261
449
|
* @param sourceElement The Element from the source iModel
|
|
262
450
|
* @param targetElementId The Element from the target iModel to compare against.
|
|
263
451
|
* @note A subclass can override this method to provide custom change detection behavior.
|
|
264
452
|
*/
|
|
265
|
-
protected hasElementChanged(sourceElement: Element,
|
|
453
|
+
protected hasElementChanged(sourceElement: Element, _targetElementId: Id64String): boolean;
|
|
266
454
|
private static transformCallbackFor;
|
|
267
455
|
/** callback to perform when a partial element says it's ready to be completed
|
|
268
456
|
* transforms the source element with all references now valid, then updates the partial element with the results
|
|
@@ -335,6 +523,19 @@ export declare class IModelTransformer extends IModelExportHandler {
|
|
|
335
523
|
* @deprecated in 3.x. This method is no longer necessary since the transformer no longer needs to defer elements
|
|
336
524
|
*/
|
|
337
525
|
processDeferredElements(_numRetries?: number): Promise<void>;
|
|
526
|
+
/** called at the end ([[finalizeTransformation]]) of a transformation,
|
|
527
|
+
* updates the target scope element to say that transformation up through the
|
|
528
|
+
* source's changeset has been performed. Also stores all changesets that occurred
|
|
529
|
+
* during the transformation as "pending synchronization changeset indices" @see TargetScopeProvenanceJsonProps
|
|
530
|
+
*
|
|
531
|
+
* You generally should not call this function yourself and use [[processChanges]] instead.
|
|
532
|
+
* It is public for unsupported use cases of custom synchronization transforms.
|
|
533
|
+
* @note if you are not running processChanges in this transformation, this will fail
|
|
534
|
+
* without setting the `force` option to `true`
|
|
535
|
+
*/
|
|
536
|
+
updateSynchronizationVersion({ force }?: {
|
|
537
|
+
force?: boolean | undefined;
|
|
538
|
+
}): void;
|
|
338
539
|
private finalizeTransformation;
|
|
339
540
|
/** Imports all relationships that subclass from the specified base class.
|
|
340
541
|
* @param baseRelClassFullName The specified base relationship class.
|
|
@@ -355,6 +556,7 @@ export declare class IModelTransformer extends IModelExportHandler {
|
|
|
355
556
|
onDeleteRelationship(sourceRelInstanceId: Id64String): void;
|
|
356
557
|
private _yieldManager;
|
|
357
558
|
/** Detect Relationship deletes using ExternalSourceAspects in the target iModel and a *brute force* comparison against relationships in the source iModel.
|
|
559
|
+
* @deprecated in 1.x. Don't use this anymore
|
|
358
560
|
* @see processChanges
|
|
359
561
|
* @note This method is called from [[processAll]] and is not needed by [[processChanges]], so it only needs to be called directly when processing a subset of an iModel.
|
|
360
562
|
* @throws [[IModelError]] If the required provenance information is not available to detect deletes.
|
|
@@ -406,8 +608,8 @@ export declare class IModelTransformer extends IModelExportHandler {
|
|
|
406
608
|
*/
|
|
407
609
|
processSchemas(): Promise<void>;
|
|
408
610
|
/** Cause all fonts to be exported from the source iModel and imported into the target iModel.
|
|
409
|
-
|
|
410
|
-
|
|
611
|
+
* @note This method is called from [[processChanges]] and [[processAll]], so it only needs to be called directly when processing a subset of an iModel.
|
|
612
|
+
*/
|
|
411
613
|
processFonts(): Promise<void>;
|
|
412
614
|
/** Override of [IModelExportHandler.onExportFont]($transformer) that imports a font into the target iModel when it is exported from the source iModel. */
|
|
413
615
|
onExportFont(font: FontProps, _isUpdate: boolean | undefined): void;
|
|
@@ -429,17 +631,41 @@ export declare class IModelTransformer extends IModelExportHandler {
|
|
|
429
631
|
processSubject(sourceSubjectId: Id64String, targetSubjectId: Id64String): Promise<void>;
|
|
430
632
|
/** state to prevent reinitialization, @see [[initialize]] */
|
|
431
633
|
private _initialized;
|
|
634
|
+
private _sourceChangeDataState;
|
|
635
|
+
/** length === 0 when _changeDataState = "no-change", length > 0 means "has-changes", otherwise undefined */
|
|
636
|
+
private _csFileProps?;
|
|
432
637
|
/**
|
|
433
|
-
* Initialize prerequisites of processing, you must initialize with an [[
|
|
434
|
-
* are intending process changes, but prefer using [[processChanges]]
|
|
435
|
-
* Called by all `process*` functions implicitly.
|
|
638
|
+
* Initialize prerequisites of processing, you must initialize with an [[InitOptions]] if you
|
|
639
|
+
* are intending to process changes, but prefer using [[processChanges]] explicitly since it calls this.
|
|
640
|
+
* @note Called by all `process*` functions implicitly.
|
|
436
641
|
* Overriders must call `super.initialize()` first
|
|
437
642
|
*/
|
|
438
|
-
initialize(args?:
|
|
643
|
+
initialize(args?: InitOptions): Promise<void>;
|
|
644
|
+
/**
|
|
645
|
+
* Reads all the changeset files in the private member of the transformer: _csFileProps and does two things with these changesets.
|
|
646
|
+
* Finds the corresponding target entity for any deleted source entities and remaps the sourceId to the targetId.
|
|
647
|
+
* Populates this._hasElementChangedCache with a set of elementIds that have been updated or inserted into the database.
|
|
648
|
+
* This function returns early if csFileProps is undefined or is of length 0.
|
|
649
|
+
* @returns void
|
|
650
|
+
*/
|
|
651
|
+
private processChangesets;
|
|
652
|
+
/**
|
|
653
|
+
* Helper function for processChangesets. Remaps the id of element deleted found in the 'change' to an element in the targetDb.
|
|
654
|
+
* @param change the change to process, must be of changeType "Deleted"
|
|
655
|
+
* @param mapOfDeletedElemIdToScopeEsas a map of elementIds to changedECInstances (which are ESAs). the elementId is not the id of the esa itself, but the elementid that the esa was stored on before the esa's deletion.
|
|
656
|
+
* All ESAs in this map are part of the transformer's scope / ESA data and are tracked in case the ESA is deleted in the target.
|
|
657
|
+
* @param isRelationship is relationship or not
|
|
658
|
+
* @param alreadyImportedElementInserts used to handle entity recreation and not delete already handled element inserts.
|
|
659
|
+
* @param alreadyImportedModelInserts used to handle entity recreation and not delete already handled model inserts.
|
|
660
|
+
* @returns void
|
|
661
|
+
*/
|
|
662
|
+
private processDeletedOp;
|
|
663
|
+
private _tryInitChangesetData;
|
|
439
664
|
/** Export everything from the source iModel and import the transformed entities into the target iModel.
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
processAll(): Promise<void>;
|
|
665
|
+
* @note [[processSchemas]] is not called automatically since the target iModel may want a different collection of schemas.
|
|
666
|
+
*/
|
|
667
|
+
processAll(options?: FinalizeTransformationOptions): Promise<void>;
|
|
668
|
+
/** previous provenance, either a federation guid, a `${sourceFedGuid}/${targetFedGuid}` pair, or required aspect props */
|
|
443
669
|
private _lastProvenanceEntityInfo;
|
|
444
670
|
private markLastProvenance;
|
|
445
671
|
/** @internal the name of the table where javascript state of the transformer is serialized in transformer state dumps */
|
|
@@ -454,7 +680,7 @@ export declare class IModelTransformer extends IModelExportHandler {
|
|
|
454
680
|
*/
|
|
455
681
|
protected loadStateFromDb(db: SQLiteDb): void;
|
|
456
682
|
/**
|
|
457
|
-
* @deprecated in 0.1.x, this is buggy, and
|
|
683
|
+
* @deprecated in 0.1.x, this is buggy, and it is now equivalently efficient to simply restart the transformation
|
|
458
684
|
* from the original changeset
|
|
459
685
|
*
|
|
460
686
|
* Return a new transformer instance with the same remappings state as saved from a previous [[IModelTransformer.saveStateToFile]] call.
|
|
@@ -486,7 +712,7 @@ export declare class IModelTransformer extends IModelExportHandler {
|
|
|
486
712
|
*/
|
|
487
713
|
protected saveStateToDb(db: SQLiteDb): void;
|
|
488
714
|
/**
|
|
489
|
-
* @deprecated in 0.1.x, this is buggy, and
|
|
715
|
+
* @deprecated in 0.1.x, this is buggy, and it is now equivalently efficient to simply restart the transformation
|
|
490
716
|
* from the original changeset
|
|
491
717
|
*
|
|
492
718
|
* Save the state of the active transformation to a file path, if a file at the path already exists, it will be overwritten
|
|
@@ -499,12 +725,23 @@ export declare class IModelTransformer extends IModelExportHandler {
|
|
|
499
725
|
*/
|
|
500
726
|
saveStateToFile(nativeStatePath: string): void;
|
|
501
727
|
/** Export changes from the source iModel and import the transformed entities into the target iModel.
|
|
502
|
-
*
|
|
503
|
-
*
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
728
|
+
* Inserts, updates, and deletes are determined by inspecting the changeset(s).
|
|
729
|
+
* @note the transformer saves and pushes changes when its work is complete.
|
|
730
|
+
* @note if no startChangesetId or startChangeset option is provided as part of the ProcessChangesOptions, the next unsynchronized changeset
|
|
731
|
+
* will automatically be determined and used
|
|
732
|
+
* @note To form a range of versions to process, set `startChangesetId` for the start (inclusive) of the desired range and open the source iModel as of the end (inclusive) of the desired range.
|
|
733
|
+
*/
|
|
734
|
+
processChanges(options: ProcessChangesOptions): Promise<void>;
|
|
735
|
+
/** Changeset data must be initialized in order to build correct changeOptions.
|
|
736
|
+
* Call [[IModelTransformer.initialize]] for initialization of synchronization provenance data
|
|
737
|
+
*/
|
|
738
|
+
private getExportInitOpts;
|
|
739
|
+
/** Combine an array of source elements into a single target element.
|
|
740
|
+
* All source and target elements must be created before calling this method.
|
|
741
|
+
* The "combine" operation is a remap and no properties from the source elements will be exported into the target
|
|
742
|
+
* and provenance will be explicitly tracked by ExternalSourceAspects
|
|
743
|
+
*/
|
|
744
|
+
combineElements(sourceElementIds: Id64Array, targetElementId: Id64String): void;
|
|
508
745
|
}
|
|
509
746
|
/** IModelTransformer that clones the contents of a template model.
|
|
510
747
|
* @beta
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IModelTransformer.d.ts","sourceRoot":"","sources":["../../src/IModelTransformer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"IModelTransformer.d.ts","sourceRoot":"","sources":["../../src/IModelTransformer.ts"],"names":[],"mappings":"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"}
|