@azure/digital-twins-core 1.1.0-alpha.20211103.1 → 1.1.0-alpha.20220131.1

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.
@@ -2,7 +2,7 @@
2
2
  // Licensed under the MIT license.
3
3
  import { __asyncDelegator, __asyncGenerator, __asyncValues, __await, __rest } from "tslib";
4
4
  /// <reference lib="esnext.asynciterable" />
5
- import { bearerTokenAuthenticationPolicy, createPipelineFromOptions, generateUuid } from "@azure/core-http";
5
+ import { bearerTokenAuthenticationPolicy, createPipelineFromOptions, generateUuid, } from "@azure/core-http";
6
6
  import { AzureDigitalTwinsAPI as GeneratedClient } from "./generated/azureDigitalTwinsAPI";
7
7
  import { createSpan } from "./tracing";
8
8
  import { SpanStatusCode } from "@azure/core-tracing";
@@ -49,8 +49,8 @@ export class DigitalTwinsClient {
49
49
  const internalPipelineOptions = Object.assign(Object.assign({}, pipelineOptions), {
50
50
  loggingOptions: {
51
51
  logger: logger.info,
52
- allowedHeaderNames: ["x-ms-request-id"]
53
- }
52
+ allowedHeaderNames: ["x-ms-request-id"],
53
+ },
54
54
  });
55
55
  const pipeline = createPipelineFromOptions(internalPipelineOptions, authPolicy);
56
56
  this.client = new GeneratedClient(Object.assign({ endpoint: endpointUrl, apiVersion }, pipeline));
@@ -70,7 +70,7 @@ export class DigitalTwinsClient {
70
70
  catch (e) {
71
71
  span.setStatus({
72
72
  code: SpanStatusCode.ERROR,
73
- message: e.message
73
+ message: e.message,
74
74
  });
75
75
  throw e;
76
76
  }
@@ -96,7 +96,7 @@ export class DigitalTwinsClient {
96
96
  catch (e) {
97
97
  span.setStatus({
98
98
  code: SpanStatusCode.ERROR,
99
- message: e.message
99
+ message: e.message,
100
100
  });
101
101
  throw e;
102
102
  }
@@ -125,7 +125,7 @@ export class DigitalTwinsClient {
125
125
  catch (e) {
126
126
  span.setStatus({
127
127
  code: SpanStatusCode.ERROR,
128
- message: e.message
128
+ message: e.message,
129
129
  });
130
130
  throw e;
131
131
  }
@@ -149,7 +149,7 @@ export class DigitalTwinsClient {
149
149
  catch (e) {
150
150
  span.setStatus({
151
151
  code: SpanStatusCode.ERROR,
152
- message: e.message
152
+ message: e.message,
153
153
  });
154
154
  throw e;
155
155
  }
@@ -173,7 +173,7 @@ export class DigitalTwinsClient {
173
173
  catch (e) {
174
174
  span.setStatus({
175
175
  code: SpanStatusCode.ERROR,
176
- message: e.message
176
+ message: e.message,
177
177
  });
178
178
  throw e;
179
179
  }
@@ -200,7 +200,7 @@ export class DigitalTwinsClient {
200
200
  catch (e) {
201
201
  span.setStatus({
202
202
  code: SpanStatusCode.ERROR,
203
- message: e.message
203
+ message: e.message,
204
204
  });
205
205
  throw e;
206
206
  }
@@ -224,7 +224,7 @@ export class DigitalTwinsClient {
224
224
  catch (e) {
225
225
  span.setStatus({
226
226
  code: SpanStatusCode.ERROR,
227
- message: e.message
227
+ message: e.message,
228
228
  });
229
229
  throw e;
230
230
  }
@@ -251,7 +251,7 @@ export class DigitalTwinsClient {
251
251
  catch (e) {
252
252
  span.setStatus({
253
253
  code: SpanStatusCode.ERROR,
254
- message: e.message
254
+ message: e.message,
255
255
  });
256
256
  throw e;
257
257
  }
@@ -276,7 +276,7 @@ export class DigitalTwinsClient {
276
276
  catch (e) {
277
277
  span.setStatus({
278
278
  code: SpanStatusCode.ERROR,
279
- message: e.message
279
+ message: e.message,
280
280
  });
281
281
  throw e;
282
282
  }
@@ -301,7 +301,7 @@ export class DigitalTwinsClient {
301
301
  catch (e) {
302
302
  span.setStatus({
303
303
  code: SpanStatusCode.ERROR,
304
- message: e.message
304
+ message: e.message,
305
305
  });
306
306
  throw e;
307
307
  }
@@ -373,13 +373,13 @@ export class DigitalTwinsClient {
373
373
  [Symbol.asyncIterator]() {
374
374
  return this;
375
375
  },
376
- byPage: (settings = {}) => this.listRelationshipsPage(digitalTwinId, updatedOptions, settings)
376
+ byPage: (settings = {}) => this.listRelationshipsPage(digitalTwinId, updatedOptions, settings),
377
377
  };
378
378
  }
379
379
  catch (e) {
380
380
  span.setStatus({
381
381
  code: SpanStatusCode.ERROR,
382
- message: e.message
382
+ message: e.message,
383
383
  });
384
384
  throw e;
385
385
  }
@@ -450,13 +450,13 @@ export class DigitalTwinsClient {
450
450
  [Symbol.asyncIterator]() {
451
451
  return this;
452
452
  },
453
- byPage: (settings = {}) => this.listIncomingRelationshipsPage(digitalTwinId, updatedOptions, settings)
453
+ byPage: (settings = {}) => this.listIncomingRelationshipsPage(digitalTwinId, updatedOptions, settings),
454
454
  };
455
455
  }
456
456
  catch (e) {
457
457
  span.setStatus({
458
458
  code: SpanStatusCode.ERROR,
459
- message: e.message
459
+ message: e.message,
460
460
  });
461
461
  throw e;
462
462
  }
@@ -488,7 +488,7 @@ export class DigitalTwinsClient {
488
488
  catch (e) {
489
489
  span.setStatus({
490
490
  code: SpanStatusCode.ERROR,
491
- message: e.message
491
+ message: e.message,
492
492
  });
493
493
  throw e;
494
494
  }
@@ -519,7 +519,7 @@ export class DigitalTwinsClient {
519
519
  catch (e) {
520
520
  span.setStatus({
521
521
  code: SpanStatusCode.ERROR,
522
- message: e.message
522
+ message: e.message,
523
523
  });
524
524
  throw e;
525
525
  }
@@ -545,7 +545,7 @@ export class DigitalTwinsClient {
545
545
  catch (e) {
546
546
  span.setStatus({
547
547
  code: SpanStatusCode.ERROR,
548
- message: e.message
548
+ message: e.message,
549
549
  });
550
550
  throw e;
551
551
  }
@@ -615,7 +615,7 @@ export class DigitalTwinsClient {
615
615
  digitalTwinModelsListOptionalParams = {
616
616
  maxItemsPerPage: resultsPerPage,
617
617
  dependenciesFor: dependeciesFor,
618
- includeModelDefinition: includeModelDefinition
618
+ includeModelDefinition: includeModelDefinition,
619
619
  };
620
620
  const { span, updatedOptions } = createSpan("DigitalTwinsClient-listModels", digitalTwinModelsListOptionalParams);
621
621
  try {
@@ -627,13 +627,13 @@ export class DigitalTwinsClient {
627
627
  [Symbol.asyncIterator]() {
628
628
  return this;
629
629
  },
630
- byPage: (settings = {}) => this.getModelsPage(digitalTwinModelsListOptionalParams, settings)
630
+ byPage: (settings = {}) => this.getModelsPage(digitalTwinModelsListOptionalParams, settings),
631
631
  };
632
632
  }
633
633
  catch (e) {
634
634
  span.setStatus({
635
635
  code: SpanStatusCode.ERROR,
636
- message: e.message
636
+ message: e.message,
637
637
  });
638
638
  throw e;
639
639
  }
@@ -658,7 +658,7 @@ export class DigitalTwinsClient {
658
658
  catch (e) {
659
659
  span.setStatus({
660
660
  code: SpanStatusCode.ERROR,
661
- message: e.message
661
+ message: e.message,
662
662
  });
663
663
  throw e;
664
664
  }
@@ -687,7 +687,7 @@ export class DigitalTwinsClient {
687
687
  catch (e) {
688
688
  span.setStatus({
689
689
  code: SpanStatusCode.ERROR,
690
- message: e.message
690
+ message: e.message,
691
691
  });
692
692
  throw e;
693
693
  }
@@ -710,7 +710,7 @@ export class DigitalTwinsClient {
710
710
  catch (e) {
711
711
  span.setStatus({
712
712
  code: SpanStatusCode.ERROR,
713
- message: e.message
713
+ message: e.message,
714
714
  });
715
715
  throw e;
716
716
  }
@@ -733,7 +733,7 @@ export class DigitalTwinsClient {
733
733
  catch (e) {
734
734
  span.setStatus({
735
735
  code: SpanStatusCode.ERROR,
736
- message: e.message
736
+ message: e.message,
737
737
  });
738
738
  throw e;
739
739
  }
@@ -800,7 +800,7 @@ export class DigitalTwinsClient {
800
800
  listEventRoutes(resultsPerPage, options = {}) {
801
801
  let eventRoutesListOptionalParams = options;
802
802
  eventRoutesListOptionalParams = {
803
- maxItemsPerPage: resultsPerPage
803
+ maxItemsPerPage: resultsPerPage,
804
804
  };
805
805
  const { span, updatedOptions } = createSpan("DigitalTwinsClient-listEventRoutes", eventRoutesListOptionalParams);
806
806
  try {
@@ -812,13 +812,13 @@ export class DigitalTwinsClient {
812
812
  [Symbol.asyncIterator]() {
813
813
  return this;
814
814
  },
815
- byPage: (settings = {}) => this.getEventRoutesPage(eventRoutesListOptionalParams, settings)
815
+ byPage: (settings = {}) => this.getEventRoutesPage(eventRoutesListOptionalParams, settings),
816
816
  };
817
817
  }
818
818
  catch (e) {
819
819
  span.setStatus({
820
820
  code: SpanStatusCode.ERROR,
821
- message: e.message
821
+ message: e.message,
822
822
  });
823
823
  throw e;
824
824
  }
@@ -839,7 +839,7 @@ export class DigitalTwinsClient {
839
839
  const eventRoutesAddOptionalParams = options;
840
840
  const eventRoute = {
841
841
  endpointName: endpointId,
842
- filter: filter
842
+ filter: filter,
843
843
  };
844
844
  eventRoutesAddOptionalParams.eventRoute = eventRoute;
845
845
  const { span, updatedOptions } = createSpan("DigitalTwinsClient-upsertEventRoute", eventRoutesAddOptionalParams);
@@ -849,7 +849,7 @@ export class DigitalTwinsClient {
849
849
  catch (e) {
850
850
  span.setStatus({
851
851
  code: SpanStatusCode.ERROR,
852
- message: e.message
852
+ message: e.message,
853
853
  });
854
854
  throw e;
855
855
  }
@@ -872,7 +872,7 @@ export class DigitalTwinsClient {
872
872
  catch (e) {
873
873
  span.setStatus({
874
874
  code: SpanStatusCode.ERROR,
875
- message: e.message
875
+ message: e.message,
876
876
  });
877
877
  throw e;
878
878
  }
@@ -893,7 +893,7 @@ export class DigitalTwinsClient {
893
893
  if (continuationState.continuationToken == null) {
894
894
  const querySpecification = {
895
895
  query: query,
896
- continuationToken: continuationState.continuationToken
896
+ continuationToken: continuationState.continuationToken,
897
897
  };
898
898
  const queryResult = yield __await(this.client.query.queryTwins(querySpecification, options));
899
899
  continuationState.continuationToken = queryResult.continuationToken;
@@ -902,7 +902,7 @@ export class DigitalTwinsClient {
902
902
  while (continuationState.continuationToken) {
903
903
  const querySpecification = {
904
904
  query: query,
905
- continuationToken: continuationState.continuationToken
905
+ continuationToken: continuationState.continuationToken,
906
906
  };
907
907
  const queryResult = yield __await(this.client.query.queryTwins(querySpecification, options));
908
908
  continuationState.continuationToken = queryResult.continuationToken;
@@ -948,7 +948,7 @@ export class DigitalTwinsClient {
948
948
  queryTwins(query, resultsPerPage, options = {}) {
949
949
  let queryQueryTwinsOptionalParams = options;
950
950
  queryQueryTwinsOptionalParams = {
951
- maxItemsPerPage: resultsPerPage
951
+ maxItemsPerPage: resultsPerPage,
952
952
  };
953
953
  const { span, updatedOptions } = createSpan("DigitalTwinsClient-queryTwins", queryQueryTwinsOptionalParams);
954
954
  try {
@@ -960,13 +960,13 @@ export class DigitalTwinsClient {
960
960
  [Symbol.asyncIterator]() {
961
961
  return this;
962
962
  },
963
- byPage: (settings = {}) => this.queryTwinsPage(query, queryQueryTwinsOptionalParams, settings)
963
+ byPage: (settings = {}) => this.queryTwinsPage(query, queryQueryTwinsOptionalParams, settings),
964
964
  };
965
965
  }
966
966
  catch (e) {
967
967
  span.setStatus({
968
968
  code: SpanStatusCode.ERROR,
969
- message: e.message
969
+ message: e.message,
970
970
  });
971
971
  throw e;
972
972
  }
@@ -1 +1 @@
1
- {"version":3,"file":"digitalTwinsClient.js","sourceRoot":"","sources":["../../src/digitalTwinsClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/// <reference lib=\"esnext.asynciterable\" />\n\nimport {\n TokenCredential,\n RestResponse,\n OperationOptions,\n InternalPipelineOptions,\n bearerTokenAuthenticationPolicy,\n createPipelineFromOptions,\n generateUuid,\n PipelineOptions\n} from \"@azure/core-http\";\nimport { PageSettings, PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { AzureDigitalTwinsAPI as GeneratedClient } from \"./generated/azureDigitalTwinsAPI\";\nimport {\n DigitalTwinsGetByIdResponse,\n DigitalTwinsAddOptionalParams,\n DigitalTwinsAddResponse,\n DigitalTwinsUpdateOptionalParams,\n DigitalTwinsUpdateResponse,\n DigitalTwinsDeleteOptionalParams,\n DigitalTwinsGetComponentResponse,\n DigitalTwinsUpdateComponentResponse,\n DigitalTwinsUpdateComponentOptionalParams,\n DigitalTwinsAddRelationshipResponse,\n DigitalTwinsAddRelationshipOptionalParams,\n DigitalTwinsUpdateRelationshipOptionalParams,\n DigitalTwinsUpdateRelationshipResponse,\n DigitalTwinsDeleteRelationshipOptionalParams,\n DigitalTwinsSendTelemetryOptionalParams,\n DigitalTwinsSendComponentTelemetryOptionalParams,\n DigitalTwinsListRelationshipsResponse,\n IncomingRelationship,\n DigitalTwinsListIncomingRelationshipsResponse,\n DigitalTwinsGetRelationshipByIdResponse,\n DigitalTwinsModelData,\n DigitalTwinModelsGetByIdResponse,\n DigitalTwinModelsGetByIdOptionalParams,\n DigitalTwinModelsAddResponse,\n DigitalTwinModelsAddOptionalParams,\n DigitalTwinModelsListResponse,\n DigitalTwinModelsListOptionalParams,\n EventRoutesGetByIdResponse,\n EventRoute,\n EventRoutesAddOptionalParams,\n EventRoutesListNextResponse,\n EventRoutesListOptionalParams,\n QueryQueryTwinsOptionalParams,\n QueryQueryTwinsResponse,\n QuerySpecification\n} from \"./generated/models\";\nimport { createSpan } from \"./tracing\";\nimport { SpanStatusCode } from \"@azure/core-tracing\";\nimport { logger } from \"./logger\";\n\nexport const SDK_VERSION: string = \"1.1.0\";\n\nexport interface DigitalTwinsClientOptions extends PipelineOptions {\n /**\n * Api Version\n */\n apiVersion?: string;\n}\n\nconst DEFAULT_DIGITALTWINS_SCOPE = \"https://digitaltwins.azure.net/.default\";\n\n/**\n * Client for Azure IoT DigitalTwins API.\n */\nexport class DigitalTwinsClient {\n /**\n * A reference to the auto-generated AzureDigitalTwinsAPI\n */\n private readonly client: GeneratedClient;\n\n /**\n * Creates an instance of AzureDigitalTwinsAPI.\n *\n * Example usage:\n * ```ts\n * const { DigitalTwinsClient, ServiceClientCredentials } = require(\"@azure/digital-twins-core\");\n *\n * const client = new DigitalTwinsClient(\n * \"<endpoint>\",\n * new DefaultAzureCredential();\n * );\n * ```\n * @param endpointUrl - The endpoint URL of the service.\n * @param credential - Used to authenticate requests to the service.\n * @param options - Used to configure the service client.\n */\n constructor(\n endpointUrl: string,\n credential: TokenCredential,\n options: DigitalTwinsClientOptions = {}\n ) {\n const authPolicy = bearerTokenAuthenticationPolicy(credential, DEFAULT_DIGITALTWINS_SCOPE);\n const libInfo = `azsdk-js-digital-twins-core/${SDK_VERSION}`;\n\n const { apiVersion, ...pipelineOptions } = options;\n if (!pipelineOptions.userAgentOptions) {\n pipelineOptions.userAgentOptions = {};\n }\n if (pipelineOptions.userAgentOptions.userAgentPrefix) {\n pipelineOptions.userAgentOptions.userAgentPrefix = `${pipelineOptions.userAgentOptions.userAgentPrefix} ${libInfo}`;\n } else {\n pipelineOptions.userAgentOptions.userAgentPrefix = libInfo;\n }\n\n const internalPipelineOptions: InternalPipelineOptions = {\n ...pipelineOptions,\n ...{\n loggingOptions: {\n logger: logger.info,\n allowedHeaderNames: [\"x-ms-request-id\"]\n }\n }\n };\n\n const pipeline = createPipelineFromOptions(internalPipelineOptions, authPolicy);\n\n this.client = new GeneratedClient({\n endpoint: endpointUrl,\n apiVersion,\n ...pipeline\n });\n }\n\n /**\n * Get a digital twin\n *\n * @param digitalTwinId - The Id of the digital twin.\n * @param options - The operation options\n * @returns The application/json digital twin and the http response.\n */\n public getDigitalTwin(\n digitalTwinId: string,\n options: OperationOptions = {}\n ): Promise<DigitalTwinsGetByIdResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-getDigitalTwin\", options);\n try {\n return this.client.digitalTwins.getById(digitalTwinId, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Create or update a digital twin\n *\n * @param digitalTwinId - The Id of the digital twin to create or update.\n * @param digitalTwinJson - The application/json digital twin to create.\n * @param options - Extended operation options including\n * ifNoneMatch: Only perform the operation if the entity does not already exist.\n * @returns The created application/json digital twin and the http response.\n */\n public upsertDigitalTwin(\n digitalTwinId: string,\n digitalTwinJson: string,\n options: DigitalTwinsAddOptionalParams = {}\n ): Promise<DigitalTwinsAddResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-upsertDigitalTwin\", options);\n try {\n const payload = JSON.parse(digitalTwinJson);\n return this.client.digitalTwins.add(digitalTwinId, payload, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Update a digital twin using a json patch.\n *\n * @param digitalTwinId - The Id of the digital twin.\n * @param jsonPatch - An update specification described by JSON Patch. Updates to property values\n * and $model elements may happen in the same request. Operations are limited to add, replace and\n * remove.\n * @param options - Extended operation options including\n * ifMatch: Only perform the operation if the entity's etag matches one of the etags provided or * is provided.\n * @returns The http response.\n */\n public updateDigitalTwin(\n digitalTwinId: string,\n // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types -- changing the type any would be a breaking change\n jsonPatch: any,\n options: DigitalTwinsUpdateOptionalParams = {}\n ): Promise<DigitalTwinsUpdateResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-updateDigitalTwin\", options);\n try {\n return this.client.digitalTwins.update(digitalTwinId, jsonPatch, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Delete a digital twin\n *\n * @param digitalTwinId - The Id of the digital twin to delete.\n * @param options - Extended operation options including\n * ifMatch: Only perform the operation if the entity's etag matches one of the etags provided or * is provided.\n * @returns The http response.\n */\n public deleteDigitalTwin(\n digitalTwinId: string,\n options: DigitalTwinsDeleteOptionalParams = {}\n ): Promise<RestResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-deleteDigitalTwin\", options);\n try {\n return this.client.digitalTwins.delete(digitalTwinId, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Get a component on a digital twin.\n *\n * @param digitalTwinId - The Id of the digital twin.\n * @param componentName - The component being retrieved.\n * @param options - The operation options\n * @returns Json string representation of the component corresponding to the provided componentName and the HTTP response.\n */\n public getComponent(\n digitalTwinId: string,\n componentName: string,\n options: OperationOptions = {}\n ): Promise<DigitalTwinsGetComponentResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-getComponent\", options);\n try {\n return this.client.digitalTwins.getComponent(digitalTwinId, componentName, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Update properties of a component on a digital twin using a JSON patch.\n *\n * @param digitalTwinId - The Id of the digital twin.\n * @param componentName - The component being updated.\n * @param jsonPatch - The application/json-patch+json operations to be performed on the specified digital twin's component.\n * @param enableUpdate - If true then update of an existing digital twin is enabled.\n * @param options - Extended operation options including\n * ifMatch: Only perform the operation if the entity's etag matches one of the etags provided or * is provided.\n * @returns The http response.\n */\n public updateComponent(\n digitalTwinId: string,\n componentName: string,\n jsonPatch: any[],\n options: DigitalTwinsUpdateComponentOptionalParams = {}\n ): Promise<DigitalTwinsUpdateComponentResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-updateComponent\", options);\n try {\n return this.client.digitalTwins.updateComponent(\n digitalTwinId,\n componentName,\n jsonPatch,\n updatedOptions\n );\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Get a relationship on a digital twin.\n *\n * @param digitalTwinId - The Id of the source digital twin.\n * @param relationshipId - The Id of the relationship to retrieve.\n * @param options - The operation options\n * @returns The pageable list of application/json relationships belonging to the specified digital twin and the http response.\n */\n public getRelationship(\n digitalTwinId: string,\n relationshipId: string,\n options: OperationOptions = {}\n ): Promise<DigitalTwinsGetRelationshipByIdResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-getRelationship\", options);\n try {\n return this.client.digitalTwins.getRelationshipById(\n digitalTwinId,\n relationshipId,\n updatedOptions\n );\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Create or update a relationship on a digital twin.\n *\n * @param digitalTwinId - The Id of the source digital twin.\n * @param relationshipId - The Id of the relationship to create.\n * @param relationship - The application/json relationship to be created.\n * @param options - Extended operation options including\n * ifNoneMatch: Only perform the operation if the entity does not already exist.\n */\n public upsertRelationship(\n digitalTwinId: string,\n relationshipId: string,\n // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types -- changing the type any would be a breaking change\n relationship: any,\n options: DigitalTwinsAddRelationshipOptionalParams = {}\n ): Promise<DigitalTwinsAddRelationshipResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-upsertRelationship\", options);\n try {\n return this.client.digitalTwins.addRelationship(\n digitalTwinId,\n relationshipId,\n relationship,\n updatedOptions\n );\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Updates the properties of a relationship on a digital twin using a JSON patch.\n *\n * @param digitalTwinId - The Id of the digital twin to delete.\n * @param relationshipId - The Id of the relationship to be updated.\n * @param jsonPatch - The application/json-patch+json operations to be performed on the specified digital twin's relationship.\n * @param options - Extended operation options\n * ifMatch: Only perform the operation if the entity's etag matches one of the etags provided or * is provided.\n */\n public updateRelationship(\n digitalTwinId: string,\n relationshipId: string,\n jsonPatch: any[],\n options: DigitalTwinsUpdateRelationshipOptionalParams = {}\n ): Promise<DigitalTwinsUpdateRelationshipResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-updateRelationship\", options);\n try {\n return this.client.digitalTwins.updateRelationship(\n digitalTwinId,\n relationshipId,\n jsonPatch,\n updatedOptions\n );\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Delete a relationship on a digital twin.\n *\n * @param digitalTwinId - The Id of the source digital twin.\n * @param relationshipId - The Id of the relationship to delete.\n * @param options - The operation options\n * ifMatch: Only perform the operation if the entity's etag matches one of the etags provided or * is\n * @returns The http response.\n */\n public deleteRelationship(\n digitalTwinId: string,\n relationshipId: string,\n options: DigitalTwinsDeleteRelationshipOptionalParams = {}\n ): Promise<RestResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-deleteRelationship\", options);\n try {\n return this.client.digitalTwins.deleteRelationship(\n digitalTwinId,\n relationshipId,\n updatedOptions\n );\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deals with the pagination of {@link listRelationships}.\n *\n * @param digitalTwinId - The Id of the digital twin.\n * @param options - Common options for the iterative endpoints.\n * @param continuationState - An object that indicates the position of the paginated request.\n *\n */\n private async *listRelationshipsPage(\n digitalTwinId: string,\n options: OperationOptions,\n continuationState: PageSettings\n ): AsyncIterableIterator<DigitalTwinsListRelationshipsResponse> {\n if (continuationState.continuationToken == null) {\n const optionsComplete: OperationOptions = {\n ...options\n };\n const listRelationshipResponse = await this.client.digitalTwins.listRelationships(\n digitalTwinId,\n optionsComplete\n );\n continuationState.continuationToken = listRelationshipResponse.nextLink;\n yield listRelationshipResponse;\n }\n while (continuationState.continuationToken) {\n const listRelationshipResponse = await this.client.digitalTwins.listRelationshipsNext(\n \"\",\n continuationState.continuationToken,\n options\n );\n\n continuationState.continuationToken = listRelationshipResponse.nextLink;\n yield listRelationshipResponse;\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link listRelationships}.\n * @param options - Common options for the iterative endpoints.\n */\n private async *listRelationshipsAll(\n digitalTwinId: string,\n options: OperationOptions\n ): AsyncIterableIterator<any> {\n for await (const page of this.listRelationshipsPage(digitalTwinId, options, {})) {\n const value = page.value || [];\n for (const item of value) {\n yield item;\n }\n }\n }\n\n /**\n * Retrieve relationships for a digital twin.\n *\n * @param digitalTwinId - The Id of the digital twin.\n */\n public listRelationships(\n digitalTwinId: string,\n options: OperationOptions & PageSettings = {}\n ): PagedAsyncIterableIterator<any, DigitalTwinsListRelationshipsResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-listRelationships\", options);\n try {\n const iter = this.listRelationshipsAll(digitalTwinId, updatedOptions);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) =>\n this.listRelationshipsPage(digitalTwinId, updatedOptions, settings)\n };\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deals with the pagination of {@link listIncomingRelationships}.\n *\n * @param digitalTwinId - The Id of the digital twin.\n * @param options - Common options for the iterative endpoints.\n * @param continuationState - An object that indicates the position of the paginated request.\n *\n */\n private async *listIncomingRelationshipsPage(\n digitalTwinId: string,\n options: OperationOptions,\n continuationState: PageSettings\n ): AsyncIterableIterator<DigitalTwinsListIncomingRelationshipsResponse> {\n if (continuationState.continuationToken == null) {\n const optionsComplete: OperationOptions = {\n ...options\n };\n const listIncomingRelationshipsResponse = await this.client.digitalTwins.listIncomingRelationships(\n digitalTwinId,\n optionsComplete\n );\n continuationState.continuationToken = listIncomingRelationshipsResponse.nextLink;\n yield listIncomingRelationshipsResponse;\n }\n while (continuationState.continuationToken) {\n const listIncomingRelationshipsResponse = await this.client.digitalTwins.listIncomingRelationshipsNext(\n \"\",\n continuationState.continuationToken,\n options\n );\n\n continuationState.continuationToken = listIncomingRelationshipsResponse.nextLink;\n yield listIncomingRelationshipsResponse;\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link listIncomingRelationships}.\n * @param digitalTwinId - The Id of the digital twin.\n * @param options - Common options for the iterative endpoints.\n */\n private async *listIncomingRelationshipsAll(\n digitalTwinId: string,\n options: OperationOptions\n ): AsyncIterableIterator<IncomingRelationship> {\n for await (const page of this.listIncomingRelationshipsPage(digitalTwinId, options, {})) {\n const value = page.value || [];\n yield* value;\n }\n }\n\n /**\n * Retrieve all incoming relationships for a digital twin.\n *\n * @param digitalTwinId - The Id of the digital twin.\n */\n public listIncomingRelationships(\n digitalTwinId: string,\n options: OperationOptions & PageSettings = {}\n ): PagedAsyncIterableIterator<\n IncomingRelationship,\n DigitalTwinsListIncomingRelationshipsResponse\n > {\n const { span, updatedOptions } = createSpan(\n \"DigitalTwinsClient-listIncomingRelationships\",\n options\n );\n try {\n const iter = this.listIncomingRelationshipsAll(digitalTwinId, updatedOptions);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) =>\n this.listIncomingRelationshipsPage(digitalTwinId, updatedOptions, settings)\n };\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Publish telemetry from a digital twin, which is then consumed by one or many destination endpoints (subscribers) defined under.\n *\n * @param digitalTwinId - The Id of the digital twin to delete.\n * @param payload - The application/json telemetry payload to be sent.\n * @param messageId - The message Id.\n * @param options - The operation options\n * @returns The http response.\n */\n public publishTelemetry(\n digitalTwinId: string,\n // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types -- changing the type any would be a breaking change\n payload: any,\n messageId: string,\n options: OperationOptions = {}\n ): Promise<RestResponse> {\n const digitalTwinsSendTelemetryOptionalParams: DigitalTwinsSendTelemetryOptionalParams = options;\n digitalTwinsSendTelemetryOptionalParams.telemetrySourceTime = new Date().toISOString();\n if (!messageId) {\n messageId = generateUuid();\n }\n const { span, updatedOptions } = createSpan(\n \"DigitalTwinsClient-publishTelemetry\",\n digitalTwinsSendTelemetryOptionalParams\n );\n try {\n return this.client.digitalTwins.sendTelemetry(\n digitalTwinId,\n messageId,\n payload,\n updatedOptions\n );\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Publish telemetry from a digital twin's component, which is then consumed by one or many destination endpoints (subscribers) defined under.\n *\n * @param digitalTwinId - The Id of the digital twin to delete.\n * @param componentName - The name of the DTDL component.\n * @param payload - The application/json telemetry payload to be sent.\n * @param messageId - The message Id.\n * @param options - The operation options\n * @returns The http response.\n */\n public publishComponentTelemetry(\n digitalTwinId: string,\n componentName: string,\n payload: string,\n messageId: string,\n options: OperationOptions = {}\n ): Promise<RestResponse> {\n const digitalTwinsSendComponentTelemetryOptionalParams: DigitalTwinsSendComponentTelemetryOptionalParams = options;\n digitalTwinsSendComponentTelemetryOptionalParams.telemetrySourceTime = new Date().toISOString();\n if (!messageId) {\n messageId = generateUuid();\n }\n const { span, updatedOptions } = createSpan(\n \"DigitalTwinsClient-publishComponentTelemetry\",\n digitalTwinsSendComponentTelemetryOptionalParams\n );\n try {\n return this.client.digitalTwins.sendComponentTelemetry(\n digitalTwinId,\n componentName,\n payload,\n messageId,\n updatedOptions\n );\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Get a model, including the model metadata and the model definition.\n *\n * @param modelId - The Id of the model.\n * @param options - Extended operation options including\n * includeModelDefinition: When true the model definition will be returned as part of the result. Default value: false.\n * @returns The application/json model and the http response.\n */\n public getModel(\n modelId: string,\n includeModelDefinition: boolean = false,\n options: OperationOptions = {}\n ): Promise<DigitalTwinModelsGetByIdResponse> {\n const digitalTwinModelsGetByIdOptionalParams: DigitalTwinModelsGetByIdOptionalParams = options;\n digitalTwinModelsGetByIdOptionalParams.includeModelDefinition = includeModelDefinition;\n const { span, updatedOptions } = createSpan(\n \"DigitalTwinsClient-getModel\",\n digitalTwinModelsGetByIdOptionalParams\n );\n try {\n return this.client.digitalTwinModels.getById(modelId, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deals with the pagination of {@link list}.\n *\n * @param options - Common options for the iterative endpoints.\n * @param continuationState - An object that indicates the position of the paginated request.\n *\n */\n private async *getModelsPage(\n options: DigitalTwinModelsListOptionalParams,\n continuationState: PageSettings\n ): AsyncIterableIterator<DigitalTwinModelsListResponse> {\n if (continuationState.continuationToken == null) {\n const optionsComplete: DigitalTwinModelsListOptionalParams = options;\n optionsComplete.maxItemsPerPage = continuationState.maxPageSize;\n\n const listResponse = await this.client.digitalTwinModels.list(optionsComplete);\n continuationState.continuationToken = listResponse.nextLink;\n yield listResponse;\n }\n while (continuationState.continuationToken) {\n const listResponse = await this.client.digitalTwinModels.listNext(\n continuationState.continuationToken,\n options\n );\n\n continuationState.continuationToken = listResponse.nextLink;\n yield listResponse;\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link list}.\n * @param options - Common options for the iterative endpoints.\n */\n private async *getModelsAll(\n options: DigitalTwinModelsListOptionalParams\n ): AsyncIterableIterator<DigitalTwinsModelData> {\n const f = {};\n\n for await (const page of this.getModelsPage(options, f)) {\n const value = page.value || [];\n for (const item of value) {\n yield item;\n }\n }\n }\n\n /**\n * Get the list of models\n *\n * @param dependeciesFor - The model Ids to have dependencies retrieved. If omitted, all models are retrieved.\n * @param includeModelDefinition - Whether to include the model definition in the result. If false, only the model metadata will be returned.\n * @param resultsPerPage - The maximum number of items to retrieve per request. The server may choose to return less than the requested max.\n * @returns A pageable set of application/json models and the http response.\n */\n public listModels(\n dependeciesFor?: string[],\n includeModelDefinition: boolean = false,\n resultsPerPage?: number,\n options: OperationOptions & PageSettings = {}\n ): PagedAsyncIterableIterator<DigitalTwinsModelData, DigitalTwinModelsListResponse> {\n let digitalTwinModelsListOptionalParams: DigitalTwinModelsListOptionalParams = options;\n digitalTwinModelsListOptionalParams = {\n maxItemsPerPage: resultsPerPage,\n dependenciesFor: dependeciesFor,\n includeModelDefinition: includeModelDefinition\n };\n const { span, updatedOptions } = createSpan(\n \"DigitalTwinsClient-listModels\",\n digitalTwinModelsListOptionalParams\n );\n try {\n const iter = this.getModelsAll(updatedOptions);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) =>\n this.getModelsPage(digitalTwinModelsListOptionalParams, settings)\n };\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Create one or many\n *\n * @param models - The set of models to create. Each string corresponds to exactly one model.\n * @param options - The operation options\n * @returns The created application/json models and the http response.\n */\n public createModels(\n dtdlModels: any[],\n options: OperationOptions = {}\n ): Promise<DigitalTwinModelsAddResponse> {\n const digitalTwinModelsAddOptionalParams: DigitalTwinModelsAddOptionalParams = options;\n digitalTwinModelsAddOptionalParams.models = dtdlModels;\n const { span, updatedOptions } = createSpan(\n \"DigitalTwinsClient-createModels\",\n digitalTwinModelsAddOptionalParams\n );\n try {\n return this.client.digitalTwinModels.add(updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Decommission a model using a json patch.\n * When a model is decommissioned, new digital twins will no longer be able to be\n * defined by this model. However, existing digital twins may continue to use this model.\n * Once a model is decommissioned, it may not be recommissioned.\n *\n * @param modelId - The Id of the model to decommission.\n * property can be replaced.\n * @param options - The operation options\n * @returns The http response.\n *\n */\n public decommissionModel(modelId: string, options: OperationOptions = {}): Promise<RestResponse> {\n const jsonPatch = [{ op: \"replace\", path: \"/decommissioned\", value: true }];\n\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-decommissionModel\", options);\n try {\n return this.client.digitalTwinModels.update(modelId, jsonPatch, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * @deprecated Please use {@link DigitalTwinsClient.decommissionModel} instead.\n */\n public decomissionModel = this.decommissionModel;\n\n /**\n * Delete a model.\n *\n * @param modelId - The Id of the model to delete.\n * @param options - The operation options\n * @returns The http response.\n */\n public deleteModel(modelId: string, options: OperationOptions = {}): Promise<RestResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-deleteModel\", options);\n try {\n return this.client.digitalTwinModels.delete(modelId, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Get an event route.\n *\n * @param modelId - The Id of the event route.\n * @param options - The operation options\n * @returns The application/json event route and the http response.\n */\n public getEventRoute(\n eventRouteId: string,\n options: OperationOptions = {}\n ): Promise<EventRoutesGetByIdResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-getEventRoute\", options);\n try {\n return this.client.eventRoutes.getById(eventRouteId, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deals with the pagination of {@link list}.\n *\n * @param options - Common options for the iterative endpoints.\n * @param continuationState - An object that indicates the position of the paginated request.\n *\n */\n private async *getEventRoutesPage(\n options: EventRoutesListOptionalParams,\n continuationState: PageSettings\n ): AsyncIterableIterator<EventRoutesListNextResponse> {\n if (continuationState.continuationToken == null) {\n const optionsComplete: EventRoutesListOptionalParams = options;\n optionsComplete.maxItemsPerPage = continuationState.maxPageSize;\n\n const listResponse = await this.client.eventRoutes.list(optionsComplete);\n continuationState.continuationToken = listResponse.nextLink;\n yield listResponse;\n }\n while (continuationState.continuationToken) {\n const listResponse = await this.client.eventRoutes.listNext(\n continuationState.continuationToken,\n options\n );\n\n continuationState.continuationToken = listResponse.nextLink;\n yield listResponse;\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link list}.\n * @param options - Common options for the iterative endpoints.\n */\n private async *getEventRoutesAll(\n options: EventRoutesListOptionalParams\n ): AsyncIterableIterator<EventRoute> {\n const f = {};\n for await (const page of this.getEventRoutesPage(options, f)) {\n const value = page.value || [];\n for (const item of value) {\n yield item;\n }\n }\n }\n\n /**\n * List the event routes in a digital twins instance.\n *\n * @param resultsPerPage - The maximum number of items to retrieve per request. The server may choose to return less than\n * the requested max.\n * @returns The application/json event route and the http response.\n */\n public listEventRoutes(\n resultsPerPage?: number,\n options: OperationOptions & PageSettings = {}\n ): PagedAsyncIterableIterator<EventRoute, EventRoutesListNextResponse> {\n let eventRoutesListOptionalParams: EventRoutesListOptionalParams = options;\n eventRoutesListOptionalParams = {\n maxItemsPerPage: resultsPerPage\n };\n\n const { span, updatedOptions } = createSpan(\n \"DigitalTwinsClient-listEventRoutes\",\n eventRoutesListOptionalParams\n );\n try {\n const iter = this.getEventRoutesAll(updatedOptions);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) =>\n this.getEventRoutesPage(eventRoutesListOptionalParams, settings)\n };\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Create or update an event route.\n *\n * @param eventRouteId - The Id of the event route to create or update.\n * @param endpointId - The id of the endpoint this event route is bound to.\n * @param filter - An expression which describes the events which are routed to the endpoint.\n * @param options - The operation options\n * @returns The http response.\n */\n public upsertEventRoute(\n eventRouteId: string,\n endpointId: string,\n filter: string,\n options: OperationOptions = {}\n ): Promise<RestResponse> {\n const eventRoutesAddOptionalParams: EventRoutesAddOptionalParams = options;\n const eventRoute: EventRoute = {\n endpointName: endpointId,\n filter: filter\n };\n eventRoutesAddOptionalParams.eventRoute = eventRoute;\n const { span, updatedOptions } = createSpan(\n \"DigitalTwinsClient-upsertEventRoute\",\n eventRoutesAddOptionalParams\n );\n try {\n return this.client.eventRoutes.add(eventRouteId, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Delete an event route.\n *\n * @param eventRouteId - The Id of the eventRoute to delete.\n * @param options - The operation options\n * @returns The http response.\n */\n public deleteEventRoute(\n eventRouteId: string,\n options: OperationOptions = {}\n ): Promise<RestResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-deleteEventRoute\", options);\n try {\n return this.client.eventRoutes.delete(eventRouteId, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deals with the pagination of {@link query}.\n *\n * @param query - The query string, in SQL-like syntax.\n * @param options - Common options for the iterative endpoints.\n * @param continuationState - An object that indicates the position of the paginated request.\n *\n */\n private async *queryTwinsPage(\n query: string,\n options: QueryQueryTwinsOptionalParams,\n continuationState: PageSettings\n ): AsyncIterableIterator<QueryQueryTwinsResponse> {\n if (continuationState.continuationToken == null) {\n const querySpecification: QuerySpecification = {\n query: query,\n continuationToken: continuationState.continuationToken\n };\n const queryResult = await this.client.query.queryTwins(querySpecification, options);\n continuationState.continuationToken = queryResult.continuationToken;\n yield queryResult;\n }\n while (continuationState.continuationToken) {\n const querySpecification: QuerySpecification = {\n query: query,\n continuationToken: continuationState.continuationToken\n };\n const queryResult = await this.client.query.queryTwins(querySpecification, options);\n\n continuationState.continuationToken = queryResult.continuationToken;\n yield queryResult;\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link query}.\n * @param query - The query string, in SQL-like syntax.\n * @param options - Common options for the iterative endpoints.\n */\n private async *queryTwinsAll(\n query: string,\n options: QueryQueryTwinsOptionalParams\n ): AsyncIterableIterator<any> {\n const f = {};\n\n for await (const page of this.queryTwinsPage(query, options, f)) {\n if (page.value) {\n for (const item of page.value) {\n yield item;\n }\n }\n }\n }\n\n /**\n * Query for digital twins.\n *\n * @param query - The query string, in SQL-like syntax.\n * @param resultsPerPage - The maximum number of items to retrieve per request. The server may choose to return less than the requested max.\n * @returns The pageable list of query results.\n */\n public queryTwins(\n query: string,\n resultsPerPage?: number,\n options: OperationOptions & PageSettings = {}\n ): PagedAsyncIterableIterator<any, QueryQueryTwinsResponse> {\n let queryQueryTwinsOptionalParams: QueryQueryTwinsOptionalParams = options;\n queryQueryTwinsOptionalParams = {\n maxItemsPerPage: resultsPerPage\n };\n\n const { span, updatedOptions } = createSpan(\n \"DigitalTwinsClient-queryTwins\",\n queryQueryTwinsOptionalParams\n );\n try {\n const iter = this.queryTwinsAll(query, updatedOptions);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) =>\n this.queryTwinsPage(query, queryQueryTwinsOptionalParams, settings)\n };\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n}\n"]}
1
+ {"version":3,"file":"digitalTwinsClient.js","sourceRoot":"","sources":["../../src/digitalTwinsClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/// <reference lib=\"esnext.asynciterable\" />\n\nimport {\n TokenCredential,\n RestResponse,\n OperationOptions,\n InternalPipelineOptions,\n bearerTokenAuthenticationPolicy,\n createPipelineFromOptions,\n generateUuid,\n PipelineOptions,\n} from \"@azure/core-http\";\nimport { PageSettings, PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { AzureDigitalTwinsAPI as GeneratedClient } from \"./generated/azureDigitalTwinsAPI\";\nimport {\n DigitalTwinsGetByIdResponse,\n DigitalTwinsAddOptionalParams,\n DigitalTwinsAddResponse,\n DigitalTwinsUpdateOptionalParams,\n DigitalTwinsUpdateResponse,\n DigitalTwinsDeleteOptionalParams,\n DigitalTwinsGetComponentResponse,\n DigitalTwinsUpdateComponentResponse,\n DigitalTwinsUpdateComponentOptionalParams,\n DigitalTwinsAddRelationshipResponse,\n DigitalTwinsAddRelationshipOptionalParams,\n DigitalTwinsUpdateRelationshipOptionalParams,\n DigitalTwinsUpdateRelationshipResponse,\n DigitalTwinsDeleteRelationshipOptionalParams,\n DigitalTwinsSendTelemetryOptionalParams,\n DigitalTwinsSendComponentTelemetryOptionalParams,\n DigitalTwinsListRelationshipsResponse,\n IncomingRelationship,\n DigitalTwinsListIncomingRelationshipsResponse,\n DigitalTwinsGetRelationshipByIdResponse,\n DigitalTwinsModelData,\n DigitalTwinModelsGetByIdResponse,\n DigitalTwinModelsGetByIdOptionalParams,\n DigitalTwinModelsAddResponse,\n DigitalTwinModelsAddOptionalParams,\n DigitalTwinModelsListResponse,\n DigitalTwinModelsListOptionalParams,\n EventRoutesGetByIdResponse,\n EventRoute,\n EventRoutesAddOptionalParams,\n EventRoutesListNextResponse,\n EventRoutesListOptionalParams,\n QueryQueryTwinsOptionalParams,\n QueryQueryTwinsResponse,\n QuerySpecification,\n} from \"./generated/models\";\nimport { createSpan } from \"./tracing\";\nimport { SpanStatusCode } from \"@azure/core-tracing\";\nimport { logger } from \"./logger\";\n\nexport const SDK_VERSION: string = \"1.1.0\";\n\nexport interface DigitalTwinsClientOptions extends PipelineOptions {\n /**\n * Api Version\n */\n apiVersion?: string;\n}\n\nconst DEFAULT_DIGITALTWINS_SCOPE = \"https://digitaltwins.azure.net/.default\";\n\n/**\n * Client for Azure IoT DigitalTwins API.\n */\nexport class DigitalTwinsClient {\n /**\n * A reference to the auto-generated AzureDigitalTwinsAPI\n */\n private readonly client: GeneratedClient;\n\n /**\n * Creates an instance of AzureDigitalTwinsAPI.\n *\n * Example usage:\n * ```ts\n * const { DigitalTwinsClient, ServiceClientCredentials } = require(\"@azure/digital-twins-core\");\n *\n * const client = new DigitalTwinsClient(\n * \"<endpoint>\",\n * new DefaultAzureCredential();\n * );\n * ```\n * @param endpointUrl - The endpoint URL of the service.\n * @param credential - Used to authenticate requests to the service.\n * @param options - Used to configure the service client.\n */\n constructor(\n endpointUrl: string,\n credential: TokenCredential,\n options: DigitalTwinsClientOptions = {}\n ) {\n const authPolicy = bearerTokenAuthenticationPolicy(credential, DEFAULT_DIGITALTWINS_SCOPE);\n const libInfo = `azsdk-js-digital-twins-core/${SDK_VERSION}`;\n\n const { apiVersion, ...pipelineOptions } = options;\n if (!pipelineOptions.userAgentOptions) {\n pipelineOptions.userAgentOptions = {};\n }\n if (pipelineOptions.userAgentOptions.userAgentPrefix) {\n pipelineOptions.userAgentOptions.userAgentPrefix = `${pipelineOptions.userAgentOptions.userAgentPrefix} ${libInfo}`;\n } else {\n pipelineOptions.userAgentOptions.userAgentPrefix = libInfo;\n }\n\n const internalPipelineOptions: InternalPipelineOptions = {\n ...pipelineOptions,\n ...{\n loggingOptions: {\n logger: logger.info,\n allowedHeaderNames: [\"x-ms-request-id\"],\n },\n },\n };\n\n const pipeline = createPipelineFromOptions(internalPipelineOptions, authPolicy);\n\n this.client = new GeneratedClient({\n endpoint: endpointUrl,\n apiVersion,\n ...pipeline,\n });\n }\n\n /**\n * Get a digital twin\n *\n * @param digitalTwinId - The Id of the digital twin.\n * @param options - The operation options\n * @returns The application/json digital twin and the http response.\n */\n public getDigitalTwin(\n digitalTwinId: string,\n options: OperationOptions = {}\n ): Promise<DigitalTwinsGetByIdResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-getDigitalTwin\", options);\n try {\n return this.client.digitalTwins.getById(digitalTwinId, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Create or update a digital twin\n *\n * @param digitalTwinId - The Id of the digital twin to create or update.\n * @param digitalTwinJson - The application/json digital twin to create.\n * @param options - Extended operation options including\n * ifNoneMatch: Only perform the operation if the entity does not already exist.\n * @returns The created application/json digital twin and the http response.\n */\n public upsertDigitalTwin(\n digitalTwinId: string,\n digitalTwinJson: string,\n options: DigitalTwinsAddOptionalParams = {}\n ): Promise<DigitalTwinsAddResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-upsertDigitalTwin\", options);\n try {\n const payload = JSON.parse(digitalTwinJson);\n return this.client.digitalTwins.add(digitalTwinId, payload, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Update a digital twin using a json patch.\n *\n * @param digitalTwinId - The Id of the digital twin.\n * @param jsonPatch - An update specification described by JSON Patch. Updates to property values\n * and $model elements may happen in the same request. Operations are limited to add, replace and\n * remove.\n * @param options - Extended operation options including\n * ifMatch: Only perform the operation if the entity's etag matches one of the etags provided or * is provided.\n * @returns The http response.\n */\n public updateDigitalTwin(\n digitalTwinId: string,\n // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types -- changing the type any would be a breaking change\n jsonPatch: any,\n options: DigitalTwinsUpdateOptionalParams = {}\n ): Promise<DigitalTwinsUpdateResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-updateDigitalTwin\", options);\n try {\n return this.client.digitalTwins.update(digitalTwinId, jsonPatch, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Delete a digital twin\n *\n * @param digitalTwinId - The Id of the digital twin to delete.\n * @param options - Extended operation options including\n * ifMatch: Only perform the operation if the entity's etag matches one of the etags provided or * is provided.\n * @returns The http response.\n */\n public deleteDigitalTwin(\n digitalTwinId: string,\n options: DigitalTwinsDeleteOptionalParams = {}\n ): Promise<RestResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-deleteDigitalTwin\", options);\n try {\n return this.client.digitalTwins.delete(digitalTwinId, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Get a component on a digital twin.\n *\n * @param digitalTwinId - The Id of the digital twin.\n * @param componentName - The component being retrieved.\n * @param options - The operation options\n * @returns Json string representation of the component corresponding to the provided componentName and the HTTP response.\n */\n public getComponent(\n digitalTwinId: string,\n componentName: string,\n options: OperationOptions = {}\n ): Promise<DigitalTwinsGetComponentResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-getComponent\", options);\n try {\n return this.client.digitalTwins.getComponent(digitalTwinId, componentName, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Update properties of a component on a digital twin using a JSON patch.\n *\n * @param digitalTwinId - The Id of the digital twin.\n * @param componentName - The component being updated.\n * @param jsonPatch - The application/json-patch+json operations to be performed on the specified digital twin's component.\n * @param enableUpdate - If true then update of an existing digital twin is enabled.\n * @param options - Extended operation options including\n * ifMatch: Only perform the operation if the entity's etag matches one of the etags provided or * is provided.\n * @returns The http response.\n */\n public updateComponent(\n digitalTwinId: string,\n componentName: string,\n jsonPatch: any[],\n options: DigitalTwinsUpdateComponentOptionalParams = {}\n ): Promise<DigitalTwinsUpdateComponentResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-updateComponent\", options);\n try {\n return this.client.digitalTwins.updateComponent(\n digitalTwinId,\n componentName,\n jsonPatch,\n updatedOptions\n );\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Get a relationship on a digital twin.\n *\n * @param digitalTwinId - The Id of the source digital twin.\n * @param relationshipId - The Id of the relationship to retrieve.\n * @param options - The operation options\n * @returns The pageable list of application/json relationships belonging to the specified digital twin and the http response.\n */\n public getRelationship(\n digitalTwinId: string,\n relationshipId: string,\n options: OperationOptions = {}\n ): Promise<DigitalTwinsGetRelationshipByIdResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-getRelationship\", options);\n try {\n return this.client.digitalTwins.getRelationshipById(\n digitalTwinId,\n relationshipId,\n updatedOptions\n );\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Create or update a relationship on a digital twin.\n *\n * @param digitalTwinId - The Id of the source digital twin.\n * @param relationshipId - The Id of the relationship to create.\n * @param relationship - The application/json relationship to be created.\n * @param options - Extended operation options including\n * ifNoneMatch: Only perform the operation if the entity does not already exist.\n */\n public upsertRelationship(\n digitalTwinId: string,\n relationshipId: string,\n // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types -- changing the type any would be a breaking change\n relationship: any,\n options: DigitalTwinsAddRelationshipOptionalParams = {}\n ): Promise<DigitalTwinsAddRelationshipResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-upsertRelationship\", options);\n try {\n return this.client.digitalTwins.addRelationship(\n digitalTwinId,\n relationshipId,\n relationship,\n updatedOptions\n );\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Updates the properties of a relationship on a digital twin using a JSON patch.\n *\n * @param digitalTwinId - The Id of the digital twin to delete.\n * @param relationshipId - The Id of the relationship to be updated.\n * @param jsonPatch - The application/json-patch+json operations to be performed on the specified digital twin's relationship.\n * @param options - Extended operation options\n * ifMatch: Only perform the operation if the entity's etag matches one of the etags provided or * is provided.\n */\n public updateRelationship(\n digitalTwinId: string,\n relationshipId: string,\n jsonPatch: any[],\n options: DigitalTwinsUpdateRelationshipOptionalParams = {}\n ): Promise<DigitalTwinsUpdateRelationshipResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-updateRelationship\", options);\n try {\n return this.client.digitalTwins.updateRelationship(\n digitalTwinId,\n relationshipId,\n jsonPatch,\n updatedOptions\n );\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Delete a relationship on a digital twin.\n *\n * @param digitalTwinId - The Id of the source digital twin.\n * @param relationshipId - The Id of the relationship to delete.\n * @param options - The operation options\n * ifMatch: Only perform the operation if the entity's etag matches one of the etags provided or * is\n * @returns The http response.\n */\n public deleteRelationship(\n digitalTwinId: string,\n relationshipId: string,\n options: DigitalTwinsDeleteRelationshipOptionalParams = {}\n ): Promise<RestResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-deleteRelationship\", options);\n try {\n return this.client.digitalTwins.deleteRelationship(\n digitalTwinId,\n relationshipId,\n updatedOptions\n );\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deals with the pagination of {@link listRelationships}.\n *\n * @param digitalTwinId - The Id of the digital twin.\n * @param options - Common options for the iterative endpoints.\n * @param continuationState - An object that indicates the position of the paginated request.\n *\n */\n private async *listRelationshipsPage(\n digitalTwinId: string,\n options: OperationOptions,\n continuationState: PageSettings\n ): AsyncIterableIterator<DigitalTwinsListRelationshipsResponse> {\n if (continuationState.continuationToken == null) {\n const optionsComplete: OperationOptions = {\n ...options,\n };\n const listRelationshipResponse = await this.client.digitalTwins.listRelationships(\n digitalTwinId,\n optionsComplete\n );\n continuationState.continuationToken = listRelationshipResponse.nextLink;\n yield listRelationshipResponse;\n }\n while (continuationState.continuationToken) {\n const listRelationshipResponse = await this.client.digitalTwins.listRelationshipsNext(\n \"\",\n continuationState.continuationToken,\n options\n );\n\n continuationState.continuationToken = listRelationshipResponse.nextLink;\n yield listRelationshipResponse;\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link listRelationships}.\n * @param options - Common options for the iterative endpoints.\n */\n private async *listRelationshipsAll(\n digitalTwinId: string,\n options: OperationOptions\n ): AsyncIterableIterator<any> {\n for await (const page of this.listRelationshipsPage(digitalTwinId, options, {})) {\n const value = page.value || [];\n for (const item of value) {\n yield item;\n }\n }\n }\n\n /**\n * Retrieve relationships for a digital twin.\n *\n * @param digitalTwinId - The Id of the digital twin.\n */\n public listRelationships(\n digitalTwinId: string,\n options: OperationOptions & PageSettings = {}\n ): PagedAsyncIterableIterator<any, DigitalTwinsListRelationshipsResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-listRelationships\", options);\n try {\n const iter = this.listRelationshipsAll(digitalTwinId, updatedOptions);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) =>\n this.listRelationshipsPage(digitalTwinId, updatedOptions, settings),\n };\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deals with the pagination of {@link listIncomingRelationships}.\n *\n * @param digitalTwinId - The Id of the digital twin.\n * @param options - Common options for the iterative endpoints.\n * @param continuationState - An object that indicates the position of the paginated request.\n *\n */\n private async *listIncomingRelationshipsPage(\n digitalTwinId: string,\n options: OperationOptions,\n continuationState: PageSettings\n ): AsyncIterableIterator<DigitalTwinsListIncomingRelationshipsResponse> {\n if (continuationState.continuationToken == null) {\n const optionsComplete: OperationOptions = {\n ...options,\n };\n const listIncomingRelationshipsResponse =\n await this.client.digitalTwins.listIncomingRelationships(digitalTwinId, optionsComplete);\n continuationState.continuationToken = listIncomingRelationshipsResponse.nextLink;\n yield listIncomingRelationshipsResponse;\n }\n while (continuationState.continuationToken) {\n const listIncomingRelationshipsResponse =\n await this.client.digitalTwins.listIncomingRelationshipsNext(\n \"\",\n continuationState.continuationToken,\n options\n );\n\n continuationState.continuationToken = listIncomingRelationshipsResponse.nextLink;\n yield listIncomingRelationshipsResponse;\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link listIncomingRelationships}.\n * @param digitalTwinId - The Id of the digital twin.\n * @param options - Common options for the iterative endpoints.\n */\n private async *listIncomingRelationshipsAll(\n digitalTwinId: string,\n options: OperationOptions\n ): AsyncIterableIterator<IncomingRelationship> {\n for await (const page of this.listIncomingRelationshipsPage(digitalTwinId, options, {})) {\n const value = page.value || [];\n yield* value;\n }\n }\n\n /**\n * Retrieve all incoming relationships for a digital twin.\n *\n * @param digitalTwinId - The Id of the digital twin.\n */\n public listIncomingRelationships(\n digitalTwinId: string,\n options: OperationOptions & PageSettings = {}\n ): PagedAsyncIterableIterator<\n IncomingRelationship,\n DigitalTwinsListIncomingRelationshipsResponse\n > {\n const { span, updatedOptions } = createSpan(\n \"DigitalTwinsClient-listIncomingRelationships\",\n options\n );\n try {\n const iter = this.listIncomingRelationshipsAll(digitalTwinId, updatedOptions);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) =>\n this.listIncomingRelationshipsPage(digitalTwinId, updatedOptions, settings),\n };\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Publish telemetry from a digital twin, which is then consumed by one or many destination endpoints (subscribers) defined under.\n *\n * @param digitalTwinId - The Id of the digital twin to delete.\n * @param payload - The application/json telemetry payload to be sent.\n * @param messageId - The message Id.\n * @param options - The operation options\n * @returns The http response.\n */\n public publishTelemetry(\n digitalTwinId: string,\n // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types -- changing the type any would be a breaking change\n payload: any,\n messageId: string,\n options: OperationOptions = {}\n ): Promise<RestResponse> {\n const digitalTwinsSendTelemetryOptionalParams: DigitalTwinsSendTelemetryOptionalParams =\n options;\n digitalTwinsSendTelemetryOptionalParams.telemetrySourceTime = new Date().toISOString();\n if (!messageId) {\n messageId = generateUuid();\n }\n const { span, updatedOptions } = createSpan(\n \"DigitalTwinsClient-publishTelemetry\",\n digitalTwinsSendTelemetryOptionalParams\n );\n try {\n return this.client.digitalTwins.sendTelemetry(\n digitalTwinId,\n messageId,\n payload,\n updatedOptions\n );\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Publish telemetry from a digital twin's component, which is then consumed by one or many destination endpoints (subscribers) defined under.\n *\n * @param digitalTwinId - The Id of the digital twin to delete.\n * @param componentName - The name of the DTDL component.\n * @param payload - The application/json telemetry payload to be sent.\n * @param messageId - The message Id.\n * @param options - The operation options\n * @returns The http response.\n */\n public publishComponentTelemetry(\n digitalTwinId: string,\n componentName: string,\n payload: string,\n messageId: string,\n options: OperationOptions = {}\n ): Promise<RestResponse> {\n const digitalTwinsSendComponentTelemetryOptionalParams: DigitalTwinsSendComponentTelemetryOptionalParams =\n options;\n digitalTwinsSendComponentTelemetryOptionalParams.telemetrySourceTime = new Date().toISOString();\n if (!messageId) {\n messageId = generateUuid();\n }\n const { span, updatedOptions } = createSpan(\n \"DigitalTwinsClient-publishComponentTelemetry\",\n digitalTwinsSendComponentTelemetryOptionalParams\n );\n try {\n return this.client.digitalTwins.sendComponentTelemetry(\n digitalTwinId,\n componentName,\n payload,\n messageId,\n updatedOptions\n );\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Get a model, including the model metadata and the model definition.\n *\n * @param modelId - The Id of the model.\n * @param options - Extended operation options including\n * includeModelDefinition: When true the model definition will be returned as part of the result. Default value: false.\n * @returns The application/json model and the http response.\n */\n public getModel(\n modelId: string,\n includeModelDefinition: boolean = false,\n options: OperationOptions = {}\n ): Promise<DigitalTwinModelsGetByIdResponse> {\n const digitalTwinModelsGetByIdOptionalParams: DigitalTwinModelsGetByIdOptionalParams = options;\n digitalTwinModelsGetByIdOptionalParams.includeModelDefinition = includeModelDefinition;\n const { span, updatedOptions } = createSpan(\n \"DigitalTwinsClient-getModel\",\n digitalTwinModelsGetByIdOptionalParams\n );\n try {\n return this.client.digitalTwinModels.getById(modelId, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deals with the pagination of {@link list}.\n *\n * @param options - Common options for the iterative endpoints.\n * @param continuationState - An object that indicates the position of the paginated request.\n *\n */\n private async *getModelsPage(\n options: DigitalTwinModelsListOptionalParams,\n continuationState: PageSettings\n ): AsyncIterableIterator<DigitalTwinModelsListResponse> {\n if (continuationState.continuationToken == null) {\n const optionsComplete: DigitalTwinModelsListOptionalParams = options;\n optionsComplete.maxItemsPerPage = continuationState.maxPageSize;\n\n const listResponse = await this.client.digitalTwinModels.list(optionsComplete);\n continuationState.continuationToken = listResponse.nextLink;\n yield listResponse;\n }\n while (continuationState.continuationToken) {\n const listResponse = await this.client.digitalTwinModels.listNext(\n continuationState.continuationToken,\n options\n );\n\n continuationState.continuationToken = listResponse.nextLink;\n yield listResponse;\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link list}.\n * @param options - Common options for the iterative endpoints.\n */\n private async *getModelsAll(\n options: DigitalTwinModelsListOptionalParams\n ): AsyncIterableIterator<DigitalTwinsModelData> {\n const f = {};\n\n for await (const page of this.getModelsPage(options, f)) {\n const value = page.value || [];\n for (const item of value) {\n yield item;\n }\n }\n }\n\n /**\n * Get the list of models\n *\n * @param dependeciesFor - The model Ids to have dependencies retrieved. If omitted, all models are retrieved.\n * @param includeModelDefinition - Whether to include the model definition in the result. If false, only the model metadata will be returned.\n * @param resultsPerPage - The maximum number of items to retrieve per request. The server may choose to return less than the requested max.\n * @returns A pageable set of application/json models and the http response.\n */\n public listModels(\n dependeciesFor?: string[],\n includeModelDefinition: boolean = false,\n resultsPerPage?: number,\n options: OperationOptions & PageSettings = {}\n ): PagedAsyncIterableIterator<DigitalTwinsModelData, DigitalTwinModelsListResponse> {\n let digitalTwinModelsListOptionalParams: DigitalTwinModelsListOptionalParams = options;\n digitalTwinModelsListOptionalParams = {\n maxItemsPerPage: resultsPerPage,\n dependenciesFor: dependeciesFor,\n includeModelDefinition: includeModelDefinition,\n };\n const { span, updatedOptions } = createSpan(\n \"DigitalTwinsClient-listModels\",\n digitalTwinModelsListOptionalParams\n );\n try {\n const iter = this.getModelsAll(updatedOptions);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) =>\n this.getModelsPage(digitalTwinModelsListOptionalParams, settings),\n };\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Create one or many\n *\n * @param models - The set of models to create. Each string corresponds to exactly one model.\n * @param options - The operation options\n * @returns The created application/json models and the http response.\n */\n public createModels(\n dtdlModels: any[],\n options: OperationOptions = {}\n ): Promise<DigitalTwinModelsAddResponse> {\n const digitalTwinModelsAddOptionalParams: DigitalTwinModelsAddOptionalParams = options;\n digitalTwinModelsAddOptionalParams.models = dtdlModels;\n const { span, updatedOptions } = createSpan(\n \"DigitalTwinsClient-createModels\",\n digitalTwinModelsAddOptionalParams\n );\n try {\n return this.client.digitalTwinModels.add(updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Decommission a model using a json patch.\n * When a model is decommissioned, new digital twins will no longer be able to be\n * defined by this model. However, existing digital twins may continue to use this model.\n * Once a model is decommissioned, it may not be recommissioned.\n *\n * @param modelId - The Id of the model to decommission.\n * property can be replaced.\n * @param options - The operation options\n * @returns The http response.\n *\n */\n public decommissionModel(modelId: string, options: OperationOptions = {}): Promise<RestResponse> {\n const jsonPatch = [{ op: \"replace\", path: \"/decommissioned\", value: true }];\n\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-decommissionModel\", options);\n try {\n return this.client.digitalTwinModels.update(modelId, jsonPatch, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * @deprecated Please use {@link DigitalTwinsClient.decommissionModel} instead.\n */\n public decomissionModel = this.decommissionModel;\n\n /**\n * Delete a model.\n *\n * @param modelId - The Id of the model to delete.\n * @param options - The operation options\n * @returns The http response.\n */\n public deleteModel(modelId: string, options: OperationOptions = {}): Promise<RestResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-deleteModel\", options);\n try {\n return this.client.digitalTwinModels.delete(modelId, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Get an event route.\n *\n * @param modelId - The Id of the event route.\n * @param options - The operation options\n * @returns The application/json event route and the http response.\n */\n public getEventRoute(\n eventRouteId: string,\n options: OperationOptions = {}\n ): Promise<EventRoutesGetByIdResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-getEventRoute\", options);\n try {\n return this.client.eventRoutes.getById(eventRouteId, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deals with the pagination of {@link list}.\n *\n * @param options - Common options for the iterative endpoints.\n * @param continuationState - An object that indicates the position of the paginated request.\n *\n */\n private async *getEventRoutesPage(\n options: EventRoutesListOptionalParams,\n continuationState: PageSettings\n ): AsyncIterableIterator<EventRoutesListNextResponse> {\n if (continuationState.continuationToken == null) {\n const optionsComplete: EventRoutesListOptionalParams = options;\n optionsComplete.maxItemsPerPage = continuationState.maxPageSize;\n\n const listResponse = await this.client.eventRoutes.list(optionsComplete);\n continuationState.continuationToken = listResponse.nextLink;\n yield listResponse;\n }\n while (continuationState.continuationToken) {\n const listResponse = await this.client.eventRoutes.listNext(\n continuationState.continuationToken,\n options\n );\n\n continuationState.continuationToken = listResponse.nextLink;\n yield listResponse;\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link list}.\n * @param options - Common options for the iterative endpoints.\n */\n private async *getEventRoutesAll(\n options: EventRoutesListOptionalParams\n ): AsyncIterableIterator<EventRoute> {\n const f = {};\n for await (const page of this.getEventRoutesPage(options, f)) {\n const value = page.value || [];\n for (const item of value) {\n yield item;\n }\n }\n }\n\n /**\n * List the event routes in a digital twins instance.\n *\n * @param resultsPerPage - The maximum number of items to retrieve per request. The server may choose to return less than\n * the requested max.\n * @returns The application/json event route and the http response.\n */\n public listEventRoutes(\n resultsPerPage?: number,\n options: OperationOptions & PageSettings = {}\n ): PagedAsyncIterableIterator<EventRoute, EventRoutesListNextResponse> {\n let eventRoutesListOptionalParams: EventRoutesListOptionalParams = options;\n eventRoutesListOptionalParams = {\n maxItemsPerPage: resultsPerPage,\n };\n\n const { span, updatedOptions } = createSpan(\n \"DigitalTwinsClient-listEventRoutes\",\n eventRoutesListOptionalParams\n );\n try {\n const iter = this.getEventRoutesAll(updatedOptions);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) =>\n this.getEventRoutesPage(eventRoutesListOptionalParams, settings),\n };\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Create or update an event route.\n *\n * @param eventRouteId - The Id of the event route to create or update.\n * @param endpointId - The id of the endpoint this event route is bound to.\n * @param filter - An expression which describes the events which are routed to the endpoint.\n * @param options - The operation options\n * @returns The http response.\n */\n public upsertEventRoute(\n eventRouteId: string,\n endpointId: string,\n filter: string,\n options: OperationOptions = {}\n ): Promise<RestResponse> {\n const eventRoutesAddOptionalParams: EventRoutesAddOptionalParams = options;\n const eventRoute: EventRoute = {\n endpointName: endpointId,\n filter: filter,\n };\n eventRoutesAddOptionalParams.eventRoute = eventRoute;\n const { span, updatedOptions } = createSpan(\n \"DigitalTwinsClient-upsertEventRoute\",\n eventRoutesAddOptionalParams\n );\n try {\n return this.client.eventRoutes.add(eventRouteId, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Delete an event route.\n *\n * @param eventRouteId - The Id of the eventRoute to delete.\n * @param options - The operation options\n * @returns The http response.\n */\n public deleteEventRoute(\n eventRouteId: string,\n options: OperationOptions = {}\n ): Promise<RestResponse> {\n const { span, updatedOptions } = createSpan(\"DigitalTwinsClient-deleteEventRoute\", options);\n try {\n return this.client.eventRoutes.delete(eventRouteId, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deals with the pagination of {@link query}.\n *\n * @param query - The query string, in SQL-like syntax.\n * @param options - Common options for the iterative endpoints.\n * @param continuationState - An object that indicates the position of the paginated request.\n *\n */\n private async *queryTwinsPage(\n query: string,\n options: QueryQueryTwinsOptionalParams,\n continuationState: PageSettings\n ): AsyncIterableIterator<QueryQueryTwinsResponse> {\n if (continuationState.continuationToken == null) {\n const querySpecification: QuerySpecification = {\n query: query,\n continuationToken: continuationState.continuationToken,\n };\n const queryResult = await this.client.query.queryTwins(querySpecification, options);\n continuationState.continuationToken = queryResult.continuationToken;\n yield queryResult;\n }\n while (continuationState.continuationToken) {\n const querySpecification: QuerySpecification = {\n query: query,\n continuationToken: continuationState.continuationToken,\n };\n const queryResult = await this.client.query.queryTwins(querySpecification, options);\n\n continuationState.continuationToken = queryResult.continuationToken;\n yield queryResult;\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link query}.\n * @param query - The query string, in SQL-like syntax.\n * @param options - Common options for the iterative endpoints.\n */\n private async *queryTwinsAll(\n query: string,\n options: QueryQueryTwinsOptionalParams\n ): AsyncIterableIterator<any> {\n const f = {};\n\n for await (const page of this.queryTwinsPage(query, options, f)) {\n if (page.value) {\n for (const item of page.value) {\n yield item;\n }\n }\n }\n }\n\n /**\n * Query for digital twins.\n *\n * @param query - The query string, in SQL-like syntax.\n * @param resultsPerPage - The maximum number of items to retrieve per request. The server may choose to return less than the requested max.\n * @returns The pageable list of query results.\n */\n public queryTwins(\n query: string,\n resultsPerPage?: number,\n options: OperationOptions & PageSettings = {}\n ): PagedAsyncIterableIterator<any, QueryQueryTwinsResponse> {\n let queryQueryTwinsOptionalParams: QueryQueryTwinsOptionalParams = options;\n queryQueryTwinsOptionalParams = {\n maxItemsPerPage: resultsPerPage,\n };\n\n const { span, updatedOptions } = createSpan(\n \"DigitalTwinsClient-queryTwins\",\n queryQueryTwinsOptionalParams\n );\n try {\n const iter = this.queryTwinsAll(query, updatedOptions);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) =>\n this.queryTwinsPage(query, queryQueryTwinsOptionalParams, settings),\n };\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,kBAAkB,EAA6B,MAAM,sBAAsB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nexport { DigitalTwinsClient, DigitalTwinsClientOptions } from \"./digitalTwinsClient\";\n\nexport {\n DigitalTwinsAddOptionalParams,\n DigitalTwinsAddHeaders,\n DigitalTwinsAddResponse,\n DigitalTwinsGetByIdResponse,\n DigitalTwinsUpdateOptionalParams,\n DigitalTwinsUpdateHeaders,\n DigitalTwinsDeleteOptionalParams,\n DigitalTwinsGetByIdHeaders,\n DigitalTwinsAddRelationshipOptionalParams,\n DigitalTwinsAddRelationshipHeaders,\n DigitalTwinsAddRelationshipResponse,\n DigitalTwinsUpdateRelationshipOptionalParams,\n DigitalTwinsUpdateRelationshipResponse,\n DigitalTwinsUpdateRelationshipHeaders,\n DigitalTwinsDeleteRelationshipOptionalParams,\n DigitalTwinsListRelationshipsResponse,\n RelationshipCollection,\n DigitalTwinsListIncomingRelationshipsResponse,\n IncomingRelationship,\n IncomingRelationshipCollection,\n DigitalTwinsGetRelationshipByIdHeaders,\n DigitalTwinsGetRelationshipByIdResponse,\n DigitalTwinsUpdateComponentOptionalParams,\n DigitalTwinsUpdateComponentHeaders,\n DigitalTwinsGetComponentHeaders,\n DigitalTwinsUpdateComponentResponse,\n DigitalTwinsGetComponentResponse,\n DigitalTwinModelsGetByIdResponse,\n DigitalTwinModelsListResponse,\n DigitalTwinModelsAddResponse,\n DigitalTwinsUpdateResponse,\n EventRoute,\n EventRouteCollection,\n EventRoutesGetByIdResponse,\n EventRoutesListNextResponse,\n DigitalTwinsModelData,\n QueryQueryTwinsHeaders,\n QueryQueryTwinsResponse,\n QueryResult,\n QuerySpecification,\n PagedDigitalTwinsModelDataCollection\n} from \"./generated/models\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,kBAAkB,EAA6B,MAAM,sBAAsB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nexport { DigitalTwinsClient, DigitalTwinsClientOptions } from \"./digitalTwinsClient\";\n\nexport {\n DigitalTwinsAddOptionalParams,\n DigitalTwinsAddHeaders,\n DigitalTwinsAddResponse,\n DigitalTwinsGetByIdResponse,\n DigitalTwinsUpdateOptionalParams,\n DigitalTwinsUpdateHeaders,\n DigitalTwinsDeleteOptionalParams,\n DigitalTwinsGetByIdHeaders,\n DigitalTwinsAddRelationshipOptionalParams,\n DigitalTwinsAddRelationshipHeaders,\n DigitalTwinsAddRelationshipResponse,\n DigitalTwinsUpdateRelationshipOptionalParams,\n DigitalTwinsUpdateRelationshipResponse,\n DigitalTwinsUpdateRelationshipHeaders,\n DigitalTwinsDeleteRelationshipOptionalParams,\n DigitalTwinsListRelationshipsResponse,\n RelationshipCollection,\n DigitalTwinsListIncomingRelationshipsResponse,\n IncomingRelationship,\n IncomingRelationshipCollection,\n DigitalTwinsGetRelationshipByIdHeaders,\n DigitalTwinsGetRelationshipByIdResponse,\n DigitalTwinsUpdateComponentOptionalParams,\n DigitalTwinsUpdateComponentHeaders,\n DigitalTwinsGetComponentHeaders,\n DigitalTwinsUpdateComponentResponse,\n DigitalTwinsGetComponentResponse,\n DigitalTwinModelsGetByIdResponse,\n DigitalTwinModelsListResponse,\n DigitalTwinModelsAddResponse,\n DigitalTwinsUpdateResponse,\n EventRoute,\n EventRouteCollection,\n EventRoutesGetByIdResponse,\n EventRoutesListNextResponse,\n DigitalTwinsModelData,\n QueryQueryTwinsHeaders,\n QueryQueryTwinsResponse,\n QueryResult,\n QuerySpecification,\n PagedDigitalTwinsModelDataCollection,\n} from \"./generated/models\";\n"]}
@@ -7,6 +7,6 @@ import { createSpanFunction } from "@azure/core-tracing";
7
7
  */
8
8
  export const createSpan = createSpanFunction({
9
9
  packagePrefix: "DigitalTwinsClient",
10
- namespace: "Microsoft.DigitalTwins"
10
+ namespace: "Microsoft.DigitalTwins",
11
11
  });
12
12
  //# sourceMappingURL=tracing.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tracing.js","sourceRoot":"","sources":["../../src/tracing.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,kBAAkB,CAAC;IAC3C,aAAa,EAAE,oBAAoB;IACnC,SAAS,EAAE,wBAAwB;CACpC,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { createSpanFunction } from \"@azure/core-tracing\";\n\n/**\n * Creates a span using the global tracer.\n * @internal\n */\nexport const createSpan = createSpanFunction({\n packagePrefix: \"DigitalTwinsClient\",\n namespace: \"Microsoft.DigitalTwins\"\n});\n"]}
1
+ {"version":3,"file":"tracing.js","sourceRoot":"","sources":["../../src/tracing.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,kBAAkB,CAAC;IAC3C,aAAa,EAAE,oBAAoB;IACnC,SAAS,EAAE,wBAAwB;CACpC,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { createSpanFunction } from \"@azure/core-tracing\";\n\n/**\n * Creates a span using the global tracer.\n * @internal\n */\nexport const createSpan = createSpanFunction({\n packagePrefix: \"DigitalTwinsClient\",\n namespace: \"Microsoft.DigitalTwins\",\n});\n"]}