@microsoft/kiota-http-fetchlibrary
Advanced tools
Comparing version
# Changelog | ||
## [1.0.0-preview.88](https://github.com/microsoft/kiota-typescript/compare/@microsoft/kiota-http-fetchlibrary@1.0.0-preview.87...@microsoft/kiota-http-fetchlibrary@1.0.0-preview.88) (2025-03-19) | ||
### Bug Fixes | ||
* error Operation attempted on ended Span ([fc930f6](https://github.com/microsoft/kiota-typescript/commit/fc930f6f85359e313a325d8328cf419deb0d9dd8)) | ||
### Dependencies | ||
* The following workspace dependencies were updated | ||
* dependencies | ||
* @microsoft/kiota-abstractions bumped from ^1.0.0-preview.87 to ^1.0.0-preview.88 | ||
## [1.0.0-preview.87](https://github.com/microsoft/kiota-typescript/compare/@microsoft/kiota-http-fetchlibrary@1.0.0-preview.86...@microsoft/kiota-http-fetchlibrary@1.0.0-preview.87) (2025-03-17) | ||
@@ -4,0 +18,0 @@ |
@@ -54,63 +54,58 @@ /** | ||
return this.startTracingSpan(requestInfo, "sendCollectionOfPrimitive", async (span) => { | ||
try { | ||
const response = await this.getHttpResponseMessage(requestInfo, span); | ||
const responseHandler = this.getResponseHandler(requestInfo); | ||
if (responseHandler) { | ||
span.addEvent(FetchRequestAdapter.eventResponseHandlerInvokedKey); | ||
return await responseHandler.handleResponse(response, errorMappings); | ||
} | ||
else { | ||
try { | ||
await this.throwIfFailedResponse(response, errorMappings, span); | ||
if (this.shouldReturnUndefined(response)) | ||
return undefined; | ||
switch (responseType) { | ||
case "string": | ||
case "number": | ||
case "boolean": | ||
case "Date": | ||
// eslint-disable-next-line no-case-declarations | ||
const rootNode = await this.getRootParseNode(response); | ||
return trace.getTracer(this.observabilityOptions.getTracerInstrumentationName()).startActiveSpan(`getCollectionOf${responseType}Value`, (deserializeSpan) => { | ||
try { | ||
span.setAttribute(FetchRequestAdapter.responseTypeAttributeKey, responseType); | ||
if (responseType === "string") { | ||
return rootNode.getCollectionOfPrimitiveValues(); | ||
} | ||
else if (responseType === "number") { | ||
return rootNode.getCollectionOfPrimitiveValues(); | ||
} | ||
else if (responseType === "boolean") { | ||
return rootNode.getCollectionOfPrimitiveValues(); | ||
} | ||
else if (responseType === "Date") { | ||
return rootNode.getCollectionOfPrimitiveValues(); | ||
} | ||
else if (responseType === "Duration") { | ||
return rootNode.getCollectionOfPrimitiveValues(); | ||
} | ||
else if (responseType === "DateOnly") { | ||
return rootNode.getCollectionOfPrimitiveValues(); | ||
} | ||
else if (responseType === "TimeOnly") { | ||
return rootNode.getCollectionOfPrimitiveValues(); | ||
} | ||
else { | ||
throw new Error("unexpected type to deserialize"); | ||
} | ||
const response = await this.getHttpResponseMessage(requestInfo, span); | ||
const responseHandler = this.getResponseHandler(requestInfo); | ||
if (responseHandler) { | ||
span.addEvent(FetchRequestAdapter.eventResponseHandlerInvokedKey); | ||
return await responseHandler.handleResponse(response, errorMappings); | ||
} | ||
else { | ||
try { | ||
await this.throwIfFailedResponse(response, errorMappings, span); | ||
if (this.shouldReturnUndefined(response)) | ||
return undefined; | ||
switch (responseType) { | ||
case "string": | ||
case "number": | ||
case "boolean": | ||
case "Date": | ||
// eslint-disable-next-line no-case-declarations | ||
const rootNode = await this.getRootParseNode(response); | ||
return trace.getTracer(this.observabilityOptions.getTracerInstrumentationName()).startActiveSpan(`getCollectionOf${responseType}Value`, (deserializeSpan) => { | ||
try { | ||
span.setAttribute(FetchRequestAdapter.responseTypeAttributeKey, responseType); | ||
if (responseType === "string") { | ||
return rootNode.getCollectionOfPrimitiveValues(); | ||
} | ||
finally { | ||
deserializeSpan.end(); | ||
else if (responseType === "number") { | ||
return rootNode.getCollectionOfPrimitiveValues(); | ||
} | ||
}); | ||
} | ||
else if (responseType === "boolean") { | ||
return rootNode.getCollectionOfPrimitiveValues(); | ||
} | ||
else if (responseType === "Date") { | ||
return rootNode.getCollectionOfPrimitiveValues(); | ||
} | ||
else if (responseType === "Duration") { | ||
return rootNode.getCollectionOfPrimitiveValues(); | ||
} | ||
else if (responseType === "DateOnly") { | ||
return rootNode.getCollectionOfPrimitiveValues(); | ||
} | ||
else if (responseType === "TimeOnly") { | ||
return rootNode.getCollectionOfPrimitiveValues(); | ||
} | ||
else { | ||
throw new Error("unexpected type to deserialize"); | ||
} | ||
} | ||
finally { | ||
deserializeSpan.end(); | ||
} | ||
}); | ||
} | ||
finally { | ||
await this.purgeResponseBody(response); | ||
} | ||
} | ||
finally { | ||
await this.purgeResponseBody(response); | ||
} | ||
} | ||
finally { | ||
span.end(); | ||
} | ||
}); | ||
@@ -123,34 +118,29 @@ }; | ||
return this.startTracingSpan(requestInfo, "sendCollection", async (span) => { | ||
try { | ||
const response = await this.getHttpResponseMessage(requestInfo, span); | ||
const responseHandler = this.getResponseHandler(requestInfo); | ||
if (responseHandler) { | ||
span.addEvent(FetchRequestAdapter.eventResponseHandlerInvokedKey); | ||
return await responseHandler.handleResponse(response, errorMappings); | ||
const response = await this.getHttpResponseMessage(requestInfo, span); | ||
const responseHandler = this.getResponseHandler(requestInfo); | ||
if (responseHandler) { | ||
span.addEvent(FetchRequestAdapter.eventResponseHandlerInvokedKey); | ||
return await responseHandler.handleResponse(response, errorMappings); | ||
} | ||
else { | ||
try { | ||
await this.throwIfFailedResponse(response, errorMappings, span); | ||
if (this.shouldReturnUndefined(response)) | ||
return undefined; | ||
const rootNode = await this.getRootParseNode(response); | ||
return trace.getTracer(this.observabilityOptions.getTracerInstrumentationName()).startActiveSpan("getCollectionOfObjectValues", (deserializeSpan) => { | ||
try { | ||
const result = rootNode.getCollectionOfObjectValues(deserialization); | ||
span.setAttribute(FetchRequestAdapter.responseTypeAttributeKey, "object[]"); | ||
return result; | ||
} | ||
finally { | ||
deserializeSpan.end(); | ||
} | ||
}); | ||
} | ||
else { | ||
try { | ||
await this.throwIfFailedResponse(response, errorMappings, span); | ||
if (this.shouldReturnUndefined(response)) | ||
return undefined; | ||
const rootNode = await this.getRootParseNode(response); | ||
return trace.getTracer(this.observabilityOptions.getTracerInstrumentationName()).startActiveSpan("getCollectionOfObjectValues", (deserializeSpan) => { | ||
try { | ||
const result = rootNode.getCollectionOfObjectValues(deserialization); | ||
span.setAttribute(FetchRequestAdapter.responseTypeAttributeKey, "object[]"); | ||
return result; | ||
} | ||
finally { | ||
deserializeSpan.end(); | ||
} | ||
}); | ||
} | ||
finally { | ||
await this.purgeResponseBody(response); | ||
} | ||
finally { | ||
await this.purgeResponseBody(response); | ||
} | ||
} | ||
finally { | ||
span.end(); | ||
} | ||
}); | ||
@@ -177,34 +167,29 @@ }; | ||
return this.startTracingSpan(requestInfo, "send", async (span) => { | ||
try { | ||
const response = await this.getHttpResponseMessage(requestInfo, span); | ||
const responseHandler = this.getResponseHandler(requestInfo); | ||
if (responseHandler) { | ||
span.addEvent(FetchRequestAdapter.eventResponseHandlerInvokedKey); | ||
return await responseHandler.handleResponse(response, errorMappings); | ||
const response = await this.getHttpResponseMessage(requestInfo, span); | ||
const responseHandler = this.getResponseHandler(requestInfo); | ||
if (responseHandler) { | ||
span.addEvent(FetchRequestAdapter.eventResponseHandlerInvokedKey); | ||
return await responseHandler.handleResponse(response, errorMappings); | ||
} | ||
else { | ||
try { | ||
await this.throwIfFailedResponse(response, errorMappings, span); | ||
if (this.shouldReturnUndefined(response)) | ||
return undefined; | ||
const rootNode = await this.getRootParseNode(response); | ||
return trace.getTracer(this.observabilityOptions.getTracerInstrumentationName()).startActiveSpan("getObjectValue", (deserializeSpan) => { | ||
try { | ||
span.setAttribute(FetchRequestAdapter.responseTypeAttributeKey, "object"); | ||
const result = rootNode.getObjectValue(deserializer); | ||
return result; | ||
} | ||
finally { | ||
deserializeSpan.end(); | ||
} | ||
}); | ||
} | ||
else { | ||
try { | ||
await this.throwIfFailedResponse(response, errorMappings, span); | ||
if (this.shouldReturnUndefined(response)) | ||
return undefined; | ||
const rootNode = await this.getRootParseNode(response); | ||
return trace.getTracer(this.observabilityOptions.getTracerInstrumentationName()).startActiveSpan("getObjectValue", (deserializeSpan) => { | ||
try { | ||
span.setAttribute(FetchRequestAdapter.responseTypeAttributeKey, "object"); | ||
const result = rootNode.getObjectValue(deserializer); | ||
return result; | ||
} | ||
finally { | ||
deserializeSpan.end(); | ||
} | ||
}); | ||
} | ||
finally { | ||
await this.purgeResponseBody(response); | ||
} | ||
finally { | ||
await this.purgeResponseBody(response); | ||
} | ||
} | ||
finally { | ||
span.end(); | ||
} | ||
}); | ||
@@ -217,68 +202,63 @@ }; | ||
return this.startTracingSpan(requestInfo, "sendPrimitive", async (span) => { | ||
try { | ||
const response = await this.getHttpResponseMessage(requestInfo, span); | ||
const responseHandler = this.getResponseHandler(requestInfo); | ||
if (responseHandler) { | ||
span.addEvent(FetchRequestAdapter.eventResponseHandlerInvokedKey); | ||
return await responseHandler.handleResponse(response, errorMappings); | ||
} | ||
else { | ||
try { | ||
await this.throwIfFailedResponse(response, errorMappings, span); | ||
if (this.shouldReturnUndefined(response)) | ||
return undefined; | ||
switch (responseType) { | ||
case "ArrayBuffer": | ||
if (!response.body) { | ||
return undefined; | ||
} | ||
return (await response.arrayBuffer()); | ||
case "string": | ||
case "number": | ||
case "boolean": | ||
case "Date": | ||
// eslint-disable-next-line no-case-declarations | ||
const rootNode = await this.getRootParseNode(response); | ||
span.setAttribute(FetchRequestAdapter.responseTypeAttributeKey, responseType); | ||
return trace.getTracer(this.observabilityOptions.getTracerInstrumentationName()).startActiveSpan(`get${responseType}Value`, (deserializeSpan) => { | ||
try { | ||
if (responseType === "string") { | ||
return rootNode.getStringValue(); | ||
} | ||
else if (responseType === "number") { | ||
return rootNode.getNumberValue(); | ||
} | ||
else if (responseType === "boolean") { | ||
return rootNode.getBooleanValue(); | ||
} | ||
else if (responseType === "Date") { | ||
return rootNode.getDateValue(); | ||
} | ||
else if (responseType === "Duration") { | ||
return rootNode.getDurationValue(); | ||
} | ||
else if (responseType === "DateOnly") { | ||
return rootNode.getDateOnlyValue(); | ||
} | ||
else if (responseType === "TimeOnly") { | ||
return rootNode.getTimeOnlyValue(); | ||
} | ||
else { | ||
throw new Error("unexpected type to deserialize"); | ||
} | ||
const response = await this.getHttpResponseMessage(requestInfo, span); | ||
const responseHandler = this.getResponseHandler(requestInfo); | ||
if (responseHandler) { | ||
span.addEvent(FetchRequestAdapter.eventResponseHandlerInvokedKey); | ||
return await responseHandler.handleResponse(response, errorMappings); | ||
} | ||
else { | ||
try { | ||
await this.throwIfFailedResponse(response, errorMappings, span); | ||
if (this.shouldReturnUndefined(response)) | ||
return undefined; | ||
switch (responseType) { | ||
case "ArrayBuffer": | ||
if (!response.body) { | ||
return undefined; | ||
} | ||
return (await response.arrayBuffer()); | ||
case "string": | ||
case "number": | ||
case "boolean": | ||
case "Date": | ||
// eslint-disable-next-line no-case-declarations | ||
const rootNode = await this.getRootParseNode(response); | ||
span.setAttribute(FetchRequestAdapter.responseTypeAttributeKey, responseType); | ||
return trace.getTracer(this.observabilityOptions.getTracerInstrumentationName()).startActiveSpan(`get${responseType}Value`, (deserializeSpan) => { | ||
try { | ||
if (responseType === "string") { | ||
return rootNode.getStringValue(); | ||
} | ||
finally { | ||
deserializeSpan.end(); | ||
else if (responseType === "number") { | ||
return rootNode.getNumberValue(); | ||
} | ||
}); | ||
} | ||
else if (responseType === "boolean") { | ||
return rootNode.getBooleanValue(); | ||
} | ||
else if (responseType === "Date") { | ||
return rootNode.getDateValue(); | ||
} | ||
else if (responseType === "Duration") { | ||
return rootNode.getDurationValue(); | ||
} | ||
else if (responseType === "DateOnly") { | ||
return rootNode.getDateOnlyValue(); | ||
} | ||
else if (responseType === "TimeOnly") { | ||
return rootNode.getTimeOnlyValue(); | ||
} | ||
else { | ||
throw new Error("unexpected type to deserialize"); | ||
} | ||
} | ||
finally { | ||
deserializeSpan.end(); | ||
} | ||
}); | ||
} | ||
finally { | ||
await this.purgeResponseBody(response); | ||
} | ||
} | ||
finally { | ||
await this.purgeResponseBody(response); | ||
} | ||
} | ||
finally { | ||
span.end(); | ||
} | ||
}); | ||
@@ -291,18 +271,13 @@ }; | ||
return this.startTracingSpan(requestInfo, "sendNoResponseContent", async (span) => { | ||
const response = await this.getHttpResponseMessage(requestInfo, span); | ||
const responseHandler = this.getResponseHandler(requestInfo); | ||
if (responseHandler) { | ||
span.addEvent(FetchRequestAdapter.eventResponseHandlerInvokedKey); | ||
return await responseHandler.handleResponse(response, errorMappings); | ||
} | ||
try { | ||
const response = await this.getHttpResponseMessage(requestInfo, span); | ||
const responseHandler = this.getResponseHandler(requestInfo); | ||
if (responseHandler) { | ||
span.addEvent(FetchRequestAdapter.eventResponseHandlerInvokedKey); | ||
return await responseHandler.handleResponse(response, errorMappings); | ||
} | ||
try { | ||
await this.throwIfFailedResponse(response, errorMappings, span); | ||
} | ||
finally { | ||
await this.purgeResponseBody(response); | ||
} | ||
await this.throwIfFailedResponse(response, errorMappings, span); | ||
} | ||
finally { | ||
span.end(); | ||
await this.purgeResponseBody(response); | ||
} | ||
@@ -316,34 +291,29 @@ }); | ||
return this.startTracingSpan(requestInfo, "sendEnum", async (span) => { | ||
try { | ||
const response = await this.getHttpResponseMessage(requestInfo, span); | ||
const responseHandler = this.getResponseHandler(requestInfo); | ||
if (responseHandler) { | ||
span.addEvent(FetchRequestAdapter.eventResponseHandlerInvokedKey); | ||
return await responseHandler.handleResponse(response, errorMappings); | ||
const response = await this.getHttpResponseMessage(requestInfo, span); | ||
const responseHandler = this.getResponseHandler(requestInfo); | ||
if (responseHandler) { | ||
span.addEvent(FetchRequestAdapter.eventResponseHandlerInvokedKey); | ||
return await responseHandler.handleResponse(response, errorMappings); | ||
} | ||
else { | ||
try { | ||
await this.throwIfFailedResponse(response, errorMappings, span); | ||
if (this.shouldReturnUndefined(response)) | ||
return undefined; | ||
const rootNode = await this.getRootParseNode(response); | ||
return trace.getTracer(this.observabilityOptions.getTracerInstrumentationName()).startActiveSpan("getEnumValue", (deserializeSpan) => { | ||
try { | ||
span.setAttribute(FetchRequestAdapter.responseTypeAttributeKey, "enum"); | ||
const result = rootNode.getEnumValue(enumObject); | ||
return result; | ||
} | ||
finally { | ||
deserializeSpan.end(); | ||
} | ||
}); | ||
} | ||
else { | ||
try { | ||
await this.throwIfFailedResponse(response, errorMappings, span); | ||
if (this.shouldReturnUndefined(response)) | ||
return undefined; | ||
const rootNode = await this.getRootParseNode(response); | ||
return trace.getTracer(this.observabilityOptions.getTracerInstrumentationName()).startActiveSpan("getEnumValue", (deserializeSpan) => { | ||
try { | ||
span.setAttribute(FetchRequestAdapter.responseTypeAttributeKey, "enum"); | ||
const result = rootNode.getEnumValue(enumObject); | ||
return result; | ||
} | ||
finally { | ||
deserializeSpan.end(); | ||
} | ||
}); | ||
} | ||
finally { | ||
await this.purgeResponseBody(response); | ||
} | ||
finally { | ||
await this.purgeResponseBody(response); | ||
} | ||
} | ||
finally { | ||
span.end(); | ||
} | ||
}); | ||
@@ -356,34 +326,29 @@ }; | ||
return this.startTracingSpan(requestInfo, "sendCollectionOfEnum", async (span) => { | ||
try { | ||
const response = await this.getHttpResponseMessage(requestInfo, span); | ||
const responseHandler = this.getResponseHandler(requestInfo); | ||
if (responseHandler) { | ||
span.addEvent(FetchRequestAdapter.eventResponseHandlerInvokedKey); | ||
return await responseHandler.handleResponse(response, errorMappings); | ||
const response = await this.getHttpResponseMessage(requestInfo, span); | ||
const responseHandler = this.getResponseHandler(requestInfo); | ||
if (responseHandler) { | ||
span.addEvent(FetchRequestAdapter.eventResponseHandlerInvokedKey); | ||
return await responseHandler.handleResponse(response, errorMappings); | ||
} | ||
else { | ||
try { | ||
await this.throwIfFailedResponse(response, errorMappings, span); | ||
if (this.shouldReturnUndefined(response)) | ||
return undefined; | ||
const rootNode = await this.getRootParseNode(response); | ||
return trace.getTracer(this.observabilityOptions.getTracerInstrumentationName()).startActiveSpan("getCollectionOfEnumValues", (deserializeSpan) => { | ||
try { | ||
const result = rootNode.getCollectionOfEnumValues(enumObject); | ||
span.setAttribute(FetchRequestAdapter.responseTypeAttributeKey, "enum[]"); | ||
return result; | ||
} | ||
finally { | ||
deserializeSpan.end(); | ||
} | ||
}); | ||
} | ||
else { | ||
try { | ||
await this.throwIfFailedResponse(response, errorMappings, span); | ||
if (this.shouldReturnUndefined(response)) | ||
return undefined; | ||
const rootNode = await this.getRootParseNode(response); | ||
return trace.getTracer(this.observabilityOptions.getTracerInstrumentationName()).startActiveSpan("getCollectionOfEnumValues", (deserializeSpan) => { | ||
try { | ||
const result = rootNode.getCollectionOfEnumValues(enumObject); | ||
span.setAttribute(FetchRequestAdapter.responseTypeAttributeKey, "enum[]"); | ||
return result; | ||
} | ||
finally { | ||
deserializeSpan.end(); | ||
} | ||
}); | ||
} | ||
finally { | ||
await this.purgeResponseBody(response); | ||
} | ||
finally { | ||
await this.purgeResponseBody(response); | ||
} | ||
} | ||
finally { | ||
span.end(); | ||
} | ||
}); | ||
@@ -390,0 +355,0 @@ }; |
{ | ||
"name": "@microsoft/kiota-http-fetchlibrary", | ||
"version": "1.0.0-preview.87", | ||
"version": "1.0.0-preview.88", | ||
"description": "Kiota request adapter implementation with fetch", | ||
@@ -37,3 +37,3 @@ "keywords": [ | ||
"dependencies": { | ||
"@microsoft/kiota-abstractions": "^1.0.0-preview.87", | ||
"@microsoft/kiota-abstractions": "^1.0.0-preview.88", | ||
"@opentelemetry/api": "^1.7.0", | ||
@@ -48,3 +48,3 @@ "tslib": "^2.6.2" | ||
], | ||
"gitHead": "d452b9a092d4111d52a8ddffdacc7841e4043309" | ||
"gitHead": "310a071ba487e1a6abfb5a6e8f2bd3555ce82b51" | ||
} |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
362659
-0.49%3979
-0.87%